SportBattle – social network for football fans. This is a big project, involving a team of developers.
My contribution:
• Search by users
• Adding posts and groups screen
• Statistics
• Map
• Tutorial
• Subscriptions, postsandsubscribers
• About screen
Used tools:
• Objective-C + AFNetworking, SDWebImage
• NSURLSession
• MapKit
• RESTful API
• Fabric (Crashlytics, Answers)
• Google Analytics
+
• Basic (XCode + iOS SDK, Git, Cocoapods)
RSM News. A simple viewer of news and promotions for a large company.
My contribution:
• All application
Used tools:
• Objective-C + AFNetworking, SDWebImage
• Push Notifications
• RESTful API (with Swagger)
• Realm Database
• Fabric (Crashlytics, Answers)
• Google Maps
+
• Basic (XCode + iOS SDK, Git, Cocoapods)
Stillhot. This app allows you to order food with home delivery. My contribution was very small, but allowed me to learn the Reactive Cocoatechnology.
My contribution:
• Free payment screen
• Bug fixing
Used tools:
• Objective-C + AFNetworking, SDWebImage
• RESTful API (with Swagger)
• Reactive Cocoa
+
• Basic (XCode + iOS SDK, Git, Cocoapods)
Skeeb. An application for creating orders for the delivery of goods.
It was written with React Native Multiplatform. I used typescript to support it. It was divided into an application for couriers and an application for dispatchers who took orders.
Alnadeg. App for creating orders for the delivery of goods.
I maintained the application and fixed countless bugs. The application was made on the Reactive MVVM architecture. This gave a big boost in understanding this architecture.
Vapemail. An application for the sale of electronic cigarettes.
Created from scratch, contains more than 11 screens with a complex functionality. It is like a social network for vaping enthusiasts. Interestingly, the backend of the application was developed using Firebase Database and Storage, and the chat was created with the help of JS Q Messages View Controller. Kingfisher, AARatingBar, DZNEmptyDataSet, and PromiseKit were also used in the development process.
Taker, Shuneez, Kabab. Applications for the delivery of products according, like Yandex Food.
These applications made on ReactNative and I maintained them and add new features.
Munchkinopedia. It's a pet-project for the great board game «Munchkin». Contains easter eggs and Yandex ads (previously was Google Ads).
Written fully on Objective-C! To not lose the skill. It was my first language and I was using it for 2 years before switching to Swift 2.3. The app uses CoreData under the hood. Desiged entirely by me.
3DCar (the new name is FormaCar) – auto portal which includes: a 3D Configurator which is written with Unity, news feed, disk tuning, auto parts stores searching.
In this app have been successfully resolved the difficult task of integrating an interactive Unity app to the mobile client. Unlike Android, Unity allows you to run applications only as an standalone application by default.
My contribution:
• The whole application except maps and Unity configurator.
Used tools:
• Objective-C + AFNetworking, SDWebImage
• Unity integration
• Realm database
• ActiveLabel
• UITableView + CustomPullToRefresh and InfiniteScroll
• FB, Twitter, VK, G+ SDKs
+
• Basic (XCode + iOS SDK, RESTful API, MapKit, Git, Fabric)
Baby Book – diary for moms who have recently given birth. It is possible to track the height, weight, food of a baby, post pictures, watch the news and chat with other mums.
It is widely used Core Data to store data. Much time was spent creating UI using constraints. It was especially interesting to do the screen with teeth, where anyone can click and place the description on it. Folding and drop-down menu - also is not native task for ios.
My contribution:
• A diary with all the screens, allowing you to record information about the child. Side menu and navigation..
Used tools:
• Objective-C + AFNetworking, SDWebImage
• AFNetworking
• Core Data
• iOS-Slide-Menu
• Autolayout constraints
+
• Basic (XCode + iOS SDK, RESTful API, MapKit, Git, Fabric)
OLPortal – a big news aggregator. Russian idea =)
It used the mixed model of the architecture of VIPER (from Rambler) and MVC. To create the modules used generamba (https://github.com/rambler-digital-solutions/Generamba). For simple screens naturally used MVC. Widely used PromiseKit and Alamofire. Tried to follow the principles of SOLID. Fastlane lanes used for deploy.
My contribution:
• Registration flow: country selector, re-sending, verification code screen
• Password recovery via email and phone
• Login flow
• Need help? screen
• Home screen
• Dual menu (when you can swipe to the left, and then again to the left)
• Aggregator of news from the social networks of VK, FB, Odnoklassniki, Instagramm, Tw
Used tools:
• Swift 3.0 + Alamofire
• Alamofire interceptor
• VIPER
• Generamba
• UIPageViewController
• Core Animation
• Fastlane
• PromiseKit
• Realm
+
• Basic (XCode + iOS SDK, RESTful API, Git, Firebase)
Formacar is a large-scale project with over 200,000 monthly users.
I was the project leader for this team. At any given time, there were a maximum of 7 people in my team, whom I hired, trained, and managed. I promoted three people from junior to mid-level positions. We used VIP architecture (clean Swift) to develop the project. I created and established development processes, including review procedures. I reviewed each MR. Sometimes, it was necessary to create more than 100 threads for certain MP. I also developed functionality myself.
The project was built from scratch using the latest Swift and modern concurrency methods.
The project faced various technological challenges, including:
- Integrating Unity with the native layer.
- Developing a neural network for car recognition in camera images.
- Creating a photo and video selection tool with filters.
- Supporting three simultaneous backups.
- Troubleshooting the console from the ground up.
- Implementing analytics from Yandex, Google, and Firebase.
- CoreData
Setting up automatic deployment using fastlane and much, much more...
ReviewBot is a chatbot designed for Telegram, built in Swift using Vapor and SwiftNIO. It is intended to distribute new merge requests among registered developers. When a developer creates a new merge request and wants to assign reviewers, they simply send a link to a general chat. The bot then automatically selects suitable reviewers and sends them private information about the MR in messages. Reviewbot can store information about reviewers, MPs, and holidays. It's built as a Docker container that makes it easy to deploy on Kubernetes.
Welcome! Here are a few facts about Nik Kov:
In development sphere: 6 years
Education: Bachelor of statistics (Moscow)
Familiar tools:
• Swift 2.3 and higher;
• Swift modern concurrency (async/await);
• SwiftUI;
• Objective-C (more than 5 projects);
• iOS, tvOS, watchOS;
• Realm & CoreData;
• In-App Purchases;
• Remote Push Notifications (Apple, Firebase, AWS, OneSignal);
• Alamofire & AFNetworking;
• SnapKit & Stevia & Autolayout;
• AVFoundation;
• Architectures: VIP (CleanSwift), MVC, MVP, MVVM, VIPER;
• Images: Kingfisher & Nuke & SDWebImage & Native;
• Git, Cocoapods, SPM, GitLab;
• Jira, Confluence, Trello;
• Postman, RESTful API, Chrome Advanced REST client;
• Charles & Proxyman;
• Reactive Cocoa;
• React Native (да-да);
• Fabric, Firebase, Crashlytics;
• GCD, NSOperations;
• TestFlight, Diawi, Testobject, AppCenter;
• All deploy cycle AppStore;
• Localization & Internationalization;
• Fastline CI;
• API: by Google (Maps, Analytics, Database...), by SocialNetworks (FB, Twitter, Instagramm, VK).