Printing tool Download PDF

Summary

I am an experienced backend & infrastructure engineer with software design interests and leadership skills. I love to automate manual jobs. I am passionate about site reliability engineering as I see how this culture helps to deliver the best services for customers. I believe my purpose is to help team members to grow their skills and to improve and simplify processes and daily routines to be successful.

In my free time, I like to contribute to open source communities. I believe that it is crucial to share people's knowledge and experience and I like to write blog posts and prepare talks and workshops about the technical things I know.

Work experience

July 2018now

Lead TechOps Automation Engineer

N26 - Berlin, Germany

I am leading a team whose main purpose is the automation of TechOps-related topics. Main stakeholders: HR, Helpdesk, Security, SRE, Compliance.

Tasks: Design and development of services, code review, releases. Technical management. People leadership.

Main Technologies: Go, PostgreSQL, Docker, Nomad, Vault, Consul.

Accomplishments:

  • Improved and automated several onboarding-related processes.
  • Designed from scratch and implemented a reliable system (monolith -> microservices) which implemented onboarding automation.
  • Introduced best practices of writing Cloud-Native Go applications (which were reused by some other teams).
  • Prepared a tool to generate new microservices automatically.
  • Prepared an Onboarding plan for Software Engineers of the TechOps Automation Team.
  • Supported a new project as an Interim Product Owner when it was necessary.
Oct 2017July 2018

Senior Go Developer

DCMN – Berlin, Germany

I was working on several projects as a backend and operations engineer. One of the projects was a high available RTB system with ~20k RPS in average. 

Tasks: Design and development of services, some refactoring and automation, codereview, releases, some operational (infrastructure) stuff. Contributing to a team working on the process improvements (e.g. decision making) at the company.

Main Technologies: Go, Python, C#, PostgreSQL, Aerospike, Elasticsearch, Redis, Docker, rkt.

Accomplishments:

  • Supported and improved existing systems to keep their reliable state.
  • Improved documentation of some complicated parts of the projects.
  • Shared best practices of Go programming with the team.
  • Fearlessly dived into Windows programming with C# :)
  • Introduced some container management and Cloud-Native topics.
Oct 2016Sep 2017

SWE / SRE / Team Lead

Openprovider – Novosibirsk, Russia

I was working on projects of new design vision as a Tech Leader / Scrum Master / Software Engineer. We were adopting a new way for Openprovider's applications: small independent microservices.

Tasks: Design and development of services from scratch, development of necessary libraries, some refactoring and automation, SRE topics.

Technologies: Go, MySQL, PostgreSQL, RabbitMQ, Etcd, Vault, Docker, Kubernetes, Ansible, HAProxy, Zabbix, Prometheus, Grafana, Swagger, Jenkins, Drone CI.

Accomplishments:

  • Defined requirements for services and infrastructure with Go, Docker, and Kubernetes.
  • Prepared a typical "template" service and develop its implementations for a few different business tasks (production-ready state).
  • Our team prepared a workshop "Production-ready microservices with Go and Kubernetes" to share our knowledge and experience worldwide
Aug 2016Oct 2016

Software Development Engineer

mc² software – Moscow, Russia

Different tasks for MegafonTV (http://megafon.tv) backend web services: REST API, push notifications, messanging, special offers, dealing with logs and more.

Technologies: Go, PostgreSQL, Ansible, Drone CI.

Nov 2015Aug 2016

Lead Software Development Engineer

Fabrikant.ru – Moscow, Russia

I was a team leader and a Scrum master of a small team (5 people).

Tasks: registration, search, tariff management and other important services of Fabrikant.ru platform.

Technologies: Go, PHP, MySQL, Sphinx, Ansible, Nginx, GitLab CI.

Accomplishments: 

  • Significantly improved source code after some audit, improved architecture.
  • Added much more transparency to the process of development.
  • Automated some release processes. The main thing: after these changes the team was able to produce tasks in time.
    Apr 2013Oct 2015

    Senior Software Development Engineer

    NGS.ru – Novosibirsk, Russia

    I was a lead developer of the team who made big project N1.ru from scratch.

    Tasks: project design and basic framework, search, REST API design and development of services, some automation.

    Technologies: PHP, MySQL, MongoDB, Memcached, ElasticSearch, Sphinx, Nginx, Zabbix.

    Accomplishments:

    • Released new project started from scratch (N1.ru) with service-based architecture under the hood.
    • Developed the standard of REST API documentation (released for all projects in the company).
    • Instilled culture of unit-testing.
    • "Best employee" award in the nomination "Popularizer of the year" for the series of internal talks.
    Oct 2011Mar 2013

    Software Development Engineer

    2GIS – Novosibirsk, Russia

    Worked on REST API services.

    I was a team leader of a small team (3-4 people).

    Tasks: Import data from internal and external sources.

    Technologies: PHP, Python, PostgreSQL, PostGIS, Sphinx, Memcached, Redis, Nginx, Chef, Jenkins.

    Accomplishments:

    • Improved data update processes.
    • Found the way to make monthly feature releases in time with an excellent quality.
    • Improved processes of interaction with other teams.
    Jun 2010Sep 2011

    Software Development Engineer

    Novotelecom – Novosibirsk, Russia

    Worked on external websites and internal automation projects.

    Main external project: CN.ru.

    Technologies: PHP, MySQL, Nginx, Memcached, JavaScript, HTML, CSS

    Sep 2007Sep 2009

    Software Development Engineer

    Egida, Informatization Center – Novosibirsk, Russia

    Made a lot of simple websites for the projects of Novosibirsk Government (Education Department). Taught schoolchildren to make websites and blogs.

    The main project: NIOS. Children's project: TIMIX.

    Technologies: PHP, MySQL, JavaScript, HTML, CSS.

    Education

    20052009

    Applied Mathematics and Informatics, Bachelor's degree

    Novosibirsk State Technical University (NSTU)

    Disciplines: Data structures, Algorithms, Graph theory, Object-Oriented Design and programming, Databases, System programming, Computer systems and networks, Concurrent computing, Probability theory and statistics, Mathematical modeling, Mathematical physics, etc.
    Programming languages: C/C++, Fortran, PHP, Prolog, Haskell, Python, Java.
    Activities: Competitive math and programming.