Post Job Free
Sign in

IOS DEVELOPER

Location:
Washington, VA, 22747
Posted:
May 15, 2024

Contact this candidate

Resume:

Roderick Presswood

Senior iOS Developer

ad4br8@r.postjobfree.com

(562) 232 - 4254

With over 12 years immersed in the full software development life cycle, I bring comprehensive expertise spanning Analysis, Design, Development, Testing, and Implementation phases. My specialization lies in iOS mobile app development, adeptly employing MVVM architecture, leveraging design patterns, and skillfully integrating native and third-party frameworks. I boast a successful track record, having published 11 apps on the Apple Store.

Professional Summary

•Adept at integrating various native and 3rd party frameworks such as CoreLocation, MapKit, XCTest, CoreGraphics, Core Data, SQLite, Google APIs, Social Framework, CoreAnimation, AVFoundation, UIKit, EventKit, CloudKit, Core Bluetooth, etc.

•Adept in the use of Xcode IDE, multiple versions, iOS SDK, HIG and best practices.

•Experience in quality, reusable code in Swift and Objective-C, and in transitioning codebase from Swift to Objective-C using bridging headers.

•Proactively performs extensive system testing to ensure that the systems work efficiently and are developed following the applicable development methodology.

•Unit tests and Scenario tests to ensure accuracy. Tracks record of identifying largest risk areas and driving resolution of these issues.

•Used to working in an Agile Test-Driven Development (TDD) environment and following strong quality processes.

•Problem solving skills to develop quick yet sound solutions to resolve complex issues.

•Knowledgeable with reactive programming using native Combine for data communication and 3rd party with RxSwift

•Experience consuming RESTful API endpoints and processing the returned data for use in the app; Ability to manage third party libraries through Cocoa Pods, Carthage, and Swift Package Manager

•Object Oriented Programming expertise; firmly grasps the key principles of polymorphism, inheritance, data abstraction, and data encapsulation.

•Experienced in implementing multiple OOP architectures including: MVC, MVVM, KVO, Singleton, Delegate, Notifications, Factory, Decorator, etc.

•Skilled in XML and JSON Parsing using NSXMLParser and NSJSONSerialization. Consumption of webservices done with native NSURLConnection and NSURLSession; also used third parties such as ASIHTTP, RestKit, AFNetworking, AlamoFire imported via CocoaPods..

•Proficient in all aspects of iPhone/iPad application development including designing for all types of screen sizes and orientations. Comfortable with Auto Layout, Size Classes, and even programmatic implementations that listen for UIDeviceOrientationDidChange notifications.

•Worked with both aspects of application flow using Storyboarding and NIB files.

•Knowledgeable of storing data persistently on a device via various routes: CoreData, SQLite, Documents Directory, NSCoding protocol (archiving and unarchiving), NSUserDefaults, Keychain; also worked with cloud-based storage like Dropbox, GoogleDrive, Box, etc.

•Experience with SVN and Git for version control with both command line / terminal, and with GUIs like Source Tree and Tower.

•Ensures app stability and quality with strong testing and debugging skills.

Technical Skills

Programming Languages

Swift 1 – Swift 5.0, Objective-C

Databases

Core Data, SQLite, Realm for persistence, and NoSQL for storage

Frameworks

RxSwift, RxCocoa, Various Rx frameworks, CocoaTouch, CocoaPods, CoreLocation, CoreBluetooth, Foundation, UIKit, CoreGraphics, MapKit, XCTest, AVKit, AVFoundation, Social Networking APIs, CloudKit, EventKit, QuartzCore, UIDynamics, CommonCrypto

Web Services

AFNetworking, AlamoFire, Reachability, RESTful, SOAP, JSON, XML

IDEs

XCode, Eclipse, NetBeans

Libraries

AFNetworking, Reachability, Alamofire, NSJSONSerialization, NSXMLSerialization, Apple Push Notification (APNS), NSUserDefaults, NSNotificationCenter, NSOperationQueue, MessageUI, AddressBook

Dependency Injection

Setter, Interface, Constructor, Swinject

Threading

GCD, NSOperations

Versioning Tools

