Обо мне

14 years within industry, more than 6 last years I have been in charge of designing architecture of complex systems that can easily scale by choosing tech stack, define core components and implement the most critical parts. I have been hiring, coaching and managing team of developers as well as run integration within third party agencies.

Deep understanding of OS internals in addition to a wide exposure to modern technologies allow me to quickly prototype proof-of-concept solutions to showcase different approaches of addressing demands of clients.

Math background and passion for advanced concepts of Computer Science (AI, ML) allow me to effectively integrate innovative approaches of data processing and analysis into software of companies from domains of oil, telecom, advertisement industries or within fluid startup environment.

Ability to lead and coach team by bringing values of hacker culture grant me with acquaintance of many high caliber professionals who can be used for any time-critical projects as a freelancers/consultant to meet strict deadlines.

Опыт работы
Ноябрь 2015 — Июнь 2018 (2 года и 8 месяцев)
oculus technology
senior software architect
Обязанности и достижения

Senior Architect: 

* Design, prototype, build and perform profiling of high throughput highly available data processing pipelines (peak up to 1.5 mln events per seconds).
* Re-factor of business critical components of various products across the whole stack
* Cassandra, Kafka, Elastic performance tuning.
* Containerization of applications
* Introduce company for modern SDLC practices and help to integrate it to be coherent with business goals.
* Pre-sales, requirements assessments, investigation of disaster incidents, sizing and hardware planning, etc.
* Develop and run internship program: software development, data analysis

Head of analytics department:

* Add several key functionalities for company's products portfolio.
* Create a discovery platform with set of analytical sub-modules on top of Apache Spark.
* Build a toolbox for algorithms assessments for data discovery and quick hypothesis checks
* Assessment and adaptation of methods of AI\ML for such tasks as predictions\clusterization.
* Application of methods Natural Language Processing (NLP) according to business goals.

Side projects:

Designed, implemented and optimized crypto currency-trading systems:
- SOA, microservices, application containerisation
- services for live data acquisition and signalling
- high throughput low-latency fully automated trading bot
- inference engine for models backtesting

Used technologies\tools:

Big data & high load. Data mining. Distributed computing. Statistics. NLP. Machine learning. Reverse engineering. Caffe. Zeppelin. Spark. Elastic. Kafka. Protobuf. C++. Boost. Scala. Python. Java. Blockchain. Agile. AWS. Scikit. Redis. Golang. Microservices.

Январь 2015 — Ноябрь 2015 (11 месяцев)
senior software engineer
Обязанности и достижения
  • Develop general architecture of server components, choose technology stack for implementation, design database structure and implement middleware layer for interaction with 3rd party systems
  • Build web-crawler for machine learning algorithms evaluationPerform evaluation of various machine learning techniques, embed most promising approach to general pipeline
  • Adapt core of recommendation engine for high-load project by profile and optimize bottlenecks
  • Define and manage Mesos cluster deployment strategyControl and manage of integration various clients (mobile/web) to backend services
  • Define and control execution of sprints for freelancers
  • Provide technical leadership and coaching for team

Used technologies/tools:

python, postgres, elasticsearch, redis, scikit, scrapy, nltk, gensim, selenium, Mesos cluster stack, AWS stack, vagrant, docker, devops, git, jira, SOA, RESTful

Май 2012 — Декабрь 2014 (2 года и 8 месяцев)
Нижний Новгород
Обязанности и достижения

Create 3d-reconstructing SLAM-based software:

  • leadership in both research and development
  • prototype, implement and evaluate the proposed solutions
  • investigate and integrate modern methods of Computer Vision into existent application
  • manage, motivate, and build engineering team

Used technologies\tools:

computer vision, OpenCL, openCV, pointclouds, iSam, fovis, CUDA,multi-view geometry, segmentation, registration, pose estimation/bundle adjustment, real-time reconstruction


Easy-to-use solution for 3d-reconstruction was developed providing speed and accuracy of the modern research projects.

Сентябрь 2011 — Октябрь 2013 (2 года и 2 месяца)
principal software engineer
Нижний Новгород
Обязанности и достижения
Обязанности: - Lead multiple business-critical projects: - I am in charge of mobile clients developments, network's monitoring software suite and prototyping new projects for investigating new markets - Provide guidance and coaching to my team and to the neighboring projects - change rules of interaction between departments and customer Достижения: - Conquer new customers by delivering projects under high pressure circumstances - Decreasing deployment period of products by two times - Decreasing period of fixing issues by four times
Апрель 2008 — Сентябрь 2011 (3 года и 6 месяцев)
Нижний Новгород
Обязанности и достижения
Develop and sustain software for processing network devices Development of a multi-threaded\ multiprocessing NMS application under Linux\Solaris (C\C++, NetSNMP, Pthreads) Sustain and improvement polling module for net processing device via CORBA TMF814 spec. (MICO library) Work with oracle database (PL\SQL, otl library) Redesign\refactoring old source code Used technologies\tools: Subversion, GNU Make, gdb, Source Insight, Glow Code, valgrind.
Январь 2008 — Апрель 2008 (4 месяца)
system architect-programmer
Нижний Новгород
Обязанности и достижения
Developing CRM system: Database design (MySql and SQLite) Development system architecture from scratch Create user’s GUI and man pages (using JVCL, Globuslib libraries) Management of programmer’s team work (3 programmers) Work with OLE (for access to 1c base, excel) Used technologies\tools: NSIS, Borland C++ Builder 6, WinAPI, Help Scribble, Glow Code
Октябрь 2006 — Декабрь 2007 (1 год и 3 месяца)
Нижний Новгород
Обязанности и достижения
Work in sustaining team: fix bug and make addition in main project (IVR system). issue analyzing (according to customer logs and letter, crash dump or description of abnormal behavior of system) investigating reason of error (investigate customer system settings, project configuration, source code) make and test solution, provide test case and other info for testing patch Used technologies\tools: C\C++, ClearQuality, ClearCase, GNU Make, VC++
Апрель 2004 — Октябрь 2006 (2 года и 7 месяцев)
Нижний Новгород
Обязанности и достижения
Design GUI for easy access to database. Has been involved in: Developing in C++ and SQL Technical support Writing the user guide documentation Software testing Analyze of the requirements specification Used technologies\tools: Firebird, IBExpert, Borland C++ Builder 6
Высшее образование
Январь 2001 — Январь 2007
Вычислительной математики и кибернетики
Нижний Новгород