Michael Tkachuk, Developer in London, United Kingdom
Michael is available for hire
Hire Michael

Michael Tkachuk

Verified Expert  in Engineering

Software Developer

Location
London, United Kingdom
Toptal Member Since
October 21, 2013

Michael is a dedicated and passionate polyglot software engineer with over 15 years of professional technical and mentorship/leadership experience. He has strong attention to detail and a proven track record of active (hands-on) involvement in software projects of different sizes and complexity across multiple industries. Michael's recent experience includes hands-on mobile and full-stack development, using Node.JS, TypeScript/JavaScript, and React/ReactNative.

Portfolio

Incredee
Node.js, JavaScript, Java, Express.js, Behavior-driven Development (BDD), React...
Text-Box
JavaScript, TypeScript, Node.js, NestJS, Redis, Docker, Docker Swarm, Laravel...
Skyscanner
FlowType.JS, TypeScript, React, React Native, Java, Kotlin, Objective-C...

Experience

Availability

Part-time

Preferred Environment

Java, JavaScript, TypeScript, React, React Native, MongoDB, Jest, Automated Testing, Continuous Integration (CI), MySQL

The most amazing...

...thing I've been involved with is Skyscanner.com mobile application and the multiple systems powering the service.

Work Experience

Owner | Founder

2007 - PRESENT
Incredee
  • Created and launched a freelance projects aggregator/crawler service using Node.js.
  • Developed complex Facebook games and game-engineering tools.
  • Delivered multiple projects of various sizes for web, online gaming, etc.
  • Established the business from scratch. Managed a team of multiple software engineers and helped customers hire and train dedicated software engineering teams.
Technologies: Node.js, JavaScript, Java, Express.js, Behavior-driven Development (BDD), React, MongoDB, MySQL, Linux, Android, iOS, Spring, PHP, Kotlin, Refactoring, Continuous Integration (CI), Architecture, RESTful Services, REST APIs, Object-oriented Design (OOD), Object-oriented Programming (OOP), Gradle, Automated Testing, Test-driven Development (TDD), Jest, Jasmine, Instruction & Coaching

Interim CTO

2021 - 2022
Text-Box
  • Defined platform architecture and set up development standards in a technical leadership role.
  • Hired and trained the engineering team to work within distributed systems realities.
  • Promoted healthy engineering practices, including automated testing,. continuous integration, mono-repository usage, transparent logging, etc.
  • Built and launched the platform MVP from zero to income generation.
  • Managing a team of six engineers, working to address technical issues and performance bottlenecks.
  • Worked with partners, vendors, and the development team to establish and implement API contracts for services integration.
  • Establishing baseline 24/7 on-call rotas and emergency technical support.
Technologies: JavaScript, TypeScript, Node.js, NestJS, Redis, Docker, Docker Swarm, Laravel, Technical Consulting, Coaching, Technical Requirements, Functional Requirements, Business Requirements, Express.js, Behavior-driven Development (BDD), React, MongoDB, MySQL, Linux, Android, iOS, PHP, Refactoring, Continuous Integration (CI), Architecture, RESTful Services, REST APIs, Object-oriented Design (OOD), Object-oriented Programming (OOP), Automated Testing, Test-driven Development (TDD), Jest, Jasmine, Instruction & Coaching

Senior Software Engineer

2017 - 2021
Skyscanner
  • Adopted early React Native within Skyscanner and integrated React Native modules into existing mobile applications, including hands-on Node.JS/React Native and React development.
  • Effected hands-on Java/Dropwizard back-end development, contributing to software projects developed/maintained by multiple teams, using Java, Python, JavaScript, and flow-typed.
  • Coordinated, led, and drove large-scale initiatives that required technical expansion and integration of services provided by different tribes within Skyscanner as well as Skyscanner Partners.
  • Worked on technical design reviews to deliver new features and seamlessly integrate them within existing company software infrastructure.
  • Mentored and supported other software engineers, building relationships, mentorship, and supporting overseas engineering teams.
Technologies: FlowType.JS, TypeScript, React, React Native, Java, Kotlin, Objective-C, Automated Testing, Refactoring, Team Management, Coaching, Express.js, Behavior-driven Development (BDD), MongoDB, Linux, Android, iOS, Spring, Continuous Integration (CI), Architecture, RESTful Services, REST APIs, Object-oriented Design (OOD), Object-oriented Programming (OOP), Test-driven Development (TDD), Jest, Jasmine, Instruction & Coaching

Senior Software Engineer

2016 - 2017
Product Madness
  • Supported the transfer of a large product from Adobe AIR to Unity3D.
  • Developed the core modules used across multiple mobile applications in C# and Java.
  • Introduced and implemented a robust CI/CD pipeline and automated deployment using Gradle.
  • Developed an automated testing framework for mobile applications using Appium, guiding the QA automation.