GIT, SourceTree, Tower, GitHub, BitBucket

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, Coordinators, 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, Zeplin, UIKit

Tools

NSPredicate, NSOperations, NSJSONSerialization, NSXMLParser, GCD, Instruments – Allocations, Leaks, Zombies, LLDB, CocoaPods, Carthage, Firebase, Crashlytics, TestFlight, CI/CD, Jenkins, Zoom, Slack, Figma, Combine,

Professional Experience

Feb 2023 – Present

Mercedes-Benz, Long Beach, CA Lead iOS Developer

App Name: Mercedes me

Link: https://apps.apple.com/in/app/mercedes-me/id1487652920

App Description: The Mercedes me Apps aim to enhance convenience, offering support to simplify and adapt your daily life on the go.

Synopsis: I joined the project to introduce fresh features to the application. My contributions included developing a beta program feature, enabling users to access upcoming functionalities before the app's official release. Additionally, I crafted the MyAI feature, employing AI to understand driver behavior and personalize settings within the app based on individual driving habits.

•Utilized PDF Kit for displaying vehicle manuals and contributed to various app features like Guide Idea Board and vehicle Details Screens.

•Employed Core Data, Keychain Services, and User Defaults for data persistence, employing both XIBS and programmatic UI for flexible development.

•Quickly resolved defects through debugging techniques and implemented Swift Linter for code consistency. Managed testing processes with Hockey App, TestFlight, and XC Test Unit Test for QA.

•Employed SwiftUI for efficient navigation features and installed Jenkins plugins for Continuous Integration testing.

•Led the development of pivotal app features, advancing innovation and user experience. Resolved intricate bugs, fortifying stability, and performance.

•Collaborated seamlessly with diverse teams for feature integration, ensuring a unified app experience.

•Partnered closely with design to materialize concepts, harmonizing functionality, and aesthetics. Effectively communicated progress to management and collaborated across QA, design, and project management for streamlined feature integration.

•Managed Jenkins pipelines for efficient iOS app builds and orchestrated rigorous QA testing. Spearheaded branching strategies for organized version control and cultivated a collaborative work environment.

•Stayed updated on industry trends, mentored junior developers, and ensured user-centric design.

•Applied innovative problem-solving for feature optimization, promoting continuous integration, and streamlining workflows.

•Integrated user feedback, championed agile methodologies, and conducted comprehensive code reviews.

•Contributed to incident response, evaluated, and introduced new technologies, and proactively addressed issues.

•Recognized for substantial contributions, fostering a culture of acknowledgment within the team.

•Integrated Google Analytics SDK for tracking user data and movements, working closely with QA for issue resolution and UI/UX enhancements.

•Managed Objective-C and Swift hybrid code bases, utilizing SwiftUI strategically in the Strategy design pattern.

•Utilized Jira for issue tracking, Stash, and Confluence for team collaboration.

•Employed Object Mapper for JSON response mapping, collaborated closely with QA and implemented customer feedback.

•Handled provisioning, compiling, and managing apps for Ad hoc and app store distribution using Test Flight and Hockey App.

May 2022 – Jan 2023

Quantum Health, Columbus, Ohio Sr. IOS Developer

App Name: MyQHealth

Link: https://apps.apple.com/us/app/myqhealth-care-coordinators/id895270785

App Description: This app was essentially a health app where users could schedule appointments for multiple areas of health.

Synopsis: I was brought onto this project to usher in the redesign of the app already named MyQHealth. We were tasked to build this app using the new SwiftUI language. We worked closely with the design and business team with developing stories and giving pointers with the design of the app.

•Responsible for setting up push notifications for the application.

•Writing confluence page for development styling and setting up video recording functionality as well as playback

•Working with the designer to get accurate screens for the app

•Developed the app using Swift UI and used swift lint in the application.

•Refactored several front-end UI screens from UIKit to SwiftUI over a roadmap, integrating both with ViewRepresentable protocols and UIHostingViewControllers

•Utilized Combine for the data binding mechanism in the app’s MVVM architecture for data communication with for a publisher / subscriber reactive observer pattern

•Worked in 2-week sprints scrum architecture

