CV | Resume


avatar

Location: Bar, Montenegro

Contacts: contacts

SUMMARY


Experienced backend developer with 6 years of experience. Proficient in multiple programming languages, including primary ones such as Go, Python, Kotlin, Java, C#, and C. Confident with databases like PostgreSQL, MySQL, message brokers Kafka, RabbitMQ and NATS. Always open to learning new programming languages, services, and technologies. Extensive experience in code reviews, project decomposition into tasks, service architecture design, writing tests, and working with TDD. Able to work effectively in both small and large teams, and adept at establishing rapport with colleagues. I have English language level B2.

WORK EXPERIENCE


Senior software developer

May 2022 - present

OZON, Kazakhstan

Stack: Go, Python, PostgreSQL, Kafka, Redis, Kubernetes.

  • Developed a series of microservices incorporating various complex technical solutions: state machines, cold and hot caches, instance synchronization, and more. Developed those services as reliable as possible and with availability for horizontal scaling;
  • Actively contributed to the development of shared code libraries. For instance, extended the SQL query builder squirrel to support PostgreSQL syntax features. Also, created several useful libraries such as a batch Kafka consumer library, worker libraries with timeouts, retries, and other features, and partition generator for partitioned PostgreSQL tables;
  • Reduced the response time of one of the services by optimizing the data storage schema in its rapidly growing database and distributing data across shards. Also, implemented seamless migration from one database schema to another with zero downtime;
  • Participated in developing architecture for several projects and decomposing them into tasks.

Middle software developer

February 2021 – May 2022

SpectrumData, Russia

Stack: Kotlin, Gradle, Ktor, Kodein, PostgreSQL, Go, Cassandra, RabbitMQ.

  • Developed over 20 small stateless microservices acting as adapters for data from external providers. Optimized the process of creating and launching such services by writing a template and code generator for rapid initialization of new microservices;
  • Created a utility for bulk management of repositories in GitLab (settings, access rights, etc.);
  • Participated in the development of shared codebase and libraries;

Middle software developer

February 2020 – February 2021

Alanis Software, Russia

Stack: Python, Java, C#, WPF, OpenCV, SQLite, MySQL, MSSQL, AWS EC2, Docker.

  • Participated in the development of an application for tracking object/subject movement in videos, detecting their intersections and interactions. Developed a module that computed this data from sequences of coordinates and sizes of objects in frames. Also, designed part of the UI for this application using WPF;
  • Created an Android application for scanning special tags on individuals vaccinated against COVID-19, as well as validating them through a third-party API;
  • Developed a service for multithreaded parallel processing and searching for identical real estate listings on multiple property websites using fuzzy text comparison and matching similar property photos.

Middle software developer

February 2021 – May 2022

SpectrumData, Russia

Stack: Kotlin, Gradle, Ktor, Kodein, PostgreSQL, Go, Cassandra, RabbitMQ.

  • Developed over 20 small stateless microservices acting as adapters for data from external providers. Optimized the process of creating and launching such services by writing a template and code generator for rapid initialization of new microservices;
  • Created a utility for bulk management of repositories in GitLab (settings, access rights, etc.);
  • Participated in the development of shared codebase and libraries;

Electronics engineer
Junior software developer

June 2017 – February 2020

Granch, Russia

Stack: Embedded C, C#, WPF, PostgreSQL.

  • Participated in the development of algorithms for positioning objects in mines based on signal level information from stationary and mobile base stations;
  • Developed an application for underground navigation in mines for a specialized spark safe smartphone (on the Android OS) designed for use in mines;
  • Took part in the development of a desktop application (C#, WPF) for monitoring equipment parameters and personnel status in mines.

EDUCATION


Bachelor’s degree in Electronics engineering

September 2014 – June 2018

Novosibirsk State Technical
University, Russia

SKILLS


  • Languages:
    • Go – 3 years
    • Kotlin – 2 years
    • Python – 4 years
    • Java – 1 year
    • C# – 2 years
  • Databases, message brokers:
    • PostgreSQL – 4 years
    • MySQL – 1 year
    • Redis – 2 years
    • Kafka – 4 years
    • RabbitMQ – 1 year
  • Other tools and technologies:
    • Docker, Kubernetes, Git, Make, Linux, Bash, Prometheus, Grafana, Vault, Jira, Confluence, YouTrack, Upsource, TDD, Codereview
  • English: B2