- Roughly 6 - years of application development experience in gathering, understanding requirements, designing & developing iOS mobile applications for iPhone and iPad platforms.
- Expert in Swift, and Objective-C coding, as well as working in Xcode, Interface Builder, Storyboards.
- Skilled in back-end integration using native methods and classes as well as third-party frameworks for integration and threading as well as Reactive-x (RxSwift and RxCocoa).
- Adept at media management, memory management, multithreading, best practices, and development tools. Thorough understanding of memory management in iOS environments, and experience optimizing native iOS applications for performance (memory, power, etc.)
- Experience with the full Software Development Life Cycle (SDLC) process, which includes designing and implementing the software, debugging, fixing and maintaining the software. Application architecture experience working with MVC, VIPER, and MVVM architectural design patterns.
- Use of design patterns and concepts like delegation, protocols and categories, abstract factory, builder, façade, command, proxy, visitor, and more.
- Thorough understanding of App store requirements, HIG, iTunes Connect and iOS Provisioning Portal (Certificates, App IDs, Provisioning and Distribution).
- Complete understanding of Object-Oriented Features (Inheritance, Polymorphism, Abstraction, and Encapsulation). Experience working with Agile methodology in SCRUM, Extreme and TDD process environments, and use of continuous integration.
Frameworks: UIKit, UIDynamics, Core Location, MapKit, Core Bluetooth, CoreGraphics, QuartzCore, AVFoundation, CloudKit, EventKit, Social, Apple Push Notifications Service (APNS), Alamofire, Cocoa Pods, CocoaTouch, Core Data, Keychain, File System, NSCoding, NSUserDefaults, Contact, GCD, NSOperations, Moya
UI/UX: Interface Builder, Auto Layout, Storyboard, Xibs, NSLayoutConstraints, SwiftUI, Size Classes
Programming Tools: Xcode, Eclipse, Visual Studio, IntelliJ, Instruments
Network Protocols: XML, SOAP, JSON, REST
Architecture & Design Patterns: MVC, MVVM, VIPER, Singleton, Composite, Decorator, Bridge, Adapter, Notifications, Observation, Extensions, Visitor, Proxy, Delegation, Protocols
App Quality & Testing Tools: JIRA, Jenkins, TestFlight, TDD, Unit Testing, Automated Testing, XCTest, Git, GitHub
Project Management: Agile, Scrum, Team Mentor, Kanban, Daily Scrums, Sprints, Sprint backlog, Sprint Retrospective, Sprint Planning, Sprint Review, daily Burndown Chart
Software: Microsoft Office, Microsoft Visio, Adobe Dreamweaver, Adobe Fireworks Origin Pro 8, LabView, SQL
Leadership: Communication, prioritization, strategy, analysis, motivation, documentation, planning, presentation.
Senior iOS Developer
- Worked with MVVM architecture and used various design patterns such as Factory, Singletons, Adapter, and more.
- Created Notifications module that resurfaces messages through APNS 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 libraries like Moya, AlamoFire and the search bar by looking both into 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 Contact, 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 Codable protocols and JSON Decoders.
- 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.
Senior Mobile iOS Application Developer
- Worked in Xcode with Swift.
- Worked with MVVM architectural pattern with Delegation, Observer, and Singleton design patterns using Notifications and KVC.
- Worked with Core Data to prepopulate UI with persisted data received in prior web service calls.
- Utilized multithreading APIs, NSOperations, for downloading images on background thread as to not lock up the UI and ongoing animations.
- Regularly performed code reviews to ensure efficiency, readability, and maintainability.
- Participated in review meetings and took the initiative to meet the QA testing targets.
- Achieved source version control using Git and GitHub.
- Invoked RESTful webservices using Alamofire networking framework and parsed JSON responses using Codable protocol.
- Analyzed existing code for improvements and optimizations.
- Analyzed the production defects and fixed them in time for each release
- Refactored code to improve size and scalability of the iOS app.
iOS Software Engineer
- Engineered new views for profile summary and top fan view within Storyboards.
- Completed Redesign of UIs in Storyboards using size classes and AutoLayout constraints.
- Worked closely with AVFoundation and AVKit to display video content.
- Invoked RESTful web services using AFNetworking library.
- Parsed and developed JSON responses received from networking using JSONSerialization into custom NSObjects subclasses.
- Engineered networking solutions on background threads with REST APIs and URLSessions.
- Engineering and development on project were managed using Agile/SCRUM methodology.
- Code stored in Git repository; Version control functionality done using SourceTree.
- Debugged extensively.
IOS APPLICATION DEVELOPER
- Used EventKit to manage calendars for various instructors and locations and in corporate scheduling.
- Added reminders with EventKit to remind users of upcoming events.
- Used UIKit, MapKit and CoreLocation to enhance user to find nearest studio.
- Maintained the business standards and requirements and ensured proper adherence by iOS development team.
- Used Cocoa framework with CocoaPods as dependency manager for management and installation of external libraries.
- Used Cocoa Touch for abstraction layer providing responsiveness to user actions.
- Analyzed existing code for improvements and optimizations.
- Worked with Core Data to prepopulate UITextfields with persisted data received in prior web service calls.
- Maintained high test coverage and ensured that all issues found by QA were fully addressed and resolved, as well as user experience improvements suggested by QA.
- Worked with MapKit, CoreLocation and MKAnnotation to make UI tweaks on the map view and enhance functionality to get the latitude and longitude co-ordinates.
- Designed UI using Storyboard and Auto Layout constraints.
- Designed signup page and done validations for all fields
- Connection to web service was achieved using GCD. Delegate methods implemented to handle reception of response, data, error, and load finish
- Involved in iOS performance testing along with Functional and Regression tests.
- Followed the Agile methodology for implementing the project.
- Took care of Code Review, Code Fixes and Bug Fixes.