Post Job Free

Resume

Sign in

Senior Ios App Developer

Location:
United States
Posted:
April 11, 2024

Contact this candidate

Resume:

Alwin Amoros

Phone: 516-***-****

Email: ad4xdz@r.postjobfree.com

iOS Mobile Apps Developer

Experience

Nearly 10 years of iOS Mobile App Development

Education

University of Central Florida FL

Bachelor of Science in Computer Engineering

Frameworks

Dependency Management Tools

SPM, Cocoa Pods, Carthage

Multimedia

AVFoundation

Core Frameworks

Combine, Core Data, Core Location, CoreBluetooth, CoreGraphics

UI Implementation

SwifUI, UIKit, Auto Layout, Adaptive Layout, Storyboards, XIBS, CALayers, MapKit, UIView, Views and View Controllers, UI Dynamic, Animation

Architecture

MVC, MVVM, MVVMC, VIPER, TCA, Clean Architecture

Testing

TDD, BDD, Unit Tests, UI tests, Snapshot testing, CICD, Automation

Technical Skills

Programming Languages

Swift, Objective-C

Development Tools

Xcode, Interface Builder, Jira, Confluence, Slack, BitBucket, Git, GitHub, Jenkins CI, XCTest, Instruments

Methodologies

Agile, Scrum, Test-Driven Development, Pair Programming, Code Reviews, Unit Testing, Scenario Testing, Functional Testing, Automated Testing, Continuous Integration, Object-Oriented Programming, Functional Programming

Data Persistence

Core Data, Keychain, Plist, Realm, Files

Network Communication

RESTful Web Services, AlamoFire, GCD, JSON serialization, XML

Design Patterns

Singleton, Abstract Factory, Builder, Adapter, Decorator, Observer

Summary of Competencies

•Expertise in Swift, Objective-C, in using Cocoa Touch, CocoaPods, iOS core frameworks, and iOS third-party frameworks.

•Expert with SwiftUI and UIkit for UI designing.

•Found of Apple latest tech releases like SwiftData, Continuations, Combine latest Principals and SwiftUI latest changes with every release.

•Demonstrated expertise in iOS architecture and frameworks.

•Ability to diagnose and solve mobile networking performance issues.

•Excellent UI/UX Skills and ability to adapt functions to user preferences.

•Follows best practices with iOS design and ecosystem.

•Experienced with RESTful APIs to connect iOS applications to back-end services

•iOS performance profiling, memory, power, optimization.

•Experienced in the consumption of web services using AlamoFire, AFNetworking, Reachability, REST, JSON, JSON serialization, and threading with Grand Central Dispatch (GCD).

•Use Apple Push Notification (APN), UserDefaults, NotificationCenter, and NSOperationQueue.

•Experience with MVVM architecture object-oriented (OO) principles and functional programming in iOS mobile app development.

•Uses test-driven development (TDD) methods, Unit Testing, XCTest, Automated Testing, and Functional and Scenario Testing with TestFlight.

•Continuous Integration using Jenkins with SVN and Git repository.

•Experience with mobile client applications tied to critical server-side APIs.

•Familiar with design patterns such as Singletons, KVC, KVO, NSNotifications, MVC, MVVM, Protocols & Delegation, etc.

•Familiar with Agile development methodology, Agile Scrum environments, and Scrum roles.

•Constantly learning the latest technological developments.

•Design and development for all mobile devices and screen sizes including iPhone, iPad, and iOS Watch.

•Experience with social media web services, libraries, APIs, and SDKs such as Facebook, YouTube, Instagram, Google+, and Twitter.

•Knowledgeable of best frameworks for implementation.

•Supports and assists team members.

•Experience with adding accessibility to iOS mobile apps for end users.

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

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

•Implemented core data functionalities for online data persistency, including data modeling, fetching, and storing.

•Utizlied multi-threading techniques like GCD, Operation Queues, Async Await, Actor for manage concurrency data access.

Work Experience

July 2023 – Present

JPMORGAN CHASE SENIOR IOS DEVELOPER

New York, NY

