Lead iOS Developer
Developing an iOS app to help manage and enhance professional relationships of sales representatives. Originally tied to our own custom backend system, after the acquisition by Salesforce, we also directly integrate with Salesforce objects. Our product is a productivity tool for both iPhone and iPad featuring email, calendar, files and tasks. We surface details about Salesforce records directly on your email and calendar events, allowing you to easily see the state of deals in line.
- Office 365 API Integration Implemented several iterations of Microsoft Office 365’s API inout our email and calendar. This work included both work on our core data models as well as front end rendering, matching specifications from our design team.
- Salesforce Object Creation I built out options for parsing page layouts, displaying required fields and all fields, respecting default values and building out visual elements for each of the form field object types.
- App Reskinning Redesigned the visual aspects of the product to match new brand identity. I worked with design to facilitate the changes and them implemented the skinning and code changes on the client side.
- Re-archeticting our Login Flow We interface with several different CRM options (both SalesforceIQ an Salesforce), and the login flow was unnecessarily complex. Using storyboard references we were able to separate out the code to make it more manageable. In addition to the login flow, we built an entire section of our code base to mitigate a large influx of new users by placing them on a waitlist. I was the lead iOS engineer on the project, communicating with the backend team to facilitate API development as well as implementing the iOS client code.
- Culture Club Representative In addition to the technological contributions, I was also an active member of the culture club. This group worked together to plan team events for the entire office up to 200 people per event. Responsibilities included ideation of potential events, booking with venues, space decoration, creation of RSVP forms, creation and design of prizes, and photographs of the events.
Worked with a talented team to develop a new transportation service. We focused on using existing infrastructure to reduce the amount of new vehicles put on the road while still providing an exceptional ride experience for our customers. As part of a 3 person iOS team I was responsible for having a working knowledge of all facets of the application. The Flywheel iPhone app communicates with the server through a RESTful API, which maintains the canonical state for the user.
- App Rebranding Redesigned the visual aspects of the product to change from Cabulous to Flywheel. This project involved adding custom appearances to various standard elements.
- Initial App Rewrite We rewrote an entire app from scratch to use the existing server infrastructure. The rewrite was test driven, to improve reliability. My responsibilities included writing custom views and table cells as well as writing updated network parsers.
- iOS7 Redesign With the release of iOS7 we decided to do a redesign to advantage true of background processing to better keep our app state up to date with the server. In conjunction with this, we reskinned and flattened the designed.
- Complete Test Suite Our entire app is tested at both a model and interface layer using the Cedar testing library. Accurate and complete tests have boosted the app’s reliability and reduced regressions.
Lead Software Engineer
Worked with a team of incredibly talented engineers developing Montage, an open source, HTML5 framework.
- Screening was a tool for creating user interaction scripts for testing web apps. As the Lead Engineer on the Screening testing tool, I was responsible for setting engineering objectives, priorities, and schedules. I was also responsible for documentation and technical communication.
- ScratchPad was a Chrome App for taking quick notes. These notes sync with your Google Docs. I worked on a redesign of ScratchPad, replacing Closure with Montage, and updating functionality and performance.
I worked on the platform engineering team. Responsibilities included maintaining our thin client, with specific focus on network protocol and UI enhancements; managing and improving our build system and associated website.
- Variant Performance Enhancement Project Improved performance of custom inhouse spreadsheet application, and in conjunction developed a set of build-time unit tests to ensure our unit application was consistent between software revisions.
- Custom UI Theming Developed a custom theming API for coloring our MFC thin client. Solved technical challenges in manually drawing MFC widgets.
- Thin Client Networking Architecture Point person for re-architecting our network connection mechanism. This project included designing a new interface for all our thin client preferences as well as making networking protocol enhancements like adding support for SOCKSv5.
- Build System Redesigned our Build System website to use ASP.NET MVC and speed up the website. Responsible for UI enhancements, form redesign and improved SQL stored procedures.
- R&D Intern Program Supervisor Managed operations for the R&D intern program, coordinating and assessing skills and progress of up to 70 interns. Responsibilities included training, grading of homework assignments, and planning and developing custom systems to improve data collection for training classes as well as completion of the exit interviews and recommendation process.
- Financial Software Developer Researched and developed custom applications in Fortran, C, and C++. Worked with legacy in house architecture, on a fast development, fast release schedule. Participated in all aspects of the software development cycle from product specification through implementation and testing. Key team member responsible for managing the distribution and statistics on 10,000 tickets a day.
Software Engineer and Systems Administrator
Developed and maintained custom applications in PHP, MySQL, PostgreSQL, Ruby, Ruby on Rails, and the Fx Windowing toolkit. Performed maintenance on company’s FreeBSD and OpenBSD Servers.
Frameworks And Libraries:
- Rock Climbing