Senior Ios App Developer Resume
Mclean, VA
SUMMARY
- 7+ years of experience in iOS application development using Xcode and Cocoa Touch framework
- 7 iOS mobile apps published.
- Combine iOS and software development experience spans 10+ years.
- Worked with the aspects of iOS application flow using Storyboards, XIBs, and programmatic UIs.
- Proficient including designing for all types of screen sizes and orientations (iPhone and iPad).
- Comfortable with AutoLayout, Size Classes, and programmatic implementations
- Understanding of MVC and MVVM architectures
- Well versed with OOP Programming languages; Objective C, Swift 3 and Swift 4, and Swift 5
- Object - Oriented Programming expertise; key principles of polymorphism, inheritance, data abstraction, and data encapsulation
- Adept at implementing multiple OOP design patterns including the following: Singleton, Delegate, Factory, KVO, KVC.
- Skilled in converting JSON to objects with Decodable and JSONSerialization
- Consumption of webservices done with native URLSession as well as with third party frameworks such as AlamoFire
- Experience with Git for version control with BitBucket and GitHub
- Memory and Data Management experience in both Manual Retain Release and Automatic Reference Counting; aware of retain counts, memory leaks, and how to handle them
- Excellent written and oral communication skills
- Experience in AGILE/SCRUM methodology, and familiar with Waterfall
- Experience with iOS performance profiling tools like Allocations
- Comfortable working in any team size.
- Efficiently consumed and managed RESTful and SOAP web services with XML and JSON formats.
- Skilled in asynchronous http and https requests using a variety of tools such as NSURLSession, and AFNetworking.
TECHNICAL SKILLS
iOS Technologies: CoreLocation, AVFoundation, MapKit, Cocoapods, SocialFramework, CoreGraphics, UIKit, Foundation, GCD, Operations, PLists, UserDefaults, Keychain, Categories, Interface Builder, XIB’s, Storyboard, Push Notifications, JSONSerialization, NSXMLParser, UIGestureRecognizers, CoreData
Web Technologies: RESTful Web Services, SOAP Web Services, JSON, XML, HTML5
Code & Project Management Tools: Xcode, JIRA, Git, Command Line, SourceTree
Other Tools: Swift, Objective-CFabric, Crashlytics, Splunk, CocoaPods, Carthage, Jenkins
PROFESSIONAL EXPERIENCE
Senior iOS App Developer
Confidential, McLean, VA
Responsibilities:
- Working on a team consisting of 5 iOS and 5 Android Developers, 1 Product Manager, 1 Team Lead, and 1 Scrum Master.
- Applying Agile project methodology with 2 weeks per Sprint. Daily standups every morning. Once a week a 1-hour technical meeting during which the iOS team all technical issues. Also, a once-a-week meeting with all Travel teams (API, Product, Designer, Dev) to discuss each team's updates.
- Working directly with Confidential ’s QA team on build and release/testing sessions to make sure the new build works well.
- Building the app on an internal framework developed by Confidential ’s solution architecture team. The architecture of this framework is 80% the same as Redux plugin architecture.
- Coding in Swift 5 using Xcode 12.3.
- Collaborating with multiple teams from UI/UX, product team, API team, QA team and contributing ideas for changing the business logic or design to make the app more use friendly and easy to use.
- Using Charles Proxy to trace API.
- Utilizing SourceTree for source control and resolving merge conflicts.
- Using UIKit to build the UI for the screens with both storyboards and programmatically.
- Applying accessibility to help people with low vision see the app smoothly with VoiceOver.
- Working on analytic tags to help keep track of user behavior.
- Testing features on regression and reporting bugs.
- Connecting the UI with API response to help the feature displaying data dynamically from server side.
- Writing UI tests to make sure the apps behave properly.
- Using Figma for the UI design and collaborating with UI design team to improve the UI/UX for the feature.
- Conducting code reviews whenever teammates open their PRs and refactoring the codebase.
- Data binding with RxSwift (at the beginning joining the project, and then CapitalOne changed to Combine for data binding).
- Writing Unit Tests using XCTest library sure functions work properly.
- Using JIRA to create tickets and track tickets.
- Verifying and debugging the feature and functionalities using NSLog statements, breakpoints, and LLDB statements, and collaborating with QA team about bugs.
- Synchronizing with Android devs in the team to make sure the features work consistency on every scenario in both platforms.
- Fixing the UI on iPad devices in Portrait and Landscape views.
- Peer reviewing code to help maintain the codebase quality.
- Using Postman to test APIs and validate contracts with backend teams.
Senior iOS Developer
Confidential, Richfield, MN
Responsibilities:
- Custom iOS UI was designed and developed using XIB files with use of wireframes from UX team.
- AVFoundation was used to handle barcode and QR code scanning for products with the iOS app.
- Invoked RESTful web service calls using URLConnection and GCD to pull information from web services. regarding food products, their alternatives and other information.
- Implemented features in Swift using Xcode IDE with XCTest for writing Unit Tests and Test Fairy for functional testing.
- Reworked the user settings page, using AutoLayout and UserDefaults
- iOS backend communications parsed with JSONSerialization and placed into model objects.
- Design custom MapAnnotation. Handling delegates: didSelectAnnotationView, viewForAnnotation.
- Used RESTKit library to make connections to server, and handle iOS app authentication challenges.
- Core Data was used to store the user’s preferences and favorited products using the iOS app.
- Enhanced and optimized map functionality using MapKit, CoreLocation, and MKAnnotations.
- Codebase stored in SVN repository with Jenkins for continuous integration testing.
- Project managed using Agile methodology.
- Designed all views with auto layout and constraints.
- Implemented many OOP and patterns like MVC, KVO and Singleton.
- Implemented new menu design and functionality for an improved user experience.
- Implementing sitecatalyst to track all behaviors of user.
iOS Mobile Developer
Confidential, Denver, CO
Responsibilities:
- Verify and debugged feature/functionality implementations and enhancements in the application using a combination of NSLog statements, Breakpoints, and LLDB statements as per QA Teams feedback.
- Developed UI elements programmatically and through XIBs as per design documentation.
- Navigated between UIViewControllers using both modal presentations and push/poping UIViewControllers onto the navigation stack with UINavigationControllers.
- Involved in the process of applying localization to the application.
- Codebase stored in Git repository using Jenkins Continuous Integration.
- 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.
- Transitioned legacy code from Objective-C to Swift.
- Core Data utilized to persist and retrieve users’ info
- Core Data was used to store the users progress
- Developed using Xcode 9. Design Core Data structure.
- Offered several design elements that added great value to the application and improved the UX.
- Designed and developed custom alert views and custom TabBar.
- Used UIViewControllers, UITableViewControllers, custom ITableViewCell with Interface Builder to design and develop user interface.
- UI and Application design with NIB files programmatically and using Interface Builder.
- All code for the mobile and server applications were written using strict object-oriented design techniques.
- Refactored execution management of orders to be handled in the background without locking up the main thread and UI using GCD; NSOperations also leveraged for more complicated concurrency concerns
iOS Developer
Confidential, Silver Spring, MD
Responsibilities:
- Worked in Xcode IDE with coding in Swift and used AVFoundation was used to handle audio play back and video streaming.
- Utilized NSOperations for downloading images on background thread so as to not lock up the UI and provide a better user experience
- Used NSCache to enable caching workflow for images to reduce loading time from the initial launch of app onwards
- Parsed JSON responses into useable NSObjects using NSJSONSerialization feature.
- Sent push notifications to Apple Push Notification Service (APNS).
- Regularly performed code reviews to ensure efficiency, readability, and maintainability.
- Participated in review meetings and took the initiative to meet the QA testing targets.
- Profiled the application extensively using Instruments to improve performance throughout multiple sprints.
- Designed and implemented native iOS solutions that utilize REST web services for integration with back end processes.
- Developed dynamic configuration to switch between web service calls.
- Managed GitHub repository creating branches doing merge, pull request and releases.
- Worked in an Agile Scrum development environment with the iOS team and participated in daily scrums and Sprint meetings.
- Worked with Product Owner to prioritize tasks and feature development.
- Provided prototypes and demonstrations to make sure the iOS team was developing like they wanted.
- Analysis of requirements to identify the set of possible use cases for the new product design.
- Analyzed and optimized the UI and the backend interface code for efficiency and performance.
- Analyzed existing code for improvements and optimizations.
- Analyzed the production defects and fixed them in time for each release.
iOS Developer
Confidential
Responsibilities:
- Verify and debugged feature/functionality implementations.
- Worked in Objective-C and Swift using Xcode IDE.
- Backend communications parsed with NSJSONSerialization and placed into model objects.
- Created custom pList by calling web services through JSON libraries and connecting to Core Data with the objective C interfaces.
- Code housed in Git repository and used SourceTree to manage merges and commits.
- Worked in a Test-Driven Development (TDD) environment and participated in code reviews and worked with peers to ensure coding best practices.
- Created notifications to detect the autorotation in the customized sub views working with Apple Push Notifications (APNS).
- Created test cases to streamline and optimize code with XCTest and created test data for unit test and requirement validation.
- Created test transactions and rans tests; revising as necessary.
- Development environment used a 2-week Sprint release cycle and followed Agile Scrum practices.
iOS Developer
Confidential, Chicago, IL
Responsibilities:
- Responsible for profiling the iOS mobile app using Instruments and for debugging features and functionality.
- Worked with QA testers to make sure all issues a they found were corrected and all improvements to performance and user experience (UX) were completed.
- Documented Code Snippets, Reference applications, SDK and API level changes, Comparison documents for each new version of iOS.
- Effectively used Storyboards, instruments, and organizer tools in Xcode, coding in Objective-C and refactoring code to Swift using bridging headers.
- Employed TDD which includes the Unit test cases for each class to increase the App quality.
- Encapsulated AFNetworking and REST API as an abstraction layer to manage HTTP request.
- Identified and fixed any bugs reported during testing phase of the project.
- Used Core Data for persistent storage of user data.
- Wrote Unit Testing in XCTest and moved to production.
- Implemented various OOP practices including KVO, and Singleton architectures.
- implementing the software, debugging, fixing and maintaining the software.
- Imported and integrated 3rd party libraries through CocoaPods tool instead of traditional referencing.