Vanya Rublev

Friends and colleagues call me Vanya. I am an iOS and macOS developer and consultant.

I write apps in Swift and Objective-C via XCode and use CocoaPods as the package manager.

I follow SOLID principles in object-oriented programming and prefer to build software using Clean Architecture by Robert C. Martin.

As for me, following the client’s business value is the recipe for a good software. I prefer to use Agile software development process.

I’m keen on sharing the knowledge and taking part in IT meetups regularly. Sometimes I talk about things I think should be widely known. For example, see my keynote about the Clean Architecture.


  • LinkedIn
  • GitHub

iOS works

Ringer app

Universal app for iPhone and iPad. Made it just for fun.

It’s like repeating timer app but for only one most important thing. In contrast to the native Timer app, it alarms with sound and then repeats the countdown automatically unless the Auto Stop time comes.

Ringer app

Methodologies

Clean Architecture, SOLID principles.

Tools

Objective-C, XCode, iOS 9.x-10.x SDK, CocoaPods, HockeyApp (for crash reporting), GoogleAnalytics, Unit Tests via Quick/Nimble.

iOS frameworks and technologies

Local Notifications, UserNotifications, Background Content Download, Background Execution, CoreSpotlight, MediaPlayer, AVFoundation, GCD, NSOperationQueue, NSURLSession, CallKit, CoreTelephony, StoreKit, State Restoration.

Accomplishment

In this app I’ve implemented the Clean Architecture by Robert C. Martin. As consequence new features can be inserted faster, the code was covered with unit tests easily.


Measure Your Land app

Universal app for iPhone and iPad. Made it as a tool for quick and easy geodesic estimations.

App measures roads, buildings or lands. User taps along the outline of the interested object on the satellite map and the app shows the corresponding distance or area.

Measure Your Land app

Methodologies

Model View Controller approach.

Tools

Objective-C, XCode, iOS 6.x SDK, Objective-C++ static library, KSCrashLib and custom backend for crash reporting, GoogleAnalytics.

iOS frameworks and technologies

MapKit, CoreGraphics, MessageUI, GCD, Objective-C runtime, NSURLConnection, KML format serializer, StoreKit, State Restoration.

Accomplishment

In this app I’ve realized the custom algorithm for serialization/deserialization of open KML file format to save and share the app measurements. The produced file is displayable via Google Earth or another app that supports the KML file format.

Custom algorithm for building closed shape path by user touches was implemented. Finite state machine was used to make user interaction with shapes nodes robust and logical.

Supporting KML Viewer web-page was written to display the KML file on any computer.


macOS work

Video recording app

App for my client working in macOS 10.9-10.11.

This app records video and uploads it to Amazon AWS S3.

Video recording app

Methodologies

Model View Controller approach, SOLID principles.

Tools

Swift 2.3, XCode, OSX 10.11 SDK, CocoaPods, HockeyApp (for crash reporting), Unit Tests via Quick/Nimble.

macOS frameworks and technologies

AppKit, Alamofire, ObjectMapper, REST, JSON, AmazonS3RequestManager, AVFoundation, CoreMedia, GLKit, GCD, NSOperationQueue, Darwin level file reading, Custom Framework with UI controls.

Accomplishment

This is a production app mostly written in Swift with small portions in Objective-C.

In this app I made video stream to be resized on the fly via OpenGL during recording. I’ve written the multipart file uploader to Amazon AWS S3. It uploads video file chunk by chunk during the recording. So at the end of the recording video is almost there.


Inquires

Please, send work requests via personal message in LinkedIn.