CV | Resume
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 |
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 |
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