Technologies: Gradle, JavaScript, Android, Java, Express.js, React, Linux, Refactoring, Continuous Integration (CI), Architecture, Object-oriented Design (OOD), Object-oriented Programming (OOP), Automated Testing, Test-driven Development (TDD), Instruction & Coaching

Unity3D Developer

2015 - 2016
Stuart Squires (via Toptal)
  • Created a cross-platform Flash message editor/player.
  • Facilitated NTP and GPS time synchronization for simultaneous playback on multiple devices.
  • Implemented a multi-threaded GIF renderer for a Unity3D environment using C#.
  • Utilized Amazon S3 to host application websites and GIFs shared on Facebook.
  • Helped to iterate and improve the application UI flows.
  • Created List and ColorPicker UI components not present in Unity3D.
Technologies: Amazon Web Services (AWS), Java, Android, Linux, Architecture, Object-oriented Design (OOD), Object-oriented Programming (OOP), Automated Testing

Game Client Engineer

2014 - 2016
Plumbee, Ltd.
  • Developed and maintained a top-notch mobile slots game product.
  • Used proper software-engineering processes with TDD, code reviews, dependency management, etc.
  • Worked in a technology-agnostic environment, participating in client, server, and analytics tools development.
  • Gained experience in using truly agile processes, including scrum in the past and currently Kanban.
Technologies: Java, Linux, Android, iOS, Refactoring, Continuous Integration (CI), Object-oriented Design (OOD), Object-oriented Programming (OOP), Automated Testing, Test-driven Development (TDD)

Co-Owner | Developer | Project Manager

2008 - 2013
Ansata Web Group
  • Developed (hands-on) full-stack web projects, distributed systems, and services.
  • Conducted research for customer intelligence related to eCommerce and online marketing solutions for well-known brands.
  • Managed multiple projects and products driving them to a successful outcome.
Technologies: TypeScript, Node.js, JavaScript, PHP, Linux, Refactoring, Continuous Integration (CI), Architecture, RESTful Services, REST APIs, Object-oriented Design (OOD), Object-oriented Programming (OOP), Automated Testing, Jasmine, Instruction & Coaching

Senior Software Development Engineer

2007 - 2008
DDM Studio
  • Successfully planned and delivered software projects maintaining the quality bar required by well-known companies, like General Motors, Samsung, and others.
  • Created and launched over five promotional websites and numerous advertising online tools for 2007-2008 advertising campaigns of HP, Samsung, General Motors, The Coca-Cola company.
  • Launched several improvement initiatives, which helped develop internal libraries and toolkits that saved effort working on new projects. Colleagues still found the tools I created useful many years after leaving the company.
Technologies: JavaScript, Linux, PHP, Continuous Integration (CI), REST APIs, Object-oriented Design (OOD), Object-oriented Programming (OOP)

Text-Box

https://www.text-box.net/
Online SMS marketing startup where I have been acting as a CTO, establishing technical team, collecting business requirements and converting them into technical solutions, etc.

Apart from hands-on engineering, my responsibilities included:
• Managing a team of six engineers.
• Defining platform architecture and setting up development
standards (Technical leadership).
• Hiring and training the engineering team to work within distributed systems
realities.
• Promoting healthy engineering practices, including automated testing,
continuous integration, mono-repository usage, transparent logging, etc.
• Building and launching the platform MVP from zero to income generation.
• Working with the team to address technical issues and performance bottlenecks and working with partners, vendors, and the development team to establish and implement API contracts for services integration.
• Establishing baseline 24/7 on-call rotas and emergency technical support.

Languages

JavaScript, TypeScript, Java, PHP, Kotlin, Objective-C

Frameworks

React Native, Express.js, Jest, Jasmine, Spring, Redux, PHPUnit, NestJS, Laravel

Libraries/APIs

React, Node.js, REST APIs, FlowType.JS, MobX

Paradigms

Behavior-driven Development (BDD), Object-oriented Design (OOD), Object-oriented Programming (OOP), Continuous Integration (CI), Refactoring, Automated Testing, Test-driven Development (TDD), Functional Programming, Functional Reactive Programming

Other

RESTful Services, Architecture, Instruction & Coaching, Team Management, Coaching, Technical Consulting, Technical Requirements, Functional Requirements, Business Requirements

Tools

Gradle, Docker Swarm

Platforms

Linux, Android, Amazon Web Services (AWS), iOS, Docker

Storage

MongoDB, MySQL, Redis

2002 - 2008

Specialists Degree in Theoretical Physics, Math, Software Engineering

NTUU KPI (Kyiv Polytechnic Institute) - Kyiv/Ukraine

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