×
Illia Tkachuk

Illia Tkachuk

Software Engineer

Amsterdam, North Holland, NL
English, Ukrainian, Russian, Polish

Background


About

About

As a Senior Scala Engineer at BUX, I apply my passion for functional programming and distributed systems to build scalable and reliable backend services for the online trading platform.

I have over 10 years of experience in software development, with a strong focus on Scala and JVM technologies.

I have successfully led and contributed to multiple projects involving microservices, REST API, Kafka, Akka, cats, cats-effect and http4s. I also have proficiency in Python, Kotlin, Rust, Google Cloud Platform and various databases.

I hold a master's degree in Mathematics and Informatics from Kherson State University, where I developed my analytical and problem-solving skills.

I enjoy learning new tools and frameworks, collaborating with other engineers, and delivering high-quality code that meets the business needs and user expectations.

Work Experience

Work Experience

  • Senior Scala EngineerBUX

    Mar, 2022 - Present

    Backend developer responsible for the cryptocurrency trading services of BUX app.

    • Perform design, development and bug-fixing tasks

    • Deploy and maintain services in a Kubernetes cluster

    • Optimization of backend services performance

    • Integration with external exchanges and internal core services

    • On-call support

    • Docker / Kubernetes / Microservices / Prometheus / Grafana / GCP

    • Programming languages: Scala / Kotlin / Python

    • Scala Lightbend: Akka / Akka Streams / Akka HTTP

    • Scala Typelevel: cats / cats-effect / fs2 / http4s / tapir

    • Kafka / Kafka Streams

    • Postgres

    • REST API / OpenAPI / OAuth 2.0

    • Gitlab Pipelines / Github Actions

  • Senior Scala Engineer | Team LeadDataArt

    Mar, 2021 - Feb, 20221 year

    Backend developer responsible for a warehouse's management services and integration with the company's internal systems.

    • Perform design, development and bug-fixing tasks

    • Site Reliability Engineering

    • Integration with internal services

    • On-call support

    • Leading a team of Scala and Java developers (Sep 2021 - Feb 2022)

    • Docker / Docker compose / Microservices / ELK

    • Programming languages: Scala / Java

    • Scala: Akka / Akka HTTP / cats / cats-effect / http4s

    • Apache ActiveMQ

    • Postgres / Oracle DB

    • REST API / OAuth 2.0

    • Jenkins

  • Senior Scala Engineer | Technical LeadLuxoft

    Mar, 2019 - Feb, 20212 years

    Backend developer responsible for a Bank's services aimed to facilitate documents archiving via providing REST API and automated pipelines handling event-based archiving processes.

    • Perform development and bug-fixing tasks

    • Participate in designing of the archiving pipelines

    • Integration with documents indexing engine

    • Leading a team of Scala developers (Jun 2021 - Feb 2021)

    • Microservices / ELK

    • Scala / Gradle

    • Akka / Akka Streams / Akka HTTP / cats

    • Kafka, Kafka Streams

    • Postgres

    • Apache Solr / Distributed indexing

    • TeamCity

  • Senior Software Engineer | Technical LeadLuxoft

    Oct, 2016 - Feb, 20192 years 5 months

    Backend developer responsible for a Bank's OTC trading platform services, with the backend services running on JVM, mainly Java and Scala.

    • Perform development and bug-fixing tasks

    • Develop a scalable connector to particular affirmation system with negotiating between deal parties

    • Participate in development of a system health web dashboard

    • UAT and production support

    • Leading a team (Mar 2017 - Feb 2019)

    • Microservices / REST API / Event bus

    • Programming languages: Scala / Java

    • Java: Spring / JMS / JPA

    • Scala: Akka

    • Apache Camel / Apache Zookeeper

    • Oracle DB / Oracle Coherence Cache

    • TeamCity

  • Senior Java EngineerStar

    Oct, 2014 - Sep, 20162 years

    A software developer responsible for the backend for branded mobile applications for fitness and health clubs.

    • Perform development and bug-fixing tasks

    • Develop back-end for mobile and web applications

    • Integration with particular partner's APIs

    • Java / Gradle

    • Spring / Spring MVC / Spring Security / Hibernate / JMS / JPA

    • Apache ActiveMQ / Amazon SNS

    • Memcached

    • MySQL

    • Jenkins

  • Senior Java Developer | Senior Scala DeveloperLuxoft

    Jul, 2010 - Sep, 20144 years 3 months

    Backend developer responsible for a Bank's OTC trading platform services, with the backend services running on JVM, mainly Java and Scala.

    • Perform development and bug-fixing tasks

    • Continuous development and maintenance of backend server for a front-office UI application

    • Design and develop a trade matching engine

    • Participate in development of core rule-based XML enrichment engine

    • UAT and production support

    • REST API / Event bus

    • Programming languages: Scala / Java

    • Java: Spring / JMS / JPA

    • Scala: Akka, Liftweb

    • Apache Camel / Apache Zookeeper

    • Oracle DB / Oracle Coherence Cache

    • Jenkins

  • Senior Java DeveloperGeeksForLess

    Feb, 2009 - Jun, 20101 year 5 months

    A Java developer involved in various projects with different responsibilities.

    • Development of Web and Android applications of an electronic species guide

    • Development of cross-platform desktop installer for Solr indexing engine with a dedicated backed for plugins management

    • Backend services for processing coupon feeds from various e-shops

    • Java / Maven

    • Spring / JPA / JSF / Swing

    • Hibernate

    • Google Maps API / Amazon S3 / Amazon EC2

    • MySQL

    • Jenkins

  • Java DeveloperDataArt

    Jul, 2007 - Dec, 20081 year 6 months

    Web development of an electronic school management system.

    • Develop events management module consists of a calendar view and the corresponding back-end

    • Java / Ant

    • J2EE / GWT / ExtJS

    • Hibernate

    • MySQL

    • Jenkins

