iOS Software Engineer
Improving new user acquisition and existing user retention through A/B experiments.
As a member of the iOS platform team maintained the infrastructure of ING's iOS mobile banking app. Helped convert and modernize the codebase to Swift 3.
Integrated Jenkins with Gitlab to trigger builds and unit tests on pull requests. Introduced Fastlane for build and release automation.
Helped transition UI tests from UIAutomation to XCUITest. Came up with a way to send commands from UI testing helper to the tested app.
Unified and simplified internal & external dependency management with Coaopods Rome.
11 successful A/B experiments in the conversion-targeting track of Booking.com iOS app.
10 successful A/B experiments in the post-booking team.
Implemented extensible in-app Notification Center with notifications synced across iOS devices, persisted and available offline within the app, delivered via push notifications.
Transitioned app dependencies to Cocoapods to simplify dependency updates and internal library management.
Implemented client-side bits of in-app instant messaging feature.
Worked on the iOS email app of one of Russia's largest email providers and myMail — a mobile-only iOS email app with focus on performance, simplicity, and security.
Took part in developing a UI theming solution based on Apple's UIAppearance APIs and successfully worked around UIAppearance's performance issues by using Objective-C message forwarding.
Reimplemented model layer for user accounts and login to support third party email service logins.
Transitioned the project with many dependencies to Cocoapods. Extracted existing code into shared, Cocoapods-compatible, in-house components for intra-company reuse.
Wrote a set of Ruby scripts to integrate Jenkins, Gerrit, JIRA, and HockeyApp through webhooks.
Implemented custom GCD-based SQLite database access queue for FMDB with support for concurrent reads and barrier writes.
Developed and maintained 4 iOS banking apps for a number of Russian banks.
Refactored company's existing mobile banking solution into a reusable, easy-to-integrate framework with customizable template UI.
Clients included Home Credit Bank Russia, VPB Bank, Intehbank, Avtogradbank.
Senior iOS Developer
Developed and maintained iOS, Mac, Windows, Java and .Net apps.
Fitness tracker sync client apps — cross-platform C++/boost static library, Windows/OS X native C libraries for user-mode USB access, and separate MFC/Win32 and Cocoa UIs.
DoorMetrics iOS App — ID Scanner and age verification app with magnetic stripe card reader support.
Wobble iOS App — An image manipulation app using OpenGL-driven image distortion algorithms.