Roman Temchenko, Developer in Toronto, ON, Canada
Roman is available for hire
Hire Roman

Roman Temchenko

Verified Expert  in Engineering

Multithreading Developer

Location
Toronto, ON, Canada
Toptal Member Since
April 29, 2014

Roman is a top iOS engineer, familiar with all stages of software design and development. His true passion is finding fast, efficient, and ingenious solutions for complex problems. Roman is an efficient and capable developer and a great person to work with.

Portfolio

DarkMatter, LLC
SQL, SourceTree, UIKit, Object-oriented Design (OOD), Multithreading...
Lixar I.T.
SourceTree, REST, Core Data, UIKit, Object-oriented Design (OOD)...
Ciklum
Core Data, SourceTree, REST, Core Location, UIKit, Object-oriented Design (OOD)...

Experience

Availability

Part-time

Preferred Environment

Git, SourceTree, Xcode

The most amazing...

...things I've done are recreations of many amazing pieces of software.

Work Experience

iOS Team Lead

2016 - 2019
DarkMatter, LLC
  • Led a team to implement an iOS client of a communication application with advanced security.
  • Managed and facilitated the work process of a distributed team of five developers with a 9-hour time zone difference.
  • Designed a solution architecture and planned development activities in collaboration with other teams.
  • Communicated with stakeholders to identify product requirements.
  • Maintained and integrated multiple C/C++-based cross-platform libraries into the app.
  • Reviewed code and implemented best development practices.
Technologies: SQL, SourceTree, UIKit, Object-oriented Design (OOD), Multithreading, Test-driven Development (TDD), SQLite, XP, Scrum, Git, Cocoa Touch, Cocoa, Xcode, C++, C, Objective-C, Swift, iOS

Senior iOS Developer

2014 - 2016
Lixar I.T.
  • Migrated an application from iOS 7 to iOS 8.
  • Implemented different new features for a client-server enterprise application using Objective-C and Cocoa Touch.
  • Implemented Core Data migrations in a fast-evolving application.
  • Supported test coverage for business logic using Kiwi.
  • Implemented receipt printing using StarMicronics printer SDK.
  • Designed architecture in a CLEAN way.
Technologies: SourceTree, REST, Core Data, UIKit, Object-oriented Design (OOD), Multithreading, Test-driven Development (TDD), C, Swift, XP, Scrum, Git, Cocoa Touch, Cocoa, Xcode, Objective-C, iOS

iOS Engineer

2013 - 2014
Ciklum
  • Coded portions of server interaction logic and the corresponding data models.
  • Migrated the UI from iOS 6 to iOS 7.
  • Optimized project architecture, making it more flexible.
  • Created a custom image caching mechanism.
  • Implemented part of the UI.
Technologies: Core Data, SourceTree, REST, Core Location, UIKit, Object-oriented Design (OOD), Multithreading, Google Maps, Test-driven Development (TDD), C, MapKit, XP, Scrum, iOS, Git, Cocoa Touch, Cocoa, Xcode, Objective-C

iOS Engineer

2012 - 2013
Cogniance
  • Implemented an advanced video player supporting HLS downloaded to a device.
  • Created a simple drawing system for annotating media items (PDF, images, and video snapshots).
  • Implemented anti-piracy protection and jailbreak detection.
  • Created and supported a custom URL protocol for interacting with HTML packages presented in an application and replacing the native UI.
  • Created a custom map view controller capable of switching between native maps and Google Maps in one line of code.
Technologies: SourceTree, Google Calendar API, Mercurial, Core Animation, REST, AVFoundation, Core Location, UIKit, Object-oriented Design (OOD), Multithreading, SQL, Test-driven Development (TDD), C, SQLite, XP, Scrum, iOS, Git, Cocoa Touch, Cocoa, Xcode, Objective-C

iOS Developer

2011 - 2012
DIMALEX
  • Implemented a user authentication and profile editing mechanism.
  • Improved application performance dramatically by updating poor legacy code.
  • Implemented xibless UI for a universal application.
  • Implemented map UI and interaction logic.
  • Learned design patterns.
Technologies: SQLite, SQL, SourceTree, Core Animation, REST, Core Location, UIKit, Object-oriented Design (OOD), Multithreading, Google Maps, Test-driven Development (TDD), C, MapKit, Scrum, iOS, Git, Cocoa Touch, Cocoa, Xcode, Objective-C

Junior iOS Developer

2011 - 2011
KTTSoft
  • Implemented a XMPP chat client.
  • Learned manual memory management before ARC became mainstream.
  • Learned Cocoa basics, UIKit, and NSFoundation.
  • Worked with VCS and profiling tools.
  • Created a handy application with video playback featuring use of a gyroscope for juggling.
Technologies: Core Animation, SourceTree, Subversion (SVN), REST, Core Location, UIKit, Object-oriented Design (OOD), Multithreading, Google Maps, SQL, Test-driven Development (TDD), C, SQLite, Scrum, Git, Cocoa Touch, Cocoa, Xcode, Objective-C, iOS

Teesnap

https://www.teesnap.com/
21 century iPad application for golf-course management.

Mediafly

I created the UI and internal logic for the video and audio playback, PDF documents, and image presentation. I developed a drawing instrument used for creating annotations, and implemented an algorithm for making the drawn line smoother. I also secured user data and downloaded content, anti-piracy protection. I also implemented interaction with a second screen, minor UI changes, and a custom URL protocol for interaction with stored HTML packages. This project allowed me to acquire experience working with RESTful services.

Shiftme.to

This is a universal application that did not use xibs. I optimized the data caching and retrieving, map view, map annotations, and overall UI interaction performance. I also handled authentication, registration, and the user info editing mechanism in the application, as well as the UI and server interaction.

Alcohoot

I implemented part of the UI and interactions with Google Places API and Yelp API. Due to issues with places providers, I implemented custom map view controllers with the same interface so that native maps and Google Maps could be easily interchanged.

Finance Control

This was one of the first projects in which I participated. Many things have changed since then, but I learned a lot during its creation.

Languages

Objective-C, Swift, C, SQL, C++

Frameworks

Cocoa, Core Location, Cocoa Touch, MapKit, UIKit, Core Data

Tools

Xcode, Git, SourceTree, Subversion (SVN), Mercurial

Paradigms

XP, Object-oriented Design (OOD), Scrum, REST, Test-driven Development (TDD)

Platforms

iOS

Storage

SQLite

Other

Multithreading, AVFoundation

Libraries/APIs

Core Animation, Google Calendar API, Google Maps

2006 - 2011

Master's Degree in Computer Engineering

Dnipropetrovsk National University Oles Honchar - Dnipropetrovsk

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