•Worked on extending the coordination with new view controllers

•Worked with project manager on making changes in firebase

•Worked with the manager in setting up certifications, keys, bundle id’s, app store information, build information for app

•Our team consisted of 4 iOS developers with 4 Android Devs along with an architect that assisted in maintaining parity between platforms

•Worked with SwiftUI and Combine

•Communicated with team on features to implement

•Worked with encrypting and decrypting files

•Setup TestFlight builds for internal and external testing

•Debugged and solved existing bugs within the MyQHealth app

•Logged existing bugs throughout the app

•Setup firebase analytics for project

•Worked with android team with setting up view models using same components throughout the app

•Programmatically setup screens within app

•Worked with managers and business team to discover how app will function

January 2022 – May 2022

Be Grizzlee, Los Angeles, CA iOS Mobile Application Developer

App Name: Grizzlee

Link: Grizzlee on the App Store (apple.com)

App Description: Be Grizzlee Impact App is used to scan muscles and conduct muscle massage sessions based on the muscles being scanned using external devices connected to the app via Bluetooth. App not yet published on Apple Store.

•Assisted Tech Lead in setting direction for development of application, and assisted Tech Lead and Project Manager in development lifecycle planning.

•Set up views and functionality of muscle massage app.

•Created the alpha version of app.

•Set up Keychain Manger for saving tokens and passwords to device.

•Used Combine framework as source of reactive programming for the MVVM architectural structure.

•Set up Coordinator to aid in navigation flow of app.

•Set up views containing multiple child view controllers to display large amounts of information on scroll view.

•Worked with small team to develop large features of application and planned and developed large features of Impact app on solo team.

•Set up delegates around app for 1 to 1 means of communication between views and ViewModels.

•Performed regularly scheduled tests of app to ensure all issues and bugs were found and fixed throughout development cycle.

•Wrote unit tests with mock data to ensure feature functionality worked successfully and that devs stayed on top of updates made to views and view models pertaining to features.

•Used SceneKit to develop 3D model and functionality concerning 3D model.

•Set up URL Session to handle any endpoint to receive data for app using Combine.

•Set up ViewModels to pass data to views from subscriber.

•Attended daily Scrums and reported on progress and communicated issues and solutions found when working on a task,

•Created generic views for use of creating similar views throughout application.

•Used Core Bluetooth to set up lightweight connection between external devices and app.

•Refactored application to mitigate unnecessary lines of code and reduce project file size.

•Used SwiftLint to have unified structure of files throughout the application.

•Used Memory management tools provided by Xcode to detect memory leaks.

•Utilized Xcode’s Network Link Conditioner to simulate app functionality in different conditions.

•Used Swagger to set up app connection to backend server.

•Set up TestFlight tests using Xcode for internal testing.

•Communicated with design team via Figma for design updates across devices.

•Worked with design patterns Delegates, Observer, and Factory.

•Used AVFoundation to handle audio playback and video streaming.

•Designed and created UI and Application flow using UIKit and Core Graphics.

•Implemented DispatchQueues to perform tasks asynchronously and concurrently.

May 2021 – January 2022

EBay, San Jose, CA Sr. IOS Mobile Developer

App Name: Ebay - Shop Christmas Deals

Link: https://apps.apple.com/xk/app/ebay-buy-sell-and-save/id282614216

App Description: Buy, sell, and discover amazing deals on the brands you love — wherever you are. Whether you’re looking for fashion, tech, toys, or home, simply download the eBay app to get started.

I was assigned to work on a dev team with responsibility for creating and maintaining automation tests, testing the application, and creating tickets regarding issues on the application.

•Used Charles Proxy to test new features on the eBay app by creating breakpoints and editing the requests/responses for API service calls.

•Tested and created test cases for eBay’s new features.

•Handled implementation of Device Configuration Service.

•Conducted test case review meetings with development teams regarding new features.

•Created test cases for automation via TestRail.

•Worked with teammates in discovering new issues in bug bashes for new features.

•Updated and maintained automation test cases for multiple sections in app.

•Added new automation test cases for app via Xcode eBay project.

