Roman Temchenko, Developer in Toronto, ON, Canada

Roman Temchenko

Multithreading Developer

Location
Toronto, ON, Canada
Toptal Member Since
March 12, 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.

Roman is available for hire
Hire Roman

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)...

Location

Toronto, ON, Canada

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

2016 - 2019

iOS Team Lead

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
2014 - 2016

Senior iOS Developer

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
2013 - 2014

iOS Engineer

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
2012 - 2013

iOS Engineer

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
2011 - 2012

iOS Developer

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
2011 - 2011

Junior iOS Developer

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

Experience

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.

Skills

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

Education

2006 - 2011

Master's Degree in Computer Engineering

Dnipropetrovsk National University Oles Honchar - Dnipropetrovsk