Nikolay Derkach, Developer in Montreal, QC, Canada
Nikolay is available for hire
Hire Nikolay

Nikolay Derkach

Verified Expert  in Engineering

Software Developer

Location
Montreal, QC, Canada
Toptal Member Since
December 16, 2013

Nikolay is a product-focused iOS expert with a background in security. He has worked extensively on building iOS apps, helping clients with product strategy, and advising on UX design. His passion is to work with startups to help them bring the first iteration of their product to market.

Portfolio

OnyxCorp (via Toptal)
Xcode Server, POSIX, Xcode, Swift, Realm, Signal Protocols, Encryption, C++, Qt...
Toptal
Python
BlipMe (via Toptal)
KeystoneJS, PubNub, MongoDB, MapKit, Objective-C, Swift, iOS, Node.js

Experience

Availability

Part-time

Preferred Environment

Git, Xcode, OS X

The most amazing...

...thing I've done is reverse-engineer major ticketing websites and the Apple App Store.

Work Experience

Senior iOS Developer

2017 - 2018
OnyxCorp (via Toptal)
  • Worked on MVP for an enterprise end-to-end communication software leading product development and engineering for iOS.
  • Developed a product management process in collaboration with designers and developers.
  • Deployed a CI pipeline using Xcode Server.
  • Consulted designers on UX and Apple HIG best practices.
  • Implemented encrypted chat protocols using a modified Signal protocol (Double Ratchet Algorithm and Diffie-Hellman key exchange with post-quantum cyphers).
  • Developed an extensive test coverage for the encryption library using XCTest.
Technologies: Xcode Server, POSIX, Xcode, Swift, Realm, Signal Protocols, Encryption, C++, Qt, Cocoa Touch, Objective-C

Technical Screener

2017 - 2017
Toptal
  • Made key decisions in screening hundreds of highly-skilled software developers from all over the world through a three-step screening process (online timed algorithmic test, live coding interview, and test project review).
  • Helped develop algorithmic challenges used to test potential candidates.
Technologies: Python

Full-stack Developer

2016 - 2017
BlipMe (via Toptal)
  • Worked on the project as a solo full-stack engineer.
  • Took over the existing legacy codebase and almost completely revamped the front-end as well as added new features to the back-end.
Technologies: KeystoneJS, PubNub, MongoDB, MapKit, Objective-C, Swift, iOS, Node.js

Developer

2015 - 2016
SeatCrawler (via Toptal)
  • After reverse-engineering Couchsurfing mobile app as a personal project, I published a blog article about reverse-engineering private APIs which quickly gained popularity and started a discussion on this topic in the industry.
  • Reverse-engineered and found ways to programmatically solve most common Captchas.
  • Built proof-of-concept full-stack web apps to consume private APIs directly or through a proxy back-end.
  • Built a cluster of jailbroken iPhone device to automatically intercept and decrypt APNS messages and serve security tokens via an API.
Technologies: iOS, Reverse Engineering, React, Flask, Python

Developer

2015 - 2016
TurnTalk
  • Developed an MVP for the product, helped define the features required, and contributed to the design of the app.
  • Designed and implemented a custom protocol for end-to-end chat message encryption.
  • Designed and implemented custom UI animations.
Technologies: Encryption, iOS, Parse, Objective-C

CEO

2014 - 2015
Traffle
  • Designed and built and MVP for a location-based social travel iOS app.
  • Worked on this startup in a team with a designer while also handling engineering, marketing, and business development.
  • Featured on Producthunt, Betalist, PSFK, Skift.com, and other industry-related sites.
Technologies: UI Animation, Facebook API, Flickr API, Parse, Objective-C

Software Engineer

2012 - 2013
Amadeus
  • Worked on data management infrastructure, in particular on a data management tool able to provide real-time data mining features with predictable throughput despite unpredictable workload.
  • Developed new database engine features such as SQL-like predicate matching, new data storage representation, and additional tools and scripts for maintaining infrastructure.
Technologies: Mercurial, Kanban, Scrum, Jenkins, Shell Scripting, Python, Boost, Standard Template Library (STL), C++

Software Engineer

2010 - 2011
MegaFon
  • Developed various software in Python/PyQt used for automation of remote mass-integration of new GSM and UMTS sites into the radio network as well as for changing parameters of existing sites.
