Professional Summary
Experience in both Swift and Objective-C coding using Xcode IDE to develop iOS mobile apps.
Experience developing iOS mobile apps from scratch as well as major revisions, updates and overhauls of existing iOS mobile apps.
Adept at integrating various native and 3rd party frameworks such as CoreLocation, MapKit, XCTest, CoreGraphics, CoreData, SQLite, Google APIs, Social Framework, CoreAnimation, AVFoundation, UIKit, EventKit, CloudKit, Core Bluetooth, etc.
Detail oriented developer with experience in the entire software development life-cycle. Including requirements gathering, design, development, testing, debugging and maintenance.
Seasoned in the use of Interface Builder to build UI/UX via Storyboards and XIBs, and using AutoLayout in conjunction with size classes to optimize apps for the iPhone and iPad.
Adept at developing various unit tests using the XCTest framework to ensure clean and stable code.
Experience with Swift, Objective-C, Xcode, iOS versions, debugging tools, memory management, multi-threading techniques, UI design
Familiar with the use and integration of CoreData, SQLite, UserDefaults, Settings Bundle, Plists, Documents Directory and Codable & Arching/Unarchiving to store application data persistently.
Integrated RESTful APIs to provide external services to the application.
Experience with MVC.MVP, and MVVM mobile app architecture and object oriented (OO) principles in iOS.
Familiar with OOP design patterns such as Singletons, KVC, KVO, Notifications, Protocols, Delegation, etc.
Experienced with various methodologies such as Test-Driven Development (TDD), Sprints, and Agile / SCRUM methodologies
Strong written and verbal communication skills.
Technical Skills
Programming Languages
Swift – Swift 5.0, Objective-C, HTML/CSS, JavaScript
UI/UX
Sketch, AdobeXD, InVision Studio
Databases
Core Data, SQLite for persistence, and NoSQL for storage, NoSQL
Frameworks
RxSwift, RxCocoa, Various Rx frameworks, CocoaTouch, CocoaPods, CoreLocation, CoreBluetooth, Foundation, UIKit, CoreGraphics, MapKit, XCTest, Social Networking APIs, CloudKit, EventKit, QuartzCore, UIDynamics
Web Services
RESTful, SOAP, JSON, XML
IDEs
Xcode, NetBeans
Libraries
AFNetworking, Reachability, Alamofire, JSONSerialization, NSXMLSerialization, Apple Push Notification (APNS), UserDefaults, NotificationCenter, OperationQueue, MessageUI, AddressBook
Dependency Injection
Setter, Interface, Constructor, Swinject
Threading
GCD, NSOperations
Versioning Tools
GIT, SourceTree, Tower, GitHub
Methodologies
Agile, MVC, TDD, SCRUM, Categories, Blocks, Continuous Integration, Delegation, Singleton, KVC, Notification, Push Notification, Localization
Project Tools
JIRA, Confluence, Kanban, Basecamp, Slack
Architecture
MVC, MVP, MVVM and Complex Patterns
Design Patterns
Builder, Abstract Factory, Visitor, proxy, Interpreter, Singleton, Decorator, Observer, and more.
UI/UX
Storyboards, AutoLayout, Interface Builder, Programmatic UI Implementation, Sketch
Tools
NSPredicate, Operations, JSONSerialization, NSXMLParser, GCD, Instruments – Allocations, Leaks, Zombies, LLDB, CocoaPods, Carthage, Firebase
Professional Experience
SENIOR IOS MOBILE APP DEVELOPER December 2019 - Present
Charles Schwab San Francisco, CA
https://apps.apple.com/us/app/schwab-mobile/id407358186?mt=8
Modified existing code to handle Apple’s update to iOS 13, Swift 5.1, and Xcode 11.
Completed quantitative research for new UI designs.
Created user personas to personify users’ needs.
Designed both low fidelity and high-fidelity wireframes in Sketch.
Implemented accessibility code for users with audio and visual impairments which helped Charles Schwab win a JD Power and Associates Award.
Implemented API calls to the MoM server to retrieve users personal and account information.
Used Crashlytics framework within the app to monitor the crashes during development.
Used Sourcetree and Bitbucket to pull code and make changes and push the code back.
Worked with MVVM, Delegation, Notifications, KVC, and Singleton design patterns.
Developed navigation between views using UISplitViewController.
Created custom framework to build the Charts within the app.
Kept project manager apprised of status of all tasks and maintained communications with Product Manager.
Installed Jenkins plugins to work along with Xcode to run the SDK for Continuous Integration to test the test cases written using XCTests.
Used Jira for tracking issues and picking tasks from the backlog to work on.
SENIOR IOS MOBILE APP DEVELOPER July 2018 – December 2019
The Home Depot Bentonville, AR
https://itunes.apple.com/us/app/the-home-depot/id342527639
Refactored the Code of three different concepts into a single codebase and Wrote clear, modular, and effective code using a MVVM architecture pattern.
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.
Provided technical assistance in identifying, evaluating and developing agile methodologies and procedures that are efficient, effective and meet good business practice.
Used Cocoa Pods library and UIKit Framework, Foundation Framework and CoreGraphics Frameworks.
Provided technical supervision and assistance to the team and drove the project deliverables.
Participated in Sprint Review meeting where we discussed the progress of the project and take the necessary steps for the project to be completed successfully.
Used Core Data to perform the persistence of data and used versioning for Core Data changes.
Implemented consumption of RESTful Web Services using AlamoFire.
Managed the work log and following the schedule to ensure completion of projects before deadline.
Managed App bandwidth and memory usage while optimizing code to reduce total data costs.
Used GitHub to pull code and make changes and push the code back.
Libraries used included Foundation Framework, MapKit, JSON parsing, and UIKit Framework.
Core Data was used for data persistence and to Key Chain for login.
Kept project manager apprised of status of all tasks and maintained communications with Product Manager.
Integrated the barcode scanning functionality in the app.
Worked with MVVM, Delegation, Notifications, KVC, and Singleton design patterns.
working of apps.
Used Crashlytics framework within the app to monitor the crashes during development.
IOS MOBILE APP DEVELOPER July 2017 - July 2018
HBO New York, NY
https://apps.apple.com/us/app/hbo-go-stream-with-tv-package/id429775439
Prompt in handling Custom Menus, Dialogs and creating Image Views.
Project managed using Agile/SCRUM methodology; Code delivered in 4 week sprints.
Performed requirement analysis, code optimization, bug fixes, functionality evaluation and application.
Participated in Agile Sprint planning meetings with the iOS development team.
Installed Jenkins plugins to work along with X code to run the SDK for Continuous Integration to test the test cases written using XCTests.
Integrated Crashlytics with- in the app as a crash reporting solution.
Integrated Facebook login in the sign up and sign in process.
Used GIT for maintaining the versions of the source code
Used RestKit library to make connections to server, and handle authentication challenges.
Worked with GDB and Xcode for debugging
Designed signup page and done validations for all fields
Developed critical tools for this project like customized navigation bar, page control and scroll view.
Performed thorough analysis and debugging in X-Code.
Designed and defined the Storyboards for app content, flow, view control.
Developed the App using Cocoa Touch frameworks on UIKit.
Added animation between UI Views for smooth transition and better user experience.
Improved search results and searching capabilities of locators and other such information.
Updated online user ID and password fields to allow special characters to be used.
Used several methods for testing and tracking of applications like kiwi.
IOS MOBILE APP DEVELOPER July 2016 - July 2017
Credit Sesame Mountain View, CA
https://apps.apple.com/us/app/credit-sesame/id476718980
Redesigned a completely new layout using UICollectionview and AutoLayouts for iOS.
Project development team fluctuated between of 3-5 other iOS developer, and 2 back-end developers.
Profiled the application extensively using Instruments to improve performance throughout multiple sprints profiling.
Worked with Swift code and AlamoFire for RESTful Web Consumption.
Participated in Daily Scrums to discuss the progress in the sprints.
Performed external testing using TestFlight extensively.
Integrated the Google Analytics SDK to the iOS Mobile Apps for tracking in app data and user movement.
Integrated various RESTful web services calls to application using asynchronous NSURL calls.
Interacted with SCRUM team developers, programmers, tester, product owners and stake holders to deliver right value of the project at the end of each sprint.
Maintained source code version control in both local and network repositories using a private Git server with Jenkins CI.
Modified and refactor existing code.
Modified the shake gesture using UIPickerView and provided lock feature.
Worked on implementing several design patterns like Singleton, architecture on MVVM pattern with Data model classes and several Categories were made to the existing classes.
Integrated a web-based content made with HTML on a Native application using UI Web View.
Implemented UIScrollView to show the information about the usage of application.
Reworked the user settings page, using AutoLayout and NSUserDefaults
Updated and created Core Data handlers to properly filter products when searching
Evaluated technologies for possible inclusion in the app, and made decisions on which technologies, frameworks and design patterns to use.
Supported QA with bug fixes, test case creation and triage meetings.
Fixed bugs using GDB and LLDB statements.
Developed navigation between views was mixture of using UINavigationController, UIGestureRecognizer, and UIPopoverController
Developed new components like infinite scrolling section for sliding table view
Technical integration is achieved for site implementations.
IOS MOBILE APP DEVELOPER July 2014 - July 2016
US Auto Parts Network Carson, CA
https://itunes.apple.com/us/app/auto-parts-warehouse/id513189838
Resolved numerous defects quickly by debugging the code using breakpoints, logs and Xcode instruments
Worked with Hockey App and TestFlight as well as XCTest Unit Test in creating and running tests for QA.
Worked with QA testers to ensure resolution of all issues and UI/UX features requested by the QA testing team.
Managed data and memory management from streamlining code and using various debugging tests.
Integrated the Google Analytics SDK to the iOS Mobile Apps for tracking in app data and user movement.
Installed Jenkins plugins to work along with X code to run the SDK for Continuous Integration to test the test cases written using XCTests.
Used Jira for tracking issues and picking tasks from the backlog to work on.
Helped write user stories and epics in Jia.
Used Stash and Confluence for team tools.
Interacted with QA on deliverables on every iteration and customer feedback implementation.
Worked with Obj-c and Swift hybrid code bases; practical experience working with bridging header files and minor issues with a dual language code base.
Used Cocoa Touch Frameworks like Core Graphics, UIKit, Core Audio, SystemConfiguration, Core Location, Core Data,, Mapkit, Social, Security, OpenGL ES Animation and MessageUI.
Provisioned, compiled, and managed apps for Adhoc and app store distribution; usage of Test Flight and Hockey App.
Achieved the same functionality provided by Codable/Decodable by using ObjectMapper for mapping JSON responses
JUNIOR MOBILE APP DEVELOPER July 2012 - July 2014
Overstock.com Salt Lake City, UT
https://apps.apple.com/us/app/overstock-com-mobile-shopping/id339883869
Provisioned, compiled, and managed app and implemented Test Flight and Hockey App for quality testing.
Resolved numerous bugs and crash scenarios using NSLogs, Breakpoints, Instruments and LLDB statements.
Practiced relevant Agile Scrum development methodologies and worked daily with Git and Jenkins Continuous Integration server with Test Driven Development (TDD).
The iOS development team worked in 2-week sprints and used Atlassian software for project: JIRA, Stash and Confluence.
Native Development of Universal app to support both iPhone and iPad using Swift and Objective-C
Participated in peer code reviews.
Performed database operations like Insert, fetch, update and delete data.
Provided system support after hours as necessary.
Worked to develop the iOS mobile app in Xcode with coding in Objective-C and Swift.
Used Core Data and SQLite database to store data on Apple mobile devices.
Refactored RESTful requests from NSURLConnection to NSURLSession to be compatible with iOS standard.
BACKGROUND
EDUCATION/TRAINING
Studied iOS Development
DevMountain
Lehi, Utah
EXPERIENCE
iOS Mobile Apps – 5
iOS App Development – 8 years
Information Technology – 8 years
UI/UX Designer Profile
https://lolearningcode.myportfolio.com/