Swift Developer
2021 - 2022Ferry Automotive, Inc.- Developed an application for leasing electric vehicles with a complex leasing flow containing steps such as ID validation, credit check, setting up a payment method, selecting delivery options, signing a contract, and adding vehicle insurance.
- Created a library of custom and reusable UI components to improve development time and future customization.
- Developed a set of highly customized screen transitions to improve user experience and make application flow more organic.
- Worked closely with the UX and design team and suggested ideas to improve our efficiency.
Technologies: Swift, iOS Animations, Xcode, Git, UI Animation, Object-oriented Programming (OOP), Figma, AppleSenior iOS Developer
2021 - 2021Vi Labs (via Toptal)- Worked as a senior iOS developer on the Torch application that gamified running and walking activities and helps users achieve their fitness goals faster and in a fun way.
- Added new features and suggested and made improvements to the existing source code to make it maintainable and more robust.
- Implemented HealthKit extension that constantly tracks users' activity in other third-party fitness apps—like running, swimming, playing basketball, and more—aggregates the results, and makes it usable in the Torch app.
Technologies: iOS, Swift, Carthage, Xcode, Continuous Integration (CI), Apple HealthKit, Core Location, Core Animation, UI Animation, Object-oriented Programming (OOP), UIKit, AppleLead iOS Developer
2020 - 2021Cogni (via Toptal)- Worked as a tech lead and team leader for a five-member team of four iOS developers and one QA specialist.
- Created a development plan—epics, tasks, subtasks, and milestones—and led an effort to redesign 200 existing screens and flows.
- Implemented and added many new features—subscriptions flow, lending, rewards, and cashback—to the existing codebase.
- Created a caching mechanism to preload dynamic resources, enabling changing certain assets and copies without the need for App Store updates.
Technologies: iOS, Cocoa Touch, SwiftRx, Swift, GitHub, Jira, Carthage, UI Animation, Object-oriented Programming (OOP), UIKit, AppleiOS Developer
2020 - 2020Guestlogix (via Toptal)- Worked on the SDK written in Swift to be utilized by airline companies.
- Added new features and redesigned UI parts for the white-label app utilizing the in-house SDK.
- Performed code reviews to ensure all code was up to the highest standards.
- Suggested and demonstrated a plan to move from the MVC architecture to the MVVM architecture using RxSwift for bindings and Coordinator pattern for navigation between screens.
Technologies: Firebase, Git, Continuous Integration (CI), Xcode, Swift, iOS, Object-oriented Programming (OOP), UIKit, AppleiOS Developer
2019 - 2019Stochastic Systems, LLC (via Toptal)- Led the effort to test and fix WebRTC, VoIP, and CallKit issues in the iOS application for secure communication with full data and identity protection.
- Implemented a share extension to enable external content sharing through the application.
- Built a notification extension to customize push notifications' appearance.
- Added unit and UI tests that covered the application features.
- Fixed various issues and bugs to ensure the best user experience.
- Redesigned the whole UI of every app screen to make it ready for the public App Store release.
Technologies: UI Testing, Unit Testing, CallKit, WebRTC, VoIP, HTML5 Animations, Git, Objective-C, J2ObjC, Java, Swift, Object-oriented Programming (OOP), AppleiOS Developer
2018 - 2019OverUnder (via Toptal)- Built and maintained a streak-style contest application where users can win cash prizes by predicting the over-under on featured sports events.
- Developed an application using protocol-oriented MVVM architecture with a clear separation of concerns between modules, making it easy to replace modules and unit tests.
- Created a live in-app chat that allows users and OverUnder to communicate and receive real-time sport event updates.
- Implemented a notification content extension that modifies incoming push notifications to make them more personal for each user.
- Helped identify and implement key analytic events and funnels.
- Added support for mobile ads—showing ad banners when appropriate.
Technologies: Instabug, Google Ads API, Fabric, Firebase, Instruments, Xcode, Core Data, Swift, UI Animation, Object-oriented Programming (OOP), UIKit, AppleSenior iOS Developer
2017 - 2017Adforprize (via Toptal)- Developed Adforprize, a platform where users can express themselves through creative ads. Companies post prizes that are rewarded to users who make the best ads for their campaigns.
- Refactored the existing application by resolving many issues, crashes, and memory leaks. Reorganized the project structure and replaced heavy storyboards with XIB files.
- Implemented a live in-app chat using Firebase Realtime Database.
- Worked on and improved an advanced video editor that records multiple video clips, edits, and merges them. Also, I fixed crashes and issues and added support to add soundtracks, insert GIFs in between video clips and add images on top of videos.
- Implemented a number of custom UI components with CoreAnimation and Lottie animations. The demo video is available at Youtu.be/S4TWKUKxdf8.
- Attended daily standups and proposed new features, solutions, and iOS best practices.
Technologies: REST, Git, Firebase, Core Animation, AVKit, Swift 3, iOS, UI Animation, Object-oriented Programming (OOP), UIKit, AppleiOS Developer
2016 - 2017NimbleRx (via Toptal)- Developed a set of three iOS applications: NimbleRx, NimbleMd, and the marketing iPad application.
- Supported and added new features to the NimbleRx application to keep track of users' prescriptions: a user can order prescription refills, track them on the map, and pay them using the app.
- Led the iOS development on the NimbleMD application for MDs to keep track of drugs and medication: their description, usages, insurance coverage, and other information.
- Created the NimbleRx marketing iPad application to help educate users about the NimbleRx.
- Developed applications fully in Swift by utilizing protocol-oriented programming concepts.
Technologies: MapKit, Core Animation, Git, Amplitude, Crashlytics, Swift, iOS, Object-oriented Programming (OOP), UIKit, AppleLead iOS Developer
2016 - 2016Proballers (via Toptal)- Developed from scratch a social network application that connects basketball players with fans and released it to the App Store in six weeks.
- Set up and guided the client with the set up of a source code repository, Apple developer accounts, in-app purchases, analytics, crash reporting, and releasing the app on Test Flight and in the App Store.
- Implemented an auto-renewable in-app subscriptions feature.
- Developed a verification system for pro players by incorporating the video recording feature in the onboarding flow.
- Solved the challenge of presenting players statistical data on a small screen by adding a custom UI component with UICollectionViews inside a parent UICollectionView.
Technologies: Fabric, Twitter API, Facebook API, AVFoundation, Crashlytics, Git, iOS, Swift, Object-oriented Programming (OOP), UIKit, AppleSoftware Engineer | Lead iOS Developer
2013 - 2015Amphinicy Technologies- Implemented a set of mobile—iOS and Android—applications to be used by operatives of the rapid response team for disaster relief and humanitarian operations.
- Developed a mobile application for configuring a satellite antenna—azimuth, elevation, and skew angles—for an appropriate geosynchronous satellite through an augmented reality interface.
- Participated in the whole software development process, from the requirements-and-design phase to testing, integration, and communication with the client.
- Worked as the technical interviewer of new iOS developer applicants.
- Led a small mobile development team on iOS and Android.
Technologies: Appcelerator, Android, Swift, Objective-C, iOS, UIKitJunior Software Engineer
2011 - 2012Amphinicy Technologies- Developed for Amphinicy Technologies—the world’s leading software provider for companies operating in the satellite industry.
- Built the Java back end for a large in-house CMS product.
- Implemented Android and iOS mobile clients—EPUB and PDF reader—for the in-house CMS.
- Developed the mobile CMS client by customizing, configuring, and adding features to an existing RMSDK client application.
- Collaborated and communicated with international clients.
Technologies: Flex, Java, Android, Objective-C, iOS, Object-oriented Programming (OOP), UIKit