Technologies: Qt, PyQt, Python

Software Engineering Intern

2007 - 2009
RET Research Institute (Moscow State Technical University)
  • Developed software infrastructure for a radio telescope system on the Linux platform.
  • Designed a C/POSIX API and client-server system for inter-communication between modules through a MySQL database.
  • Developed GUI applications used for monitoring and controlling of system parameters (using C++/Qt)
  • Extended and managed internal software development processes. Provided consulting services.
Technologies: OpenGL, Qt, C++, MySQL, Network Programming, POSIX, C

Software Engineering Intern for openSUSE

2008 - 2008
Google
  • Ported and further developed automatic application crash reporting software for Linux (written in Python).
Technologies: Qt, Shell Scripting, GTK+, RPM, Python

Blipme

BlipMe is a community of students who work together to share what’s happening on campus in real-time in order to make college life better for everyone.

Traffle

https://betalist.com/startups/traffle
Traffle helps you to skip tedious trip planning phase to provide you with a pristine experience of spontaneous travelling. We believe in eliminating travel planning by providing our users not only with suggestions for destinations where to travel based on the time and money budget, but also with recommendations for interesting people they could meet there.

I built an MVP of the app in collaboration with a designer, and pursued this project as a startup, doing business development and marketing.

TurnTalk

TurnTalk is all about local and secure communication app which strives to make it easy and comfortable to learn about and get in touch with the people around us.

I developed an MVP for the product, helped to define the features required, and contributed to the design of the app. As a part of the project, I built a custom encryption protocol for end-­to-­end message encryption.

Reverse-engineered Amazon App Store API

https://github.com/nderkach/amazon-app-store-api
Reverse-engineered Amazon App Store API (test project) using Flask and HTML5/jQuery front-end.

Languages

Python, Objective-C, Swift, C++, Bash, C, HTML, JavaScript, GraphQL, CSS

Frameworks

iOS SDK, UIKit, Cocoa, Core Location, MapKit, iOS Frameworks, Address Book, Flask, Cocoa Touch, Core ML, Qt, Core Data, Jinja, Boost

Libraries/APIs

Mapbox iOS SDK, CocoaPods, Xcode Server, Facebook Pop, Core Animation, Facebook SDK, PubNub, Node.js, Parse SDK, Facebook API, Flickr API, Standard Template Library (STL), PyQt, POSIX, OpenGL, React, Sockets, Flask-RESTful

Tools

Interface Builder, Sublime Text, Git, Xcode, Fastlane, Mongoose, Mercurial, Vim Text Editor, RPM, GTK+, Webpack, MATLAB, Travis CI, Jenkins

Paradigms

App Development, REST, Mobile Development, Kanban, Agile Software Development, Continuous Integration (CI), Test-driven Development (TDD), Scrum

Platforms

Parse, Heroku, iOS, Mapbox, Mobile, MacOS, Linux, Firebase, Amazon EC2, OS X, KeystoneJS, Amazon Alexa, Docker

Storage

MongoDB, PostgreSQL, MySQL, Realm, SQLite

Other

Signal Protocols, Applied Cryptography, iOS Cryptographic Services, Cryptographic Protocols, Cryptography, Reverse Engineering, Apps, Real-time Locating Systems (RTLS), Maps, Software Development, Back-end Development, Security, iBeacon, Mobile UX, Shell Scripting, UI Animation, Encryption, Deep Learning, Artificial Intelligence (AI), Machine Learning, Network Programming, ML Kit, Music

Industry Expertise

Project Management

2005 - 2011

Master of Science Degree in Electronic Engineering

Bauman Moscow State Technical University - Moscow

2007 - 2010

Bachelor of Mathematics Degree in Applied Mathematics

Bauman Moscow State Technical University - Moscow

Collaboration That Works

How to Work with Toptal

Toptal matches you directly with global industry experts from our network in hours—not weeks or months.

1

Share your needs

Discuss your requirements and refine your scope in a call with a Toptal domain expert.
2

Choose your talent

Get a short list of expertly matched talent within 24 hours to review, interview, and choose from.
3

Start your risk-free talent trial

Work with your chosen talent on a trial basis for up to two weeks. Pay only if you decide to hire them.

Top talent is in high demand.

Start hiring