•Monitored Automation stat board via Pulse to ensure that all tests were passing.

•Worked with Lumberjack for new features and tracked events within eBay application.

•Helped manage release of app into TestFlight for beta testing.

•Worked with developers to make sure most events of a feature in the app were covered.

•Updated progress daily with team in Scrum and Kanban meetings.

•Ran CI tests for automation in Jenkins.

•Worked with teams opening up new features to members around the world.

•Created Jira tickets for issues for developers to work on and fix.

•Triggered PR builds in GitHub enterprise to ensure new test cases passed.

•Organized and set up models for use within eBay project for automation tasks.

•Added deep linking models and tests for use within automation tests.

•Applied Google Docs for feature planning.

•Created new and edited Confluence pages to aid new and existing teammates for new features and for the project in general.

•Utilized Figma design application to create test cases for new features before features were actually built.

•Utilized URLSession to retrieve RESTful API calls and decode data via the Codable protocols.

•Used Slack for communication amongst the team and project stakeholders.

•Utilized Microsoft Teams for team communications.

•Utilized Accessibility Inspector for debugging accessibility compliance.

February 2021 – May 2021

HealthFirst, New York, NY Sr. iOS Developer

App Name: Healthfirst NY

Link: https://apps.apple.com/us/app/healthfirst-ny/id1464792066

App Description: The Healthfirst NY Mobile App keeps access to healthcare close at hand. Use it to find care that’s in your network, locate essential services nearby, view your digital member ID, and more.

•Worked with new Viper architecture.

•Collaborated with product, design, and engineering teams to build fully functional iOS applications and publish them to the App Store.

•Derived understanding of products from both a technical and business perspective.

•Translated business requirements into elegant technical solutions.

•Worked with other developers and engineers to integrate backend system APIs.

•Supported the entire application lifecycle (design, develop, test, deploy and maintain).

•Provided guidance and recommendations for best practices with mobile development.

•Performed code reviews, assisted with builds and deployment, and helped with overall operations.

•Conducted meetings with teammates on feature development.

•Maintained unit test cases when adding new code to project.

•Used Postman for development purposes.

•Worked closely with design time to ensure app design quality was great

•Weekly meeting with business team on new features and updates

•Worked with teammates on large feature splitting up tasks to ensure completion

•Updated team with task progression via scrum meetings every morning

•Attended team workshop meetings in order to update iOS knowledge

•Worked with memory leak tools to ensure no significant leaks were in app

•Wrote code to link firebase tasks into application

•Helped design team make changes in design that made users easily navigate the site.

•Synced server with application to port in localizations needed for multiple languages through the app.

•Helped onboard new members and added new Wiki page for onboarding new members and code of ethics.

•Identified issues to the team to ensure fixes were made before release.

•Conducted 1 to 1 meetings with other members regarding new and existing features.

•Updated Wiki for developers to use as reference knowledge base.

•Used XCode IDE to develop the app in Swift 5.

•Wrote unit and UI tests with XCTest and XCUITest respectively to give optimal code coverage with a TDD approach.

•Implemented Firebase to gather usage data of the application.

•Tracked issues and user stories using JIRA.

•Converted data types to read, write, and notify Bluetooth device characteristics.

•Performed technical work in alignment with an Agile/Scrum/Kanban project delivery methodology.

•Created RESTful APIs using URLSession and Combine framework.

•Used CocoaPods to load all third-party frameworks and manage dependencies.

•Migrated from RxSwift to Combine framework for network API Calls.

•Used Figma for graphics editing.

•Created CoreData entities to persist information in case of offline usage.

•Used Charles and Postman to debug network calls.

•Used Microsoft Teams for team collaboration.

May 2020 – February 2021

InfoBahn Consulting

End Client: Intuit Sr. IOS Developer

Palo Alto, CA

https://apps.apple.com/us/app/mint-personal-finance-money/id300238550

This application is a financing app that helps users properly budget and make plans towards financial freedom. It also allows users to easily apply for loans, credit cards, etc.