Projects Experience

Projects Experience

  • OTP Auth Widget for Garmin Connect IQ, Individual

    Jan, 2018 - Feb, 20181 month

    A manager of one-time passwords right on a Garmin wearable device.

    • Design and development

    • Implementing of HOTP (RFC 4226) in Monkey C language

    • Publishing to ConnectIQ Store

  • Air Quality Index Widget for Garmin Connect IQ, Individual

    Feb, 2018 - Mar, 20181 month

    A widget aimed to display AQI (Air Quality Index) for current geo position or desired city station right on a Garmin wearable device.

    • Design and development

    • Publishing to ConnectIQ Store

Skills

Skills

  • Programming Languages

    Scala

    Kotlin

    Java

    JavaScript

    Rust

    Python

    Erlang

    SQL

  • Scala

    ScalaTest

    Akka

    Akka Streams

    Akka HTTP

    Play

    Slick

    cats

    cats-effect

    skunk

    ciris

    http4s

    fs2

    sttp

    tapir

  • JVM

    JDBC

    JMS

    JPA

    JMX

    JSP

    Servlets

    JFC (Swing)

    JAXB

    JAX-RS

    Spring

    Spring MVC

    Spring Security

    Hibernate

    JUnit

    Apache Camel

    Apache ActiveMQ

    Apache Zookeeper

    Apache Solr

  • Build tools

    SBT

    Gradle

    Maven

    Make

  • Backend Development

    Functional programming

    Object-oriented programming

    Test Driven Development

    Microservices architecture

    Memcached

    OpenAPI

    OAuth 2.0

    Cloud Computing

    Kafka

    Kafka Streams

    Docker

    Kubernetes

    ELK

    Prometheus

    Grafana

    CI/CD

  • Web

    HTML

    CSS

    XML

    XSL

    JSON

  • Databases

    Postgres

    MySQL

    Oracle DB

  • Source Control

    Git

    Perforce

    SVN

Education

Education

  • Mathematics and Informatics, Master, Kherson State University

    Sep, 2002 - Jun, 2007

Interests

Interests

  • Music

    Listening a lotPlaying sometimes
  • Indoor

    Reading booksWatching moviesVideo gaming
  • Outdoor

    TravellingCyclingBiking
  • Personal development

    LearningOpen Source