← В ленту
Регистрация: 14.02.2023

Портфолио

Math learning app

iOS developer.

Beeline TV

Senior iOS developer.

OTKRITIE Bank

iOS developer.

Скиллы

Bolts-Swift
Charles
ObjectMapper
Postman
Realm
RealmBrowser
Sketch
Slack
SourceTree
Swift
Swinject
VIPER
Xcode
Zeplin

Опыт работы

iOS developer
02.2020 - 02.2020 |Math learning app
SwiftUI, MVVM, Bolts-Swift, Firebase, Amplitude, RevenueCat, In-App Purchases, Xcode, Figma, Charles, Slack, SourceTree
Interactive math app for children between the ages of 6 and 11 to learn math in the game format by playing fun educational games. My duties, in addition to the development and deployment of the application, included discussing the requirements with BA and designer to find the fastest solution. The main goal was to develop a quality product with the possibility of easy extension in the future. I used the MVVM architecture in conjunction with the relatively new SwiftUI technology to solve it. The success of the project depended on the choice of payment model and the ability to edit it on “the fly”. The RevenueCat framework was used as tool to allowed us to manage, and optimize in-app subscriptions. The project has been successfully launched in the AppStore and its development is planned.
iOS developer
02.2018 - 02.2018 |OTKRITIE Bank
Swift, Snapkit, Realm, Feature toggles, Xcode, Zeplin, Charles, Postman, Slack, Rocket Chat, SourceTree
It was an implementation of a secure mobile version of the bank app. Here is a list of features that I worked on: • user profiles; • authentication and authorization; • payments, templates, autopay; • QR; • payment card scanning; • maps support.
Senior iOS developer
02.2018 - 02.2023 |Beeline TV
Swift, VIPER, Bolts-Swift (Promises), Swinject (DI container), Realm, ObjectMapper, Xcode, Sketch, Zeplin, Charles, Postman, Slack, SourceTree, RealmBrowser
Pay-TV is a solution for one of the biggest Russian mobile operators that streams VOD, Catch-up, Live content to iPhone, iPad, and Apple TV. My responsibilities included designing the application architecture from its inception, developing shared reusable parts for both platforms (iOS and tvOS), setting up the build and delivery processes of IPA archives for customers and the QA team. I set the following criteria for myself in designing this application’s architecture: ease of reuse, reduction of unnecessary complexity in making changes to standard components, and the speed of the project’s build processes. To do this, in one workspace, I created two separate projects for each platform, where each of the projects referred to the targets of reused modules (network layer, payment service, player, etc.) Here is the list of features that I implemented: • playback VOD, Catch-up, Live, and Timeshift; • payments through in-app purchases; • payments through an operator payment system; • highly interactive interface - EPG, rails; • cross-platform support; • downloads to go. Jenkins, with pre-installed Xcode plug-in, was used for CI. The project worked within three different environments Dev, Pre-Prod, and Prod. The release and build process was fully configured externally using environment parameters for each job.
iOS developer
02.2017 - 02.2018 |SpeedTracker Apple Watch Version
WatchKit SDK, Swift, Objective C, Xcode, Git, Source Tree, Photoshop, JIRA
Speed Tracker is a combination of GPS speedometer and Trip computer. The app helps with gathering all the necessary trip statistics like speed, time, distance, heading, elevation, and more. When I joined the project, it had already had a legacy iOS version written on Objective C. My task was to implement a watch version using Swift in a short time. The solution was to add a watch extension to the main mobile app. The watch version included the migration of Objective C to Swift code files. All the business logic remained in the main project. I wrote an adapter that converted the data into the form required by the extension.
iOS developer
02.2016 - 02.2017 |WebRTC-based Event Broadcasting App for Facebook Live
UIKit, Foundation, WebRTC, Kurento Toolbox SDK, Facebook Bolts, JSONModel, Typhoon, Firebase, Fabric, Facebook SDK, Twilio
An easy to use iOS app designed to broadcast live events via Facebook Live. Supported by the Twilio platform, the app comes with features including seamless Facebook account integration and authentication, hassle free broadcast creation, and management, live video streaming using the device camera, online chat, push notifications, and more. It was a start-up project, and the team was distributed across several countries. I was responsible for the iOS part, including the design of the architecture, development, testing, and the final delivery to the AppStore. The main technical challenge on the project was the choice of iOS wrappers over WebRTC (AppRTC, Kurento, Twilio). My goal was to prepare a standard interface for interacting with various implementations of iOS WebRTC. It would make it possible to check the stability of libraries under various stress conditions quickly. This was achieved by splitting the WebRTC implementations into different targets shielded by one interface in the code.
iOS developer
02.2016 - 02.2016 |Journey Planning App
Cocoa, Cocoa Touch, Cocoa Pods, UIKit, CoreGraphics, QuartzCore, CoreLocation, AFNetworking, SDWebImage, MapKit, System Configuration, Security, Xcode, GIT, Source Tree, Photoshop, JIRA
Application for journey planning. It allows users to plan train, bus, and tram trips. The application analyzes every day user activities, identifies users’ home and work locations, and suggests tomorrow’s commutes depending on the user’s weekly schedule. It allows the user to receive weather forecasts and notifies about adverse weather conditions along the way. Here I worked on almost all parts of the application and successfully delivered it to the AppStore.
iOS developer
02.2014 - 02.2016 |Pay-TV application
Cocoa, Cocoa Touch, Cocoa Pods, UIKit, CoreGraphics, QuartzCore, AFNetworking, SDWebImage, AVFoundation, DRM frameworks, Xcode, Git, Source Tree, Sketch, JIRA, Trello
A solution for Pay-TV operators and telcos that streams live channels to iOS and Android devices. The application has a user-friendly and highly interactive interface that includes a video player, channel list, EPG, and catch-up TV. Here I developed this application from scratch in a small team of developers.
iOS developer
02.2013 - 02.2014 |Manheim
Cocoa, Cocoa Touch, Cocoa Pods, UIKit, MessageUI, MapKit, CoreLocation, CoreGraphics, QuartzCore, AFNetworking, Google Analytics, ZBarSDK, TouchXML
MAN-MOBI, Manheim corporate application that provides the customers a convenient interface to inform about the company’s activities. It includes an embedded news feed reader, a database with the company’s centers, including the detailed information about all of them. I was a key developer on the project and delivered it to the AppStore.
iOS developer
02.2013 - 02.2013 |K12Rewards
Objective C, Foundation Framework, UIKit, JSON, Nimble commerce SDK, Geolocation services, AFNetworking, Facebook SDK, ShareKit, Cocoa pods, Xcode, SVN, Pixelmator
The K12Rewards is an Education-based rewards app with a standard feature set such as an ability for users to view their account balances, shop on mobile sites (with rewards recorded), to purchase and redeem daily deals, donate to causes, to earn non-shopping rewards and watch videos. Also, it is capable of serving ads for sponsors. I developed this application from scratch in a small team of iOS engineers.
iOS developer
02.2012 - 02.2013 |Thinkstock
Cocoa, Cocoa Touch, Foundation, UIKit, MessageUI, AdSupport, SystemConfiguration, CoreGraphics, XCTest, AFNetworking, JSON, XML, AFNetworking, GoogleAnalytics, Cocoa Pods, Xcode, GIT, VPN, Rally Software
Thinkstock is an application that allows its users to explore, manage, and share stock photos provided by Getty Images. Also, the application enables the user to perform a keyword search for images, to filter search results by specific options, to create galleries of images (called lightboxes), to distinguish assets in the collection, and to share them with friends. The application is optimized for viewing high-resolution assets on retina displays. I developed this application from scratch in a small team of iOS engineers.

Образование

Master of Science in Computer Science
2007 - 2014
Belarusian National University

Языки

АнглийскийВыше среднего