I worked with the Mint Premium team to add premium feature to the main IOS application. Team consisted of 3 other devs for the premium application working on 2-week sprints with weekly retrospectives. Collaboration with other teams to implement new features, including working with the business team to create tasks and set deadlines for the project. Highlights of my work:

•Worked with team to update the app’s UI.

•Updated back end with data needed for pages in application.

•Worked on application Pods to make development process easier for other developers.

•Communicated with the design team via Figma to solve design issues.

•Configured reusable views to use through app in different locations.

•Applied Realm to save user device and app information.

•Applied a MVVM Architecture to develop pages for application along with RXSwift for observing changes for pages.

•Used Crashlytics to observe crash logs and get user feedback information.

•Programmed UI in Swift.

•Managed feedback logs from users for multiple features.

•Worked closely with other devs to complete feature implementation to beat time constraints.

•Worked with XCode 12 during the duration of the project.

•Joined sessions to explain new implementations to managers and teams and attended discovery meetings and business update meetings.

•Used TestfFight to create builds for internal and external testing.

•Created feedback pages for customers/users to send suggestions or report bugs.

•Closely followed Apple’s UI guidelines throughout the project.

•Helped build internal CocoaPod for working throughout the project.

•Parsed JSON responses into useable objects using Codable Features.

•Used Git and XCode for version control with Jenkins using TDD methodology.

•Used GCD to build a responsive UI and implemented background threads.

November 2019 – May 2020

Trustica, AppGuard Senior iOS Developer

New York City, New York

https://apps.apple.com/us/app/trustica-mobile/id1494633365

Brought in to assist in rebuilding an end-to-end encrypted messaging application from the ground up with purely native iOS elements, add in missing components, set up backend services through Firebase, as well as debug various elements of the application and optimizing UI. Worked closely with VP in delegating roles to different developers.

•Implemented Push notifications services to the application

•Creating in depth documentation on Confluence for the application and steps for publishing onto the app store

•Set up video recording functionality and playback features

•Worked in tandem with UI/UX designers for the UI development

•Wrote the entire application Swift, utilizing Swift Lint for best coding syntax

•Assisted in creating VOIP support

•Worked in an Agile Environment, with two-week sprints

•Expanded on the UI, giving further segregation to existing functionality for a better user experience.

•Worked on new features and new screens

•Utilized a coordinator pattern for UI navigation

•Utilized Realm in order to store user device information

•Worked with a team of 3 iOS and 3 Android developers closely for navigation through new features, delegation of roles, and coordinate responsibilities

•Set up Firebase cloud messaging and directly navigated with Android team to have cross platform communication

•Directly with the project manager in setting up certifications, bundle identifiers, builds, and changes to Firebase

•Developed UI both programmatically and through storyboards

•Utilized TestFlight to directly create builds for both internal and external testing

•Handled release builds and the end-to-end release process to the App store.

•Used Encryption services for encrypting and decrypting files when sending and receiving to Firebase.

•Implemented Core Bluetooth Framework and configured communications between Bluetooth Low Energy applications and multiple hardware gadgets.

February 2019 – November 2019

E*Trade Senior iOS Developer

Menlo Park, California

https://apps.apple.com/us/app/e-trade-invest-trade-save/id313259740

Worked with other senior developers to finish up remaining legs of the redesign of application. Created major pages and corrected critical issues with the existing and redesign application. Also worked closely with Lead developer on successfully creating test flight builds. Spent most of my time heads down fixing critical issues within the application while conforming to the architecture of the application.

•Xcode used as IDE by iOS development team with coding in Swift in MVVM architectural pattern and using SwiftLint and UIKit.

•Implemented CocoaPods for various third-party frameworks.

•Helped fix logic to help make the process of service calls more accessible.

•Helped create custom table views and collection views.

•Worked with Jr developers helping them understand git, setting up their environments and paired programming to finish critical tasks.

•Worked with QA team to spot bugs and other major flaws within the application.

•Used Appium software for accessibility debugging alongside the automation team.

•Helped create and modify custom label classes.

•Used Hockey App to test builds alongside the way team.

•Built major pages for the redesign application.

•Operated though Jira tasking system and BitBucket for branching with Jenkins for managing individual builds.

