HTML Developer in Charleston, SC, United States
Lead iOS Developer2016 - 2018Under Armour
Technologies: iOS, Swift, Objective-C
- Built iOS libraries to be integrated into the different 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 fully exercised every feature of the libraries and provided useful code for the apps to use as a springboard for their implementations. In some cases we built the actual implementations for the apps 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 ~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: iOS, Objective-C
- 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: iOS, Objective-C
- 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 every aspect of the apps from design and architecture to implementation and administration. The largest app is named EarthScribe mobile and is a client/server application with the iOS device as the client and a website/server written in ASP.NET with a SQL database. The web service communication is REST style with JSON.
- 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.
- WersDa (Development)
A product navigation mobile application to help customers find products using an optimized route through a grocery store.
- RyanLons.com (Development)
My personal website and online portfolio, built the site as an exercise in clean design and an opportunity play with parallax scrolling.
- Akimbo Card iOS App (Development)
A prepaid credit card provider; the app provides access to previous transactions as well as the ability to send money, request money, or load more onto the card.
FrameworksCore Location, iPhone SDK, Core Data, Ruby on Rails (RoR), ASP.NET
ToolsAppCode, Xcode, RubyMine, SourceTree, Git, Sequel Pro, Terminal, Adobe Photoshop, Subversion (SVN), Apple Keynote
PlatformsiOS, MacOS, Linux
OtherPhotography, Graphic Design, User Interface (UI), Ajax
Libraries/APIsjQuery UI, jQuery, CocoaPods
ParadigmsREST, Agile Software Development, Unit Testing, Test-driven Development (TDD)
StorageMySQL, JSON, SQLite
- Bachelor of Science degree in Computer Science2003 - 2007Wake Forest University - North Carolina