Phone: 703-***-**** ************@*****.***
PROFESSIONAL PROFILE
Over 8 years of experience in the software industry architecting and developing iOS mobile based applications.
Development of customer-facing and enterprise iOS mobile applications in a variety of industries (ecommerce, finance, transportation, media)
Worked on Core Data – familiar with migrations and designing object model
Experienced in working with data parsing forms such as XML and JSON, to dynamically display data on iPhone/iPad.
Strong knowledge in implementing frameworks like CoreLocation, CoreGraphics, MapKit and UIKit Frameworks.
Strong knowledge in all phases of Software Development Life Cycle (SDLC) process, which includes requirement analysis, designing, implementing, debugging, testing, fixing and maintaining applications.
Proficiency with memory management - Manual Retain Release (MRR) and Automatic Reference Counting (ARC).
Have performed well in various roles as programmer, a team player with strong analytical, relationship management, logical and communication skills.
Establish and maintain productive working relationship with management, clients and team members along with outstanding communication and presentation skills
Integrations such as Facebook, Twitter, and Google+ with OAuth token handling
Experienced in utilization of iOS camera, Video and audio capture frameworks.
Great exposure on version control tools like Git, GitHub, SourceTree, BitBucket.
Strong knowledge about Core Frameworks like, MapKit, Core object, Core services, Core Graphics, Core animation, UIKit & MVC methodologies.
Good knowledge of instruments for CPU profiling, memory mapping and management.
Experienced in working with Storyboard, Interface Builder, XIB files, and Auto layout.
Expertise in testing applications using simulators and on real devices to optimize applications.
Experienced in UX Design, can translate concept design into user interface on mobiles like iPhone, iPad, and iPod.
TECHNICAL SKILLS
Skilled in architecture, user interface design (UI/UX), and project management.
Programming Languages & Methods
Swift, Objective-C, C#, C++, Java, Object-Oriented Programming and Object-Oriented Design
IDEs: Xcode, Visual Studio, Eclipse, NetBeans, QTCreator
Database: SQL Server, SQLite, Firebase
User Interface:
Interface Builder, Auto Layout, Xib, Size Classes, Adaptive Layout, CALayers, UIView
Mobile Technologies: iOS; Mobile Web
iOS Tools: XCode, Instruments, Carthage, CocoaPods
Team Tools, Testing and Methods: Agile Scrum, JIRA, Jenkins, Test Flight, TDD, Unit Testing, UI Testing, XCTest, Automated Testing
iOS Frameworks & Tools:
Cocoa Touch, App Extension, Handoff, Document Picker, AirDrop, TextKit, MapKit, UIKit Dynamics, Multitasking, Storyboards, Apple Push Notification Service, Local Notifications
UIKit & Gesture Recognizers. GCD, NSOperations, Storyboard, Interface Builder, Views and View Controllers,, Core Plot, Core Graphics, Core Location, Location Kit, Alamofire, NSURLSession, MessageUI, AddressBook.
Architecture and Design Patterns: MVC, MVP, MVVM, Singleton, Delegation, KVO/KVC, Notifications, Factory, Abstract Factory, Decorator, Adapter, and more.
Version Control: Git, GitHub
Content Integration: REST, JSON, SOAP, XML
Third party frameworks & tools: RxSwift, RxCocoa, Crashlytics
PROFESSIONAL EXPERIENCE
Senior Mobile iOS Engineer July 2019 - Present
AppGuard, Chantilly, VA
https://apps.apple.com/us/app/trustica-mobile/id1494633365
Worked on a pre-released secure-communication app until its near complete state (joined the team when there was a mere half year of development done on the app). Implemented the UI, onboarding flow, designed the architecture for networking. Worked with design, and manager to clarify, and redetermine what is reasonable and possible as far as requirements were concerned.
Mentored iOS and Android developers
Cooperated with technical and non-technical peers with various app signing challenges, such as with CSR or provisioning profiles
Extensively refactored code where appropriate to maximize code quality and minimize future rework
Worked with the client team to formulate the development process, including:
oSetting up JIRA webhooksfor Kanban board
oGit flow
oSlack
oJira workflow
oGoogle Hangouts
Involved with many areas of the apps architecture, such as:
oStyling, which was configurable via plists
oNetworking Layer
oLocalization
oNavigation, in particular using the coordinator pattern
oOnboarding flow
oCreating different app targets for various environments, such as DEV, PROD, DEMO, and staging
Resolved app issues that were highlighted in Apple’s resolution center
Finished up the VoIP feature of the app
Created custom, reusable UI components, such as loaders and alerts
Released the app to the App Store, updating the app with the new release, as well as updating the release version numbers as appropriate
Utilized various unit testing approaches, such as stubbing and spies
Regularly reviewed peer’s code in code reviews
Utilized Charles Proxy and Postman to integrate and debug APIs
Connected API responses to the UI, including working with paginated responses
Implemented biometric authentication using LocalAuthentication framework
Used Zeplin for feature design
Integrated a linter into the app to improve code quality
Implemented a force upgrade feature so that users are using the most up to date version of the app, as well as lessening the burden of supporting older APIs for older versions.
Used a variety of different frameworks, such as Lottie, Realm, CallKit, and PushKit
Senior iOS Developer October 2018 – June 2019
Ridecell, San Francisco, CA
https://itunes.apple.com/us/app/zity/id1316126020?mt=8
https://itunes.apple.com/us/app/gig-car-share/id1221568885?mt=8
Worked on two iOS mobile apps. Took over responsibility of the core version of the apps and worked on the platform app team to deliver desired features. Worked closely with QA, Design, and Android team to clarify ambiguities and achieve feature parity.
Helped migrate apps away from ObjectMapper pod into Codable
Architected and designed registration component as an alternative for Jumio, and OnFido
oUsed MVVM architectural pattern for this component.
oWrote the unit tests for this component.
oUsed native framework: AVFoundation for taking pictures, compressing images, before sending to back-end in multi-form format.
Responsible for maintaining white label apps and delivering builds to QA.
Extensive refactoring of code to use more declarative and functional paradigms.
Added deep link support for RFID `gig` cards.
Migrated codebase from Swift 3 to Swift 5.
Leveraged Charles Proxy tool to troubleshoot issues from both app and back-end.
Took advantage of Charles Proxy features to accelerate development without a working back-end.
Participated in information exchange meetings with other iOS developers with interesting iOS topics. Topics included architecture, method dispatch, unified logging, debugging with LLDB.
Helped migrate logging framework used from debugLog to os_log to provide QA with a convenient way to troubleshoot issues via the console app.
Reviewed code, practiced pair programming.
Leveraged LLDB debugger features to troubleshoot issues in the app.
Profiled the app to monitor performance leaks, memory optimizations, and battery use using Instruments, Memory Graph Debugger, and Debug View Hierarchy.
Helped troubleshoot issues with CI/CD.
Onboarded remote developers.
Implemented instant rentals features for feature parity with other carsharing apps in the Spain market (Zity app).
Continuous Integration with Jenkins CI server.
Utilized GCD/NSOperation multithreading techniques for downloading catalog images of the menu on background thread to not lock up the UI and ongoing animations.
Implemented branding for white-label apps, and ad-hoc customer requests.
Wrote release notes documentation for each incremental build.
Lead iOS Developer January 2018 – October 2018
Disney, Glendale, CA
Led a project to develop a new iOS mobile app from scratch. The application is intended for special events tickets flows.
Developed application in Swift 4 using Xcode 9
Implemented continuous integration using Jenkins, including updating scripts and plugins
Wrote unit tests using XCTest and XCUITest
Used a mix of design patterns, including MVC, MVVM, Delegation, Builder, and Singleton
Implemented third party libraries using Carthage
Used Charles Proxy to monitor web requests and debug real-world usage
Mentored junior developers, reviewed code and organized scrum meetings
Worked with Product Owner to manage and prioritize tasks
Collaborated with back-end team on application integration and discussed what endpoints were needed, along with the necessary input and output
Leveraged internal frameworks
Used Oauth 2 for secure backend communication
Responsible for getting junior developers up to speed and capable of contributing to the project. Also taught them best practices and how to ensure a quality product. We were able to close out a lot of stories in the process
Responsible for gathering requirements, documenting the project, managing tasks, and issue tracking
Responsible for collaborating with other teams that manage other frameworks like profile servoces
Senior iOS Developer November 2016 – December 2017
Comcast Cable Company, Philadelphia, PA
https://itunes.apple.com/us/app/xfinity-mobile/id1194745615
Worked with team of 50+ developers and managers in an Agile environment
Designed and implemented custom app-wide animation system using CoreAnimation and UIKit
Implemented custom animations for every screen in the application
Implemented screens and page flows based on design team wireframes
Used Xcode to construct interfaces using programmatic NSLayoutConstraint-based UI with all data supplied dynamically from the server
Researched the feasibility of new UI features and video integration and provided recommendations on technologies
Used NSLocalizedString to set up localization
Used CoreData to maintain user support chat messages
Used GCD and lazy loading to ensure that user experience was smooth
Helped estimate task complexity and length during sprint planning sessions
Served as liaison between visual QA and iOS/Android development teams
Worked to ensure app compatibility with iOS 8.1 and up
Helped manage GIT branches in BitBucket
Provided demos and walkthrough videos to business and design management
iOS Developer November 2015 – November 2016
Capital One Services, McLean, VA
https://itunes.apple.com/us/app/capital-one-creditwise/id1008234539?mt=8
Managed the team in a full audit of the code base and planned the changes we wanted to make going forward.
Recommended methods, tools, frameworks, and technologies to best achieve the desired result.
Set-up and managed version control and continuous integration with a private GitHub and Jenkins.
Responsible for issue tracking and project management in JIRA Agile.
Developed and architected the application based on the MVVM architectural pattern.
Suggested different ways to improve work processes by implementing new features in the Agile system.
Developed improvements using Core Animation and Core Graphics.
Responsible for enhancing various modules such as the different views and user interfaces.
Collaborated with cross-functional teams to define, design, and ship new features.
Worked on bug fixing and improving application performance.
Researched and evaluated new technologies to make the development process and workflow more efficient.
Served as client liaison on design, development, quality, and submission.
Provided regular update reports on overall application development status and tasks.
Documented project tasks and application functions and features.
Analyzed customer requirements and created a project plan and functional analysis for the design of the application.
iOS Developer October 2014 – November 2015
Home Advisor, Golden, CO
https://itunes.apple.com/us/app/homeadvisor-pro/id437003175
Worked with the UI designers to achieve a balance between the user requirements, specifications and the comprehensive mobile design and goals.
Co-ordinated with backend team to plan and develop APIs specific for the mobile application.
Developed and released three completely different iterations of the application based on various user and client-business feedbacks and added new features until the latest version 5.3.0.
Worked extensively with Objective C and Cocoa frameworks.
Developed critical tools for this project like customized navigation bar, scroll view and carousel display for iPhone.
Worked hands on with UIKit Framework for the application.
Worked extensively on table view controller and created customized table where required.
Was part of the complete design of the MVC flow for the application with UI components and controllers to be used for Category View.
Performed web services deployment and testing on devices.
Performed security audit to ensure that no confidential information was persisted on the device or transmitted insecurely, and that log-in credentials were securely stored with Keychain.
iOS Developer September 2013 – October 2014
Innovative Computer Software, Eden Prairie, MN
https://itunes.apple.com/us/app/net-check-in-oil-change-henry-day-ford/id805594114
Used Firebase indexing to improve performance, particularly with finding merchants and offers.
Implemented Firebase Push Notifications to notify users of nearby search items.
Worked with web development team on integration of web services and search with CMS database.
Updated location finder functioning with MapKit for iOS.
Communicated with RESTful API to fetch information, such as nearby ATMs.
Used JSON parser to parse fetched REST data from server to the iOS mobile app.
Implemented Unit Testing of the iOS mobile app, and helped move the app to production.
Participated in testing for app submission and ensuring app store guidelines were met.
Implemented advanced animation techniques to provide a user-friendly interface.
Reviewed entire iOS code base and participated in peer-to-peer code reviews.
Worked closely with various departments to ensure that our iOS mobile app delivers the greatest experience to the end user.
Created a framework for reusable components that can be applied to iOS applications developed throughout the organization.
Worked extensively on table view controller and created customized table where required.
Was part of the complete design of the MVC flow for the application with UI components and controllers to be used for Category View.
Performed web services deployment and testing on devices.
Was responsible for Service Integration Development and end to end testing.
Interacted with Backend team to display the correct data format in devices.
Involved in Integration of web-based content made with HTML5 on a Native app using UIWebView
Formatted the Data as per Business rule to display in UI.
Creation of custom checklist and sharing them with selected app users by calling web services and connecting to SQL database with the objective C interfaces.
Junior iOS Developer May 2012 – September 2013
HSN, St. Petersburg, FL
https://itunes.apple.com/us/app/hsn-shopping-app/id324326909?mt=8
Worked on RESTful web services technologies to support the iOS mobile app.
Used Git extensively as the versioning tool for the iOS mobile apps development team.
Worked in Agile environment with active scrum participation, and assisted in documenting progress on backlog, bug fixes, and tasks.
Utilized MVC design pattern for modular and scalable development in iOS mobile apps.
Integrated third-party libraries to iOS projects, using Cocoa Pods.
Responsible for managing the backlog in JIRA.
Created views and linked outlets using Storyboard, based on wireframes.
Developed code for different views for portrait and landscape orientation.
Developed 3 different visualization approaches tied to the work order date segregated by timeframes.
Tested fixes using XCTest to ensure success.
Stored and accessed data via CoreData configuration
EDUCATION
University of Massachusets, Lowell
Bachelor’s Degree in Computer Engineering
JAMIE CHU
SENIOR IOS DEVELOPER