Mobile Software ArchitectLead of Mobile Product Innovation2019 - 2020Uplift
- Led a small team of iOS and Android developers where we quickly prototyped different applications and features to help determine their viability and value for the company.
- Built and launched Python Lambdas in AWS to help support the iOS and Android developers.
- Assisted in product decision-making conversations with an eye out for clean UX and implementation viability.
Lead iOS Developer2018 - 2019Pinn
Technologies: Biometrics, Swift
- Built a user-agnostic biometric authentication framework to be used in partner apps.
- Helped design the public API of the framework to ensure an optimal UX for partner developers.
- Built a sample application to provide "living" documentation on how to best integrate the framework; we all know that if given the opportunity to copy-paste quality code, developers will, so let's lead them in the right direction.
Lead iOS Developer2016 - 2018Under Armour
Technologies: Objective-C, Swift, iOS
- Built iOS libraries to be integrated into the apps. Libraries encompassed common new features to be employed across the suite of UA apps. Features handled by libraries include authentication/SSO, notifications, rollouts, data sync, and more.
- Worked closely with the MapMyFitness, UA Record, MyFitnessPal, and UA Shop teams to facilitate library integrations and help identify and resolve bugs.
- Worked closely with the Platform Services team to develop and build against their REST APIs.
- Built a demo app that exercised every feature of the libraries and provided useful code for the app to springboard from for implementation. In some cases, we built the actual implementations and pushed pull requests when their schedules were tight.
- Build a comprehensive unit test suite and documentation for each framework. My code was deployed to around 100 million users. Frameworks need to be as bulletproof as practically possible and quickly fixed when bugs inevitably arise.
- Helped grow the team at speed while ensuring the quality of code stayed very high.
Co-founder, Lead Developer, Designer, and Product Manager2012 - 2016WersDa, LLC
- Architected, designed, and built the Wersda server API, website, and iOS app from the ground up.
- Managed the product and the expectations of other members of the company, and fought hard to keep the product on track and the minimum viable product clean.
- Performed UX testing and rapid prototyping to iterate and test out different UI/UX interactions.
- Created a mapping system capable of creating an optimized route of a list of items from a map of over 45,000 items in just seconds.
- Created an easy-to-use SDK with full documentation on the WersDa site to allow third parties to power their apps with WersDa maps.
Senior iOS Developer2013 - 2014Imprivata, Inc.
Technologies: Objective-C, iOS
- Helped modernize and refactor architecture for an outdated code base.
- Mentored less experienced developers on design patterns and iOS best practices.
- Worked to improve the mobile development team's iteration process to make it more Agile.
- Led an effort which successfully re-skinned the outdated-looking app to bring it up to modern iOS standards.
- Flattened an overly complex class hierarchy to increase future code readability and maintainability.
iOS Contractor2011 - 2014Akimbo Financial, Inc.
Technologies: Objective-C, iOS
- Created app architecture from the ground up and delivered a full-fledged, functioning banking application to the app store within four months.
- Worked closely with a designer and back-end developer completely via remote communication.
- Built a custom 3D "Coverflow"-like presentation for expenses that allowed easy navigation of purchases.
- Responsible for long-term maintenance of the application and UI updates to match new iOS versions.
- Handled sensitive banking information by using keychain storage and AES encryption.
Sole Proprietor, iOS Developer, and Designer2010 - 2014Iguana Force Studios, LLC
- Created three iPhone applications and published them in the App Store.
- Handled the apps from design and architecture to implementation and administration. The largest, EarthScribe mobile, is a client/server app with an iOS client and a server in ASP.NET with a SQL database and JSON-based REST web service communication.
- Built a GPS-based augmented reality app that used computer vision algorithms to overlay perspective images on a live video stream in a visually believable manner.
- Created the in-app purchase function and handled verification and delivery of the digital products.
Senior iOS Developer2012 - 2013Jiff, Inc.
- Helped architect and implement several wellness apps from the ground up. The apps were all built to utilize the same REST API and needed the same models and endpoints, so we built submodules to be shared between projects to reduce redundancy between projects.
- Singlehandedly built a CSS-style styling engine to be used to easily change skins of an app using JSON files.
- Built a dynamic content engine that allows sets of JSON data to be given to a template file. The template files can be swapped dynamically and used to run AB Testing on the iOS client.
- Performed a modest amount of Ruby development to facilitate server initiatives and acted as a bridge for the iOS team to the Rails team for investigating what certain endpoints actually do.
Senior Systems Engineer2010 - 2011ProAce Technology Services, Inc.
- Worked in multiple roles as the company is very small, with about 15 employees.
- Focused on UI/UX engineering, working with the designer to create and implement wireframes.
- Led a three-month project to design and develop an iPhone app for the Long Center. This project involved meeting clients, performing product and project management duties, UI and UX engineering, and the actual development from start to finish.
- Worked with multiple external clients on projects using a variety of technologies from Webforms to MVC.
- Learned to function in multiple unfamiliar code bases within a short amount of time.
Web Developer2007 - 2010Teres Solutions, Inc.
- Wrote and maintained stored procedures for SQL databases.
- Used Windsor (analogous to StructureMap) for dependency injection and IOC.
- Developed in a code base with a multi-tiered architecture to ensure scalability, separation of concerns, and ease of modification.
- Utilized TDD principles while writing the unit test, integration tests with mock objects, and UI tests.
- Focused on enhancing the UI/UX for some of the more technical parts of the application.
- Worked with QA to plan areas of focus for unit tests when modifying existing code.