•Worked on legacy code in Objective-C.

•Used InVision as a resource to replicate the original design of the redesigned application.

•Signed-up for a company Apple developer account in order to contribute to the production of the redesign.

•Regularly updated CocoaPods keeping critical services up to date.

•Application heavily relied on Navigation bar and Tab Bar controller to make navigation easier and quickly adaptable.

•Worked with Light Steamer service to give app Realtime updates.

•Implemented accessibility options to make app accessible for a wider range of users.

•Worked on a team of 19 iOS/backend developers.

•Using Index Quotes, developed the “Index Quotes Page”.

•Worked closely with the design team to make the application match design vision and specs.

•Spotted and reported critical memory leaks to help application performance.

•Documented complex methods within the code base to provide clarity for future developers.

•Ensured that additions to the application did not create issues within the application.

•Ensured that all deadlines for critical issues were met.

•Localized Strings for application language changes.

•Worked with Agile Methodology, daily scrum meetings and biweekly sprint reviews.

•Designed UI using Storyboard and Auto Layout constraints.

•Involved in iOS performance testing along with functional and regression tests.

•Followed the Apple UI guidelines throughout the project.

October 2017 – February 2019

Hotels.com Senior iOS Developer

Dallas, Texas

https://itunes.apple.com/us/app/hotels-com-hotel-booking/id284971959

•Xcode used as IDE by iOS development team with coding in Swift in MVVM architectural pattern.

•Implemented CocoaPods for various third-party frameworks.

•Designed icons and images that are required for App using Sketch

•Implemented User notifications when user has completed the trip to show trip details.

•Designed and customized mockups before starting the actual development.

•Integrated iPhone application with applications across all aspects of the client: user input, protocols, performance, memory management, debugging.

•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

•Implemented dropdown feature where user can download the database

•Designed signup page and done validations for all fields

•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.

•Worked with UITabBarController to access and display show information.

•Implemented Navigations between views for the view controllers using Segues.

•Followed the Apple UI guidelines throughout the project.

•Created blocks to respond to service requests in order to maintain app architecture.

•Parsed JSON responses into useable Objects using Codable features

•Utilized CoreData for persistence of data and used versioning for data changes.

June 2016 – October 2017

Publix Senior iOS Developer

Lakeland, Florida

https://itunes.apple.com/us/app/publix-delivery/id1294562458

•Created this new iOS mobile app in Swift using Xcode IDE, MVVM architecture and various design patterns.

•Followed Agile Scrum practices and participated in daily stand-ups and bi-weekly Scrums.

•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.

•Developed layer to consume RESTFul web service using Alamofire and parsed JSON responses using JSONSerialization.

•Connection to web service was achieved using GCD. Delegate methods implemented to handle reception of response, data, error, and load finish.

•Added a 'Nearby' function to the app using Mapkit, which helped locate nearby locations.

•Provided creative solutions to problems through understanding of customer requirements and technologies.

•Worked both independently and with the iOS development team and cross-functional teams.

•Worked with MVVM architectural pattern and Delegation, Notifications, KVC, and Singleton design patterns.

•Added animation between UIViews for smooth transitioning and better user experience using Segues.

•Added Localization to the app to enable content tailored to a user’s language settings.

•Used SourceTree for Git repository and version control with Jenkins CI using Test-Driven Development methodology.

•Assisted Project Manager with release build schedules

January 2014 – June 2016

Salesforce iOS Mobile App Developer

San Francisco, California

https://itunes.apple.com/us/app/salesforce/id404249815

•Worked in Xcode IDE developing new features in Swift and transitioning some Objective-C code to Swift using bridging headers.

•Developed new components like infinite scrolling section for sliding table view.

•Solved major defects in navigation controller behavior for the application

•Developed Facebook integration for the application.

•Developed complete client iPad login and signup module that includes UI design and backend communication with Web Services.

•Responsible for code optimization and testing of the website across different browsers.

•Implemented interaction between frontend and backend using the JSON object.

•Worked in JIRA for tracking tasks, issues and backlog, and for prioritizing tasks according to Product Manager.

•Used SourceTree for Git code



Contact this candidate