Senior Ios Engineer Resume
Los Angeles, CA
SUMMARY:
- 6 years of experience in me.T. and mobile app development, creating apps for iOS devices using Xcode and iOS SDK with Objective - C and cocoa frameworks.
- Built Rich User Interface applications, integrating with various Databases and Client - Server applications in iPhone/iPad. Application development using Objective-C, Swift, Cocos2D, Cocoa Touch, UIKit.
- Strong working noledge of Xcode, CocoaTouch, Objective-C, Swift, and iOS.
- Extensive experience in iPhone and iPad application development.
- Knowledgeable in Memory Management and Performance Improvement.
- Constructed and implemented UI designs using Storyboards with AutoLayout constraints, XIB files, and programmatically following Apple's iOS Human Interface Guidelines
- Experience in teh entire software development life-cycle including requirements gathering, design, coding, testing, debugging and maintenance.
- Expert in Object Oriented Programming with experience implementing MVC, KVO, and Singleton architectures
- Strong noledge in implementing core Frameworks like CoreLocation, CoreGraphics, MapKit, UIKit, and EventKit Frameworks.
- Familiar with implementations using AVFoundation for playing/streaming content as well as barcode scanning
- Worked extensively on XCode, Interface Builder and Instrument.
- Strong at using teh third-party frameworks TEMPeffectively.
- Highly-experienced with design patterns such as MVC, MVVM, Viper, Delegation, Singleton, Categories, Notification, KVC, KVO, Blocks.
- Experience integrating with multiple RESTful web services and parsing JSON responses.
- Utilized Mode View Controller architecture to help keep codebase organized and keep classes decoupled
- Experienced in working with Storyboard, Interface Builder, XIB files, program Interface and Auto layout.
- Regularly participated in pair programming sessions
- Experienced in an Agile Scrum development environment, participating in Sprints and Scrums; and employing Test Driven Development (TDD) and Continuous Integration.
- Working noledge on Bluetooth Low Energy (BLE) Communication, Unit testing and automated testing.
TECHNICAL SKILLS:
Programming Languages: Objective C, Swift, HTML/CSS, SQL
Web Services: RESTful, SOAP, JSON, XML
Architecture & Design Patterns: MVC, MVP, MVVM, Abstract Factory, Fa ade, Decorator, Builder, SingletoniOS Development App Extension Handoff
Data Persistence: Core Data, Realm
Testing: TDD Unit Testing XCTest Automated Testing Jenkins TestFlight
Software Project Management: Agile, Scrum, Pair Programming, Xtreme Programming, Software Development Lifecycle (SDLC), Sprint Planning, Requirements Gathering, Backlog, Daily Scrums, Task Prioritization, Working with Product manager, Scrum Master
IDEs/UI Tools: XCode Eclipse IntelliJ Visual Studio Storyboard, Xib, Interface Builder
Cocoa, CocoaTouch, CocoaPods, Reactive: X, ReactiveSwift, ReactiveCocoaCore Data, UIKit, CoreGraphics, Core Animation, XCTest, Core Bluetooth, MapKit Core Location, Location Kit EventKit, Social FrameworkTextKit, RealmUIKit, UI Dynamics, SDWebImage, Kingfisher, Alamofire, AFNetworking
Version Control Tools: Git and SVN
Desktop Software: Proficient in Microsoft Office Word, Excel, PowerPoint, & Access
Project Tools: JIRA, Confluence, Slack, Trello
Version Control: Git, GitHub, SourceTree, BitBucket, Tower
Continuous Integration: Jenkins, Hudson, Travis
PROFESSIONAL EXPERIENCE:
Confidential, Los Angeles, CA
Senior iOS Engineer
Responsibilities:
- Worked with Realm to store information
- Constructed responsive frameworks with RxSwift
- Implemented teh foundation for SwiftLint and teh .yml file it uses for both local Xcode as well as on teh CI pipeline.
- Alleviated race conditions in teh app by using dispatch groups.
- Lead 2 engineers to complete UI bug fixes.
- Created unit test cases for a several parts of teh application.
- Worked at fixing teh special offers dat we offer to teh users.
- Implemented Address Verification Services to our user registration.
- Led discussions on teh project progress in team retros.
- Addressed comments left on pull requests from lead and principal engineers.
- Worked with backend team to alleviate network issues and optimize slow network calls.
- Worked on user interface work throughout teh app.
- Agile process, with daily stand ups, 1-2 week sprints, and 2-week release cycle.
- Gave presentations on work me have done whole fielding questions.
- Gave information and context on problems/issues dat me have worked on.
- Onboarded new engineers by walking through teh SSH key process.
- Addressed issues dat arose from teh team me was leading and fixed them.
- Refactored large sections of outdated code.
- Review pull requests to conform to SOLID principals.
- Managed RunTools on several pull requests to address styling and linting issues.
- Delegated work dat needed other attention while providing in depth KTs.
- Use Firebase to analyze teh application.
- Performed Paired programming sessions with all members of teh team.
- Tested teh project on several devices and simulators.
Confidential, Atlanta, GA
Senior iOS Developer
Responsibilities:
- Worked on refactoring code to Swift 4
- Imported correct assets to be used on a Lexus head unit, such as teh background image of teh current street label.
- Refactored teh Search Results View Controller from MVC to MVV mobile app architecture.
- Split teh view controller even further by separating teh Full-Screen Logic to Reduced-Mode Logic.
- Tested a cross-border feature which checks if a requested route will result in a border crossing and alerts teh user.
- Replaced UISearchDisplayController related code with teh new UISearchController API
- Merged teh cross border feature into master.
- Used BitBucket for source control and integrated with SourceTree as part of app transition.
- Replaced Contacts related code with teh new CNContactStore API.
- Mentored team on method of testing teh Search View Controller to assure there were no big regressions.
- Worked on bug fixing and improving application performance, also tested on various Devices for UI
- Worked on Continuous Integration.
- Worked on implementing several design patterns like Singleton, designed MVVM pattern with Data model classes and several Categories were made to teh existing classes.
- Worked on adding localization to teh app to handle a plethora of different languages.
- Map View implementation using teh MapKit and Core Location Frameworks.
- MapKit, CoreLocation and MKAnnotations used to make UI tweaks on teh map view and enhance functionality
- Added a new 'Nearby' function to teh app using Mapkit, which helped locate nearby locations.
Confidential, Boston, MA iOS Application Developer
Responsibilities:
- Used BitBucket for source control and integrated with SourceTree as part of app transition.
- Mentored team on method of testing teh Search View Controller to assure there were no big regressions. iOS code review and mentored junior developers on iOS best practices.
- Xcode was teh IDE with coding in Swift and RxSwift with RxCocoa to manage third-party frameworks and libraries.
- Created Notifications module dat resurfaces notification messages through APN's from a database connected on a secure socket.
- Refactored adapter classes from JSONSerialization to Codable.
- Adopted Swift 4’s new changes throughout codebase during migration, including usage of Codable, String collections and various other API changes.
Confidential, Seattle, WA iOS Mobile App Developer
Responsibilities:
- Followed continuous integration and test-driven development (TDD) principals in a strict Agile/Scrum environment.
- Imported and integrated 3rd party libraries through CocoaPods.
- Worked with MapKit, CoreLocation and MKAnnotation to make UI tweaks on teh map view and enhance functionality to get teh latitude and longitude co-ordinates.
- Worked with Core Data to prepopulate UITextfields with persisted data received in prior web service calls.
- Used Entity Framework to design conceptual data access layer from relational database to get teh data from teh database.
- Implemented push notifications by creating APNS s and displayed all teh notices in one location in Notices Tab and also handled push notifications TEMPeffectively with server for integration.
- Used SDWebImage for image caching and downloading.
- Improved data management by refactoring iOS legacy code to reduce race conditions and memory access issues leading to crashes.
- Third-party tools included Firebase, Crashlytics, DeviceKit, and GRDB. iOS development team size ranged from 3 to 6 developers.
- Major contributions would be in completing backlog items and fixing priority crash reports.
- Worked with web/backend team to implement Single Sign-On in multiple apps.
- Used Crashlytics for testing and identifying cash issues.
- Worked with NSOperations to consume RESTful web services.
Confidential, San Francisco, CA iOS Developer
Responsibilities:
- Used Swift primarily with some objective-C and bridging headers to manage backward compatibility.
- Implemented push notifications, so dat users could get updates on balances.
- Performed a security audit, to make sure dat teh user’s information is secure, using pinning and other techniques.
- Updated UI elements as instructed by our UI/UX team, using Xib files along with some programmatic implementations.
- Used UserDefaults to store user’s app ps, while making sure to keep rmation out of there for security reasons.
- Used iOS charts to display budget information in meaningful ways to teh user
- Developed entirely in an Agile process, utilizing daily standups, using sprint planning, retrospectives, and JIRA.
- Worked in a team of 4 iOS developers, and communicated regularly with teh UI/UX team
- Tracked code using Git with Jenkins CI for continuous integration.
- Participated in code reviews and followed Test-Driven Development (TDD) methodology.
Confidential, New York, NY
Junior Mobile App Developer
Responsibilities:
- Worked as part of iOS development team comprised of 4 developers, 1 UX designer and 1 product owner.
- Used Xcode IDE and coded in Objective-C and Swift, transitioning this iOS mobile app code base from Objective-C to Swift.
- Refactored legacy Objective-C code and add new coding using Swift.
- AVFoundation was used to handle audio play back and video streaming.
- Used NSCache to enable caching workflow for images to reduce loading time from teh initial launch of app onwards.
- Adapted Core Animation and CALayer to crop and animate images over videos.
- Used Restkit library to make connections to server, and handle autantication challenges.
- Connection to web service was achieved using GCD. Delegate methods implemented to handle reception of response, data, error.
- Analyzed and optimized teh UI and teh backend interface code for efficiency and performance.
- Profiled teh application extensively using Instruments to improve performance throughout multiple sprints.
- Tested system and application performance limits and characteristics to optimize iOS app performance.