
Michael Tkachuk
Verified Expert in Engineering
Software Developer
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
Experience
Availability
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
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.
Interim CTO
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.
Senior Software Engineer
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.
Senior Software Engineer
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.
Unity3D Developer
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.
Game Client Engineer
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.
Co-Owner | Developer | Project Manager
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.
Senior Software Development Engineer
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.
Experience
Text-Box
https://www.text-box.net/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.
Skills
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
Education
Specialists Degree in Theoretical Physics, Math, Software Engineering
NTUU KPI (Kyiv Polytechnic Institute) - Kyiv/Ukraine