App: https://apps.apple.com/us/app/chase-mobile-bank-invest/i HYPERLINK "https://apps.apple.com/us/app/chase-mobile-bank-invest/id298867247"d HYPERLINK "https://apps.apple.com/us/app/chase-mobile-bank-invest/id298867247"298867247

•Undertook a comprehensive initiative to enhance the memo field functionality across the entire app, strategically centralized the logic, alleviating the view model from redundant tasks, and ensured a more streamlined codebase

•Leveraging SplitIO, implemented feature gating and configuration management, optimizing each view's parent configuration through a dedicated manager.

•Took charge of refactoring views that utilized the memo component, segregating Business as Usual (BAU) and the new feature

•Collaborating closely with product owners, gathered insights to architect the code effectively

•Played a pivotal role in creating a robust UITest framework. Collaborating with peers, we developed test cases and utilized an in-house framework hosting UITest cases paired with Gherkin files.

•Initiated Spanish automation testing, documented setup procedures on Confluence, and recommended strategies to optimize hardcoded values for efficient and faster testing.

•Leveraged MVVM and MVC architecture, incorporating UIKit and SwiftUI for programmatic and interface-based view development.

•Applied XCTest and an in-house UITest framework for unit testing and feature testing.

•Implemented Coordinator Pattern, Dependency Injection, Inheritance Class, and Protocol-Oriented Programming.

•Utilized SplitIO for feature gating and configuration management.

•Collaborated within a team structure comprising 4 iOS developers, 1 Junior, 2 Seniors, and 1 Lead.

•Employed Jira for efficient ticket tracking and Jenkins for build management.

•Managed the codebase in Bitbucket, utilizing feature branches, developing branches, and releasing cuts.

•Worked across frameworks to implement Unified Memo, collaborating with iOS and Android teams.

•Assisted in the seamless migration of SplitIO configuration when transitioning from a different source for feature flags.

•Contributed to the creation of Spanish content automation for comprehensive testing coverage.

•Facilitated knowledge sharing by working closely with other teams, ensuring smooth integration of components.

•Consolidated and streamlined memo logic across the Chase app, creating a unified helper class and providing comprehensive documentation.

•Collaborated with Android counterparts to devise configurations for optimal behavior of the Memo feature.

•Actively participated in cross-functional discussions, ensuring a cohesive approach to framework setup for UITesting.

November 2021 – July 2023

ETRADE/MORGAN STANLEY SENIOR IOS APP DEVELOPER

Menlo Park, CA

App: https://apps.appl HYPERLINK "https://apps.apple.com/us/app/e-trade-invest-trade-save/id313259740"e HYPERLINK "https://apps.apple.com/us/app/e-trade-invest-trade-save/id313259740".com/us/app/e-trade-invest-trade-save/id313259740

•Implemented security features to prevent the usage of the application on jailbroken devices and ensure that the app adheres to the latest security guidelines.

•Refactored Watchlist Screen that used objc and UIKit to SwiftUI and async/await concurrency to do network calls.

•Updated CoreData Concurrency from main thread to use private queue context to perform coredata operations on background threads in the ETrade App

•Had done light weight migration for multiple releases in app and tested it thoroughly on multiple os and version in iOS

•All new features were developed using Swift UI using MVVM architecture.

•Used Combine for events data binding.

•Used SwiftUI features like View Modifiers, View Builders, property wrappers like State, binding, State Object, Observed Object, and Environment Object.

•Utilized latest async/await concurrency option for concurrency implementation in app .

•Used SizeClasses to define different layouts for different device sizes or orientations. SwiftUI provides two size classes: .compact and .regular for both horizontal and vertical dimensions.

•Had used @Environment(\.horizontalSizeClass) and @Environment(\.verticalSizeClass) to adapt UI based on size classes.

•Had used HStack and VStack to create adaptive layouts. These stacks automatically adapt their orientation based on the available spac

•Updated legacy code from Objective-C to Swift/SwiftUI to use the latest programming languages and frameworks.

•Converted xib files into SwiftUI files by updating legacy code to use modern SwiftUI syntax and architecture.

•Refactored and updated unit tests to cover more of the code base and improve overall test coverage.

•Generated and managed tasks and tickets based on daily stand-ups and other meetings and attended meetings to review and prioritize tasks, backlog, and stories.

•Refactored code to use actors and other techniques to prevent race-condition crashes.

•Monitored analytics tools like Google Firebase to ensure the app is as crash-free as possible.

•Worked with the tech leads to establish and maintain a consistent code style across the code base, using tools like SwiftLint.

•Worked closely with Scrum masters, product owners, and other stakeholders to estimate the time required to complete tasks and stories.

•Ensured that the app met accessibility standards and adhered to the latest accessibility guidelines.

•Greatly revamped Unit Test Cases in the code base and improved code coverage from ~40% to ~85%

•Monitored Google Firebase crashalytics to assist the app to be in a 99.99% crash-free app

•Updated network code to use the latest async/await syntax.

•Migrating from legacy dependency managers like CocoPods to newer solutions like Swift Package Manager.

•Collaborated with DevOps to ensure that Pull Requests are not merged if automated tests are not passing.

•Used tools like Charles or Proxyman to debug issues in the app and used tools like Instruments to catch memory leaks in the app.

•Consumed and integrated data from RESTful APIs.

•Integrated with MiniSnap SDK to capture check images for upload to the server.

•Refactored the watchOS app to use the latest SwiftUI architecture, updating and refactoring views to use SwiftUI.

•Refactored major features in the app to use the latest programming languages and frameworks.

•Served on a dev team responsible for making new features in the app and overhauling some parts of the app to use SwiftUI.

•Used MiniSnap SDK to capture Check Images to upload to server.

•Assisted in revamping the watchOS version of the App to use SwiftUI

•Created the refactored version of the Watchlist View in our App using SwiftUI

•Major refactoring of the Trade View screen in our app. Refactored it to use SwiftUI and Swift.

•Converted in-house cocoa pods to Swift Package Manager.

•Improved the pipelines for our buildings by having the proper settings.

•Set up Jenkins pipeline to prevent merging with a broken building.

•Converted service classes with async functionality.

•Improved logic for DeepLink to be more dynamic.

•Cut down app size by creating more views that could be recycled.

•Actively participated in code reviews within and outside my teams.

•Worked closely with the product team that handles accessibility to create and follow up on handling accessibility throughout the app.

•Helped the Mentor team in how to handle accessibility throughout the app so that is friendly for users and meets the requirements of the product.

•Worked with a team of 8 people.

•Used Instrument Tool to cut down High CPU usage throughout the app.

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

•Utilized Core Data for persistence.

•Implemented a TDD methodology using XC Test to create Unit and UI test cases.

•Tracked and assigned tasks using JIRA.

•Using Firebase to analyze the application.

•Jenkins applied for continuous integration.

•Implemented architecture using MVVM pattern and incorporated various design patterns.

August 2019 – November 2021

FORD SENIOR IOS APP DEVELOPER

Detroit, MI

The FordPass App: https://apps.apple.com/us/app/fordpass/id1095418609

•Utilized PromiseKit to make network calls and retrieve information from backend servers

•Implemented AutoLayout constraints using SnapKit

•Used RxSwift and RxCocoa to bind data to view elements so the view was updated automatically when the data changed.

•Utilized the MVVM design pattern for the architecture of the app so the codebase could be organized and easier to test.

•Used Grand Central Dispatch queues to handle uploading of data to backend servers.

•Utilized NSOperations and operation queues implement and abstract some of the common asynchronous tasks, such as image loading.

•Implemented certain views programmatically using NSLayoutConstraint and anchors.

•Utilized a deep linking framework so tapping on a URL opened the app and navigated to the appropriate part of the app.

•Used XCTest to test view models, view controllers, and another user interface to ensure it all worked as expected.

•Utilized Rally to create stories as well as track the progress of features and other tickets.

•Led daily standup meetings so the team could communicate what they had done the day before, and what they were going to do the current day, as well as listing out any blockers.

•Attended weekly meetings to demonstrate completed features to product owners to demonstrate the features were completed, as well as get feedback for potential improvements.

•Attended weekly story planning meetings where the team would meet to estimate the planned stories and features.

•Attended weekly meetings to identify potential blockers to development, as well as possible improvements to the app.

May 2018 – July 2019

NBC UNIVERSAL MEDIA, LLC SENIOR IOS DEVELOPER

New York, NY

The NBC App: https://itunes.apple.com/us/app/the-nbc-app-stream-tv-shows/id442839435

•The new NBC streaming media app can stream videos to all devices including TV with AirPlay and Chromecast.

•Worked as part of a small development team using Xcode IDE and coding entirely in Swift.

•The app is architected on an MVVM architecture pattern for maintainability and extensibility.

•Configured integration with services through APIs for AirPlay and Chromecast.

•Implemented streaming video directly to the app with AVFoundation.

•AlamoFire provided back-end communications with Grand Central Dispatch to manage threading in the background for high performance.

•Used Alamofire to write SessionManager classes to handle endpoint calls and networking tasks.

•Worked with the product owner to prioritize tasks in Sprint planning meetings.

•Implemented app with MVVM architecture.

•Saved data to the device using Core Data and secured user info with Keychain.

•Successfully troubleshot an issue with RESTKit limits on traffic handling which were causing a problem with RESTful services integration.

•Worked in conjunction with the design team on the iteration of the UI/UX design.

•Responsible for enhancing iOS modules including various interfaces.

•Collaborative technology planning, social media metrics, and iOS app marketing configurations.

•Used analytics tools to track user transaction statistics within the application.

•Managed app testing using automated texting and unit tests in XCTest.

•Agile Scrum process used by the iOS mobile app development team with daily scrums and bi-weekly sprints.

•Used Git with Jenkins for continuous integration as part of our quality process.

•Used Core Data to store and save user profiles, and favorites lists.

•Leveraged Git for version control, and Jenkins instance for continuous integration.

•UI developed utilizing storyboards, size classes, and auto layout constraints for conforming the UI to multiple device screen output sizes

•Enhanced user ratings and reviews ability using third-party tools to allow and encourage more valuable info from users.

March 2017 – April 2018

CREDIT SESAME IOS DEVELOPER

Mountain View, CA

https://itunes.apple.com/us/app/credit-sesame/id476718980

Free credit report card, credit alerts and manage your entire credit with the app.

•As part of the iOS development team, we worked with custom APIs to integrate credit services with high security.

•The team used Xcode IDE, employing Interface Builder, Instruments, and onboard tools.

•Worked entirely in Swift to code the app and refactored Swift 3 to Swift 5 to transition the code base.

•Responsible for attending daily scrum stand-up meetings, sporadic sprint planning, and sprint retrospective meetings.

•Mentored newer members of the team and participated in code reviews.

•Refactored code to eliminate legacy frameworks that were no longer supported

•Removed dead code from the project to reduce project size.

•Worked on the new gallery screen implementation.

•Helped implement the new filters header and a lot of testing and bug fixing before delivery of the feature.

•Worked on the personal information section of the new home screen, implementing UI and display logic.

•Used Apptimize to set up feature flags and A/B experiments.

•Worked with UI/UX designers and managed implementation of UI in Xcode’s Interface Builder with storyboards and Xibs.

•Worked with Storyboards to refactor several UI layouts based on wireframes, as well as worked with Size Classes and AutoLayout constraints to optimize the user experience

•Implemented Core Data to persist and retrieve user information as well as store user progress.

•Implemented new menu design and functionality for an improved user experience

•Implementing SiteCatalyst to track all behaviors of users.

•Integrated Touch ID capabilities, using Local Authentication

•Implemented push notifications by creating APNS certificates and displayed all the notices in one location in the Notices Tab also handled push notifications effectively with the server for integration.

Feb 2016 – Feb 2017

DICK’S SPORTING GOODS IOS MOBILE DEVELOPER

Coraopolis, PA

https://itunes.apple.com/us/app/dicks-sporting-goods-fitness/id556653197

A shopping app that doubles as a fitness app. This features personalized rewards, coupons, and scorecard tracking. ScoreCard points for achieving your activity goals each day by integrating with Apple Health, Garmin, Fitbit, and MapMyRun. Hit daily goals just by walking/moving. Get Rewards from your ScoreCard. Scan Rewards and track your points.

•Used Xcode IDE for iOS mobile app development in Swift, working with a hybrid code base where new features had been added in Swift on an Objective-C base with bridging headers.

•Used instruments, crash logs from both Crittercism and Quantum Metrics, Charles Proxy, and the Xcode debugger to track down and fix bugs reported by the QA and product support teams.

•Refactored code, transitioning the remaining code base from Objective-C to Swift.

•Storing log details into the database using APIs and retrieving them back in log data.

•Connection to web service based on AFNetorking was transitioned to AlamoFire.

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

•Mentored junior developers and did code reviews to ensure quality and best practices.

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

•Implemented UIScrollView to show information about the usage of the application.

•Worked with UIKit Framework for development and maintenance.

•Used Apple Push Notification Service for sending messages, notices, and alerts to users.

•Worked with Storyboards to refactor several UI layouts based on wireframes, as well as worked with Size Classes and AutoLayout constraints to optimize the user experience.

•Resolved numerous bugs and crash scenarios using NSLogs, Breakpoints, Instruments, and LLDB statements.

•Worked in MVVM architecture and implemented new features and functionality using various design patterns such as singleton, delegation, and builder.

Jan 2015 – Jan 2016

SPEEDWAY IOS MOBILE APP DEVELOPER

Enon, OH

https://itunes.apple.com/us/app/speedway-fuel-speedy-rewards/id568047979

This app features a wallet, rewards card, store location, and gas prices. Also features family sharing for up to six family members on the same account.

•Wrote unit tests using the XCTest framework for all the features I worked on. Wrote unit tests for some legacy code that was not covered by unit tests to increase code coverage.

•Used Git to interact with the code repository.

•Worked in a hybrid code base of Swift and Objective-C with bridging headers using Xcode IDE.

•Used Git repository on Stash, Jira for project management, Confluence for documentation, and HipChat and Teams for communication.

•Developed the app in Xcode 7 using MVVM architecture.

•UI built using Storyboards.

•Memory management and profiling used Instruments and Time Profiler tool.

•Implemented Core Data structure for data persistence and storage.

•UITableViewCell with Interface Builder and implemented UIViewControllers.

•Design custom MapAnnotation. Handling delegates: didSelectAnnotationView, viewForAnnotation.

•Worked JSON requests according to the front end. Process the JSON requests according to different types of modules, actions, and request data;

•Design all views with auto layout and constraints.

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

•Extensively used Objective C, Swift, and Cocoa frameworks for cross-functional mobile application development.

•Designing, developing, testing, and implementing apps in the App Store.

•UI and Application design with XIB files programmatically and using Interface Builder.

•Designed user interface (UI) with UIViewControllers, UITableViewControllers, and custom UITableViewCell with Interface Builder.

•Implemented many design patterns like KVO, Notifications, and Singleton.

•Using Git for code repository and version control we also had Jenkins CI for continuous integration.

•Regularly performed code reviews to ensure efficiency, readability, and maintainability.

•Analyzed existing code for improvements and optimizations.

April 2014 – Dec 2014

PAPA JOHN’S JUNIOR IOS DEVELOPER

Louisville, KY

https://itunes.apple.com/us/app/papa-johns-pizza/id407517450

•Worked on a small mobile app development team and worked cross-functionally with the Android development team to ensure parity.

•Coded the app in Xcode IDE in Objective-C with native and third-party frameworks and libraries.

•Responsible for quality assurance, testing, and collaboration with the QA team.

•Assisted project manager with Sprint Planning and Product Owner with prioritizing tasks in Jira.

•Implemented native iOS solutions that communicate with RESTful web services as fully functional prototypes for the development team using Objective-C.

•Process the JSON requests according to different types of modules, actions, and request data

•Consumed RESTful web services with AFNetworking, parsing JSON objects, and all RESTful web services used Open Authentication to implement a secure environment.

•Used Jenkins and Git for continuous integration testing

•Performed complete unit testing, integration testing, and regression testing of the application.

•Helped set up deployment of applications over the internet for testing purposes.

•Utilized TestFlight for distribution of testing versions of the app before release to the App Store.

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



Contact this candidate