Qualified developer with over 10 years of software development experience.
Passionate about compilers, static analysis, system development, optimizations and software design.
Well versed in modern C++ and Linux; have extensive hands-on experience with Kotlin, Python, Lua, Go, Perl and PHP.
Designing and developing new features for KPHP, the transpiler which enables compilation of PHP scripts into C++
Performing optimizations of runtime (KPHP standard library) and transpiler
Performing optimizations of C++ code compilation time
Developing a framework for in-house binary protocol (a gRPC-like protocol)
Designing and developing embedded database in shared memory
Consulting PHP developers
Implementing test framework with test runner for testing KPHP on different platforms with different compilers and sanitizers; Integrating it into TeamCity CI and Github actions
Enabling KPHP compilation on MacOS
Designing and developing from scratch a new distributed compilation system for compiling C++ code on remote servers
Designing architecture of pluggable stats engine for Linux with HTTP interface for clients and gRPC interface for plugins which collects budget statistics in real time and combines it with a large number of aggregates
Designing and developing key components of the stats engine
Designing and developing complex plugins which allow the engine to define and govern multiple strategies of budget control with a heavy use of math models
Integrating a pack of developer tools: multiple compilers, sanitizers, special test framework for functional tests, unit tests, fuzzing tests; Integrating all these tools into Jenkins CI
Leading a team of 4 senior developers.
Providing technical expertise to other teams and making architectural decisions of the core platform
Developing and maintaining a high performance HTTP application server for Linux
Designing and developing a new MongoDB shared driver, which helps avoid the use of mongos proxy, significantly reduces request time, and improves MongoDB shard cluster stability
Designing and developing intricate logic for utilizing separate threads for all network communication: incoming HTTP requests, embedded HTTP client, DNS client, MongoDB client.
Designing and developing functionality for tracking memory utilization, tracking slow requests, profiling API calls
Introducing the TBB library to enable the use of concurrent structures
Developing and maintaining in-house tools for processing logs
Developing brand new in-house test framework with Python for functional testing
Giving lectures, consulting application developers, sysops and mentoring junior developers
Designing and developing new API for application developers with C++ and Lua
Refactoring and improving embedded DNS and HTTP client
Investigating and fixing complex internal issues with GDB and sanitizers
Working on in-house test framework with Perl for functional testing
Writing functional and unit tests with C++, Python, Perl and Lua