Sean Lomar Hutchinson
Sr. iOS Software Developer
Phone: 720-***-**** ******************@*****.***
Professional Summary
A highly innovative and detail-oriented software engineer. I have been developing front end iOS mobile applications for 10+ years, providing expertise, outside the box thinking, and a wide variety of performance enhancements to a variety of applications to improve the overall user experience.
•Adept at integrating various native and 3rd party frameworks such as CoreLocation, MapKit, XCTest, CoreGraphics, Core Data, SQLite, Google APIs, Social Framework, CoreAnimation, AVFoundation, UIKit, EventKit, CloudKit, Core Bluetooth, etc.
•Experience with Agile/Scrum, Test Driven Development (TDD), and other software development methodologies.
•Experienced in working with both Apple Store applications and enterprise development applications.
•Comfortable constructing UIs through Storyboards or programmatic UI statements with the use of Size Classes and AutoLayout constraints to allow for dynamic adjustment for different screen sizes.
•Capable of creating all UI programmatically using AutoLayout, NSLayoutConstraints, and NSAnchors.
•Advanced experience in Testing and Bug-Fixing using XCTest framework, Breakpoints, LLDB statements, NSLog statements, and Instruments.
•Used to working in an Agile Test-Driven Development (TDD) environment and following strong quality processes.
•Skilled in asynchronous http and https requests using a variety of tools such as GCD, NSOperations, NSURLSession, AFNetworking, NSXMLParser, NSJSONSerialization, and NSURLConnection.
•Adept in the use and understanding of UIKit, XCTest, NSCoding, NSUserDefaults, SQLite, and other tools & frameworks.
•Experience in quality, reusable code in Swift and Objective-C, and in transitioning codebase from Swift to Objective-C using bridging headers for interoperability.
•Knowledgeable of storing data persistently on a device via various routes: CoreData, SQLite, Documents Directory, NSCoding protocol (archiving and unarchiving), NSUserDefaults, Keychain
•Proactively performs extensive system testing to ensure that the systems work efficiently and are developed following the applicable development methodology.
•Problem solving skills to develop quick yet sound solutions to resolve complex issues.
•Object Oriented Programming expertise; firmly grasps the key principles of polymorphism, inheritance, data abstraction, and data encapsulation.
•Experienced in bringing Accessibility to mobile application for WCAG AA and ADA compliance.
•Experienced in various application architectures and Design Patterns including, but not limited to Factory, Façade, MVC, MVVM, Flux, Singletons, Delegation, Observers, and more.
•Ensures app stability and quality with effective debugging, optimization, and understanding of Instruments.
Development Skills
Programming Languages
Swift
Objective-C
Java
JavaScript
Kotlin
Python
HTML
Flutter - Dart
Frameworks
UIKit
UIDynamics
CoreLocation
MapKit
CoreData
CloudKit
CoreBluetooth
LocalAuthentication
AVFoundation
AVKit
Firebase
CoreImage
CoreGraphics
UrbanAirship
Software
Xcode
Github
Terminal
BitBucket
Atlassian Suite
Kanban
Instruments
Simulator
Microsoft Office
Eclipse
Android Studio
Networking
URLSession
NSURLConnection
Alamofire
AF Networking
REST
SOAP
JSON
XML
NSJSONSerialization
NSXMLParser
Testing
XCTest
Quick
Nimble
TestFlight
UITesting
Jenkins
Data Persistency
CoreData
NSUserDefaults
Keychain
SQLite
FileManager
Methodologies
Agile
BDD
TDD
Waterfall
UI
StoryBoards
Programmatic
XIBs
NIBs
NSLayoutConstraints
NSAnchors
SwiftUI
Architecture
MVC
MVVM
MVP
Flux
Design Patterns
Singletons
Factory
Façade
Delegation
Notification
Observer
Professional Work Experience
EMPOWER
Senior iOS Lead Architect / Developer
December 2022– Present
Greenwood Village, CO
Customer Application:
Empower Personal Dashboard: https://apps.apple.com/us/app/empower-personal-dashboard/id504672168
(Experience a new level of financial management with Empowers free app. Consolidate all your accounts, track your net worth, plan for retirement, manage your portfolio, and more. Our professional-grade technology ensures a personalized experience tailored to you.)
The development approach centered around utilizing React Native, a powerful framework for cross-platform app development. Harnessed Bing's robust backend API for location-based services. Furthermore, leveraged Amazon AWS for the secure storage of photos and other relevant data, ensuring the seamless functioning of our application.
Empower Retirement Account:
https://apps.apple.com/us/app/empower/id1001257338
(Empowers acclaimed app empowers you to seize control of your finances. Sign up effortlessly, actively manage your money, access intuitive resources to boost financial confidence, and explore much more—all tailored to your unique financial landscape.)
•Orchestrated the establishment of robust privacy and security measures for the Money Transfers feature.
•Spearheaded the enhancement of accessibility within the Retirement Overview section as the lead developer.
•Directed the development of encryption and data integrity protocols for the Financial Goals feature as an engineering lead.
•Played a pivotal role in engineering seamless animations, transitions, and overall refinement for the Money Transfers section.
•Adhered to Agile/Scrum methodologies for comprehensive software development and progress reporting.
•Regularly provided updates on development, testing, and release progress in daily stand-ups, sprint planning, and demo meetings.
•Tracked and documented development tasks and defects meticulously using tools like JIRA and Confluence.
•Designed and developed a persistent data layer using Core Data.
•Designed Core Data objects and used NS Operations to get all GPS coordinates and information, with AES-256 encryption to store the information.
•Implemented development following the MVVM architecture and programmed using Swift, incorporating MVVM design pattern elements like KVO and Singleton within the Xcode IDE.
•Employed various frameworks including Bing API, Amazon AWS, and React Native.
•The team structure included two React Native developers, a back-end developer, and a QA tester.
•Utilized Swift Package Manager (SwiftPM) to build system in Linux with Xcode support for iOS packages with a new repository on GitHub.
•Faced challenges in integrating maps, ultimately opting for React Native maps due to limited support for Bing maps.
•Use Python and C ++ and leverage Amazon AWS, for secure storage of photos and data on the relevant information for a better functionality of the application.
•Proficiently utilized the UIKit Framework for both development and ongoing maintenance.
•Employed a range of UIKit tools, such as UICollectionView, UITableView, UITabView, and UIPageView, to craft custom interfaces based on Zeplin designs.
•Facilitated backend asynchronous communications through RxSwift, Alamofire, and Codable for parsing.
•Effectively managed multithreading and concurrency concerns using GCD and OperationQueue.
•Utilized Git with SourceTree GUI for version control and Jenkins CI server for continuous integration.
•Integrated Adobe Analytics for comprehensive user interaction tracking, contributing to informed business decisions.
•Leveraged Storyboards for implementing UI designs sourced from InVision and integrated various APIs via the Firebase SDK.
•Evaluated and collaborated on adopting SwiftUI, supporting the development of a migration plan.
•Developed a soft body physics library for simulating spheres within an artificial gravity environment.
•Utilized Cordova to create a proof-of-concept cross-platform starter app with limited functionality.
•Engineered a feature utilizing camera and image processing to detect corners within live video feeds.
•Implemented map-based tracking pins for financial event detection within an HR software suite.
•Developed breadcrumb tracking for geo-data and credit card information within the same HR software suite.
•Applied KVO to monitor keyboard behavior for a smoother user experience during the sign-up flow.
•Engineered code to manage user interaction with graph nodes, displaying popovers within acceptable screen real estate based on node positions.
•Created a CocoaPod for connected account functionality shared among three internal apps.
•Rectified graph animation issues, ensuring seamless in and out animations post bug-fixing.
Fender Musical Instruments/ Therabody/ Alo Yoga
Senior iOS Lead Architect / Developer
September 2022– December 2022
Los Angeles, CA
Customer Application:
Fender Tune: https://apps.apple.com/us/app/fender-guitar-tuner/id1107017950
(It is a basic tuner app with an auto tuner and a manual tuner as well as the ability to look up songs and chords as well. It works for bass, guitar, and ukulele. I was responsible for adding accessibility labels/identifiers, setting focus, with an emphasis in voice over work for the visually impair. I was working on a hybrid codebase and most of the work was done in objective-c)
Fender Play: https://apps.apple.com/us/app/fender-play-learn-guitar/id1226057939
(This app is special because of the vast content they have, film, and update constantly in house. They were always iterating/planning for future releases—extremely organized they spun up a new team to remove the translate their React Native codebase over to fully native Swift as well as implement a new layout/design for the application. I worked with their in-house lead to write the entire home screen that can be seen on the app now (11.18.22). It allowed me to touch every part of the application as there are snippets or the most integral parts of the entire application featured there for easy access, use and visibility. One of my first big tasks was to write all the network calls for the home page which consists of about 80% or more of the overall calls in the application)
Thera Body: https://apps.apple.com/us/app/therabody/id
(It is an app that integrates with their line of handheld massagers and allows users to see their usage stats and follow Therabody “routines/plans” along with tips on how to use the devices best/better. I used the various hardware devices to generate user data and read it/display to the user. My first task was to implement a new screen to display user data that had complex connection, loading, and error handling)
Recovery Air: https://apps.apple.com/in/app/recoveryair/id
(I had to do a manual firmware update and test connection and validate data from the device)
Alo Yoga: https://apps.apple.com/us/app/alo-yoga/id1503741784
(It is an app that allows users to purchase clothing and accessories from the brand Alo Yoga. I covered for a developer for a sprint and did bugfixes, tech debt work, and implemented a sales discount alert for the holidays along with the logic)
Technologies: Jira, Confluence, Contentful, Iterable, Firebase, Instruments, XCTest, Testflight, App Dynamic, App Center, Azure, CircleCI, Trello, MVVM, Xcode, Visual Studio Code
•Conducted weekly dev connect meetings to discuss interesting articles, books, topics around development.
•Discussed updates to Swift/capabilities and conducted Retro meetings (wind, anchor, iceberg, etc.)
•Implemented Iterable and tested custom notifications.
•Did research on SPM v. Cocoa pods to help Fender decide which to use when moving to fully native.
•Running React Native app to install the Expo Go App on ITunes.
•Involved in brainstorming meetings for future features/improvements.
•Created reusable components in SwiftUI to be used all over the application.
•Worked with Avo eventing—implemented analytics throughout the application.
•Wrote multiple UI tests both as part of tickets and as tech debt in X code.
•Worked with contently to get dynamically updatable content in the application.
•Updated React Native code when applicable/necessary.
•Passed data from React Native over to native codebase when applicable.
•Worked with Contentful to get dynamically updatable content in the application.
•Cut builds via Circle and Testflight to share with QA devs
BeGrizzlee
Flutter Developer
February 2021– August 2022
San Francisco, CA
Customer Application:
App is in alpha phase and not yet released to the Apple Store.
•Build Flutter application using Dart programming and BLoC architecture patten
•Used Flutter's widgets and APIs to recreate the app's functionality and handle any platform-specific code using Flutter's platform channels and plugins.
•Updated the app's data layer, including local storage, remote APIs, and other data sources, to work with Flutter's requirements using Hive and Dio http library
•Analyzed and optimized the app's performance using Flutter's built-in tools, such as the DevTools profiler.
•Created BLoC classes that handles the business logic and communicates with external data sources, process the events, and update the app's state accordingly and ensure that the UI is always in sync with the state.
•Used the BlocProvider and BlocBuilder widgets to connect the UI with the BLoC and manage state changes.
•Used the StreamBuilder widget to listen to state changes from the BLoC and rebuild the UI accordingly.
•Write widget tests to ensure the correct rendering and behavior of your UI components.
•Focus on writing thorough unit tests for your app's business logic and utility functions.
•Used the flutter_secure_storage plugin to securely store sensitive user data, such as access tokens, passwords, and financial information.
•Implement security best practices in your Continuous Integration (CI) and Continuous Deployment (CD) pipeline.
•Used Get_it service locator that allows you to manage and inject dependencies.
•Implemented a radial hero animation, using the MaterialRectCenterArcTween class provided by Flutter
Chick-fil-A
Senior iOS Developer
October 2017 – February 2021
Lawrenceville, GA
Customer Application:
https://apps.apple.com/us/app/chick-fil-a/id488818252
•Worked with MVVM architecture and used various design patterns such as Factory, Singletons, Adapter, and more.
•Created Notifications module that resurfaces notification messages through APN's from a database connected on a secure socket.
•Designed Core Data model.
•Worked with MapKit, Core Location, and MKAnnotations for service call map and location information.
•Managed quality with peer code reviews, test-driven development, and used Jenkins for continuous integration to manage commits to private Git server, which we managed with SourceTree.
•Developed contact search capabilities using third-party libraries Moya, Alamofire and the search bar by utilizing user device contacts and remote contacts of the organization.
•Worked on 2 different applications, one being for the customer, the other being internal.
•Analyzed and optimized the UI and the backend interface code for efficiency and performance.
•Asynchronously fetched server data while maintaining a responsive user experience.
•Developed throttle and normal search for usernames, phone numbers, email id's etc.
•Built capabilities like sharing contacts, share location, deleting and updating contacts by using libraries like Contacts, CoreLocation, MapKit.
•Resolved major application crashing bugs.
•Designed all views with Auto Layout and Constraints.
•Validated users based on their username and password with complexity checks and backend API calls.
•Encrypted user passwords’ using Keychain.
•Develop Custom iOS UI; designed using XIB files with wireframes from UX team.
•Work with Core Data to prepopulate UI with persisted data received from web service calls.
•Reworked the user settings page, using AutoLayout and UserDefaults
•Parsed iOS backend communications with JSONSerialization.
•Worked closely with Android development team creating POCs and updating features as well as working directly with QA for any bug fixes and deploying new builds right away.
•Regularly perform code reviews to ensure efficiency, readability, and maintainability.
Razer
Senior iOS Engineer
July 2015 – September 2017
Irvine, CA
Application:
https://apps.apple.com/us/app/razer-game-deals/id968583813
•Code housed in BitBucket git repository.
•Core Data used to persist and retrieve service ticket information.
•Added custom UI elements to make it easier to service providers to access customer info, location.
•Wrote a multitude of unit tests to validate logic and ensure resolved issues were not reintroduced.
•Used GCD for concurrency and used Core Data and SQLite for data persistence.
•Asynchronously fetched server data while maintaining a responsive user experience.
•Used Storyboards and AutoLayout constraints, coded UI programmatically in Xcode to conform to UI diagrams provided by the design team.
•Backend communications parsed with NSJSONSerialization and placed into model objects
•AVFoundation was used to handle audio playback and video streaming
•Collaborated with internal and external teams - Product Managers, Engineers, Designers, and Marketers to conceptualize, build, test, and realize new features
•Implemented logic to connect to server to download document data using GCD
•Designed UI and application flow created using UIKit and Core Graphics
•Worked with Objective-C and Swift hybrid code bases; practical experience working with bridging header files and minor issues with a dual language code base
•Project managed using Agile/SCRUM techniques; code delivered in 3-week sprints.
•Wrote Unit Tests for code using XCTest library
•Utilized Core Data to store persistent user information.
•Made some adjustments to improve the map view and navigation functions
Best Buy
iOS Software Developer
November 2014 – July 2015
Lawrenceville, GA
Application:
https://apps.apple.com/us/app/best-buy/id314855255
•Worked closely with the design team to implemented prototype and proof-of-concept apps based on design specs provided via Sketch and Photoshop for demonstration and evaluation purposes.
•Developed and updated various pages and UI elements used throughout the app as per design team specifications and wireframes
•Experience working with Storyboards and segues from programmatic navigation and XIBs.
•Wrote unit/UI tests, refactored projects to reflect best practices and updated repositories to Swift.
•Analyzed and optimized the UI and the backend interface code for efficiency and performance.
•Asynchronously fetched server data while maintaining a responsive user experience.
•Used navigation table and table view with compound views in the UI.
•Fixed defects as needed during the QA phase, support QA testing, troubleshoot defects and identify the source of defects.
•Worked with collection view to create navigation menus to create a UI to make transactions easily accessible.
•Used TDD which includes the Unit test cases for each class to increase the app and codebase quality.
•Core Data was used to store the user progress.
•Refactored RESTful requests from NSURLConnection to NSURLSession.
•UI implemented using XIB files, and programmatic means; Constraints created via Interface Builder and with programmatic helper methods as well.
•Major contributions would be in completing backlog items and fixing priority crash reports.
GoTell Technologies Incorporated
Jr. Mobile App Engineer
September 2013 – November 2014
Lawrenceville, GA
Website:
http://www.gotelltech.com
•Added features such as new screens, multimedia and sign up requirements according to the client’s instructions.
•Analyzed existing code for improvements and optimizations.
•Used RESTful web services to access the data from the backend.
•Designed and demonstrated several POC’s for new functionalities and micro-features.
•Analyzed and optimized the UI and the backend interface code for efficiency and performance.
•Asynchronously fetched server data while maintaining a responsive user experience.
•Designed all views with auto layout and constraints.
•Fixed defects as needed during the QA phase, support QA testing, troubleshoot defects and identify the source of defects.
•Participated in code reviews, troubleshooting, debugging and testing.
•Used TDD which includes the Unit test cases for each class to increase the app and codebase quality.
•Used Jira and Confluence along with Slack for team collaboration.
•Participated in Agile sprint planning meetings with the app development team.
•Performed QA on existing applications.
•Worked with Git/GitHub to checkout and update the codebase changes.
•Used native libraries and frameworks, and proprietary APIs for pulling content from various sources.
Education
Bachelor of Science in Software Development
Georgia Gwinnett College - Lawrenceville, GA