Work Experience
Senior Software Engineer, Clipboard protection hooks
Duration: 2023
Summary:- Researching behavior of WinAPI that interacts with clipboard
- Implementing COM-server with clipboard protection functionality
- Implementing hooks DLL with clipboard protection functionality and monitoring features
- Investigating and solving problems with clipboard interaction for some specific application with non-standard clipboard
Responsibilities: Researcher, Developer
Technologies: C++17, mhook, WinAPI, ATL, COM
Senior Software Engineer, Driver filter for Windows Registry redirection
Duration: 2022
Summary:- Researching how to redirect registry keys for particular process to isolate it
- Implemented PoC that redirects registry calls for children of the target process
Responsibilities: Researcher, Developer
Technologies: C for KMDF, Windows Kernel API
Senior Software Engineer, Antikeylogger solution in KMDF driver
Duration: 2021
Summary:- Researching how to intercept keystrokes in kernel and deliver them to the target process in user mode
- Implemented PoC with interceptor driver and consumer DLL that should be injected to the protected process
Responsibilities: Researcher, Developer
Technologies: C for KMDF, Windows Kernel API
Senior Software Engineer, Software defined network
Duration: 2020-2021
Summary:- Creating network namespaces, interfaces, wireguard tunnels as systemd units
- Implemented parts of heavily loaded multithreaded system
- Making benchmarks
- Monitoring the network namespace resources and exporting to Prometheus
Responsibilities: Backend developer
Technologies: Go, bash, Docker, Prometheus, Systemd, bird
Senior Software Engineer, Property management system
Duration: 2020
Summary:- Creating architectures for microservices decomposed by managed data
- Implementing microservices with GRPC internal API using code generation tools
- Designing and implementing GraphQL interface for API-gateway using code generation tools
- Integrating US payment system
- Integrating tenant screening service
Responsibilities: Lead backend developer, Researcher
Technologies: Go, ArangoQL, bash, Docker, Kubernetes, GraphQL, GRPC (proto3)
Senior Software Engineer, Software defined perimeter
Duration: 2019-2020
Summary:- Separating the project on specific modules, creating architectures for each module and their interaction inside and outside the infrastructure
- Implementing SDP controller with Keycloak as default IDP
- Implementing user authorization and authentication with JWT on SDP controller
- Managing user access to internal and external resources using DAC logic
- Designing and implementing REST API using Swagger and golang code generation tools
- Integrating OKTA as external IDP
Responsibilities: Researcher, Backend developer
Technologies: Go, bash, Swagger, Redis, Hashicorp Consul
Senior Software Engineer, Corporate identity provider based on microservices
Duration: 2019
Summary:- Implementing interaction between services using REST API and NATS queue
- Implementing data analyzing aimed to protect privacy of logged in user
- Implementing fast and secure data sharing between services
- Migrating PostgeSQL tables to the new schemas
Responsibilities: Researcher, Dev manager, Backend developer
Technologies: Go, SQL, bash, Docker, Kubernetes, go-kit, go-nats, Redis, PostgreSQL, DocumentDB (MongoDB), Hashicorp Consul & Vault
Senior Software Engineer, Kubernetes native policy engine
Duration: 2019
Summary:- Researching the work of Kubernetes API server
- Implementing interaction with Kubernetes API server using k8s repo packages
- Implementing CRD with own controller
- Implementing validation and mutation admission webhooks in CRD controller
- Made cloud application stand-alone and self-tuning for work inside and outside the cluster
Responsibilities: Researcher, Dev manager, Developer
Technologies: Go, bash, Kubernetes, Custom Resource Definition, Admission Webhooks
Senior Software Engineer, Highly available service by client's geolocation
Duration: 2018
Summary:- Researching the concept for AWS
- Writing scripts and resource definitions for creating infrastructure in the cloud
- Calculating development and operation costs for AWS, Azure and Google Cloud
Responsibilities: Researcher, Developer
Technologies: Python, bash
Senior Software Engineer, Autotest for RDP Server component
Duration: 2018
Summary:- Implemented scripts that prepare and manage Windows and Linux machines on Hyper-V
- Implemented scripts for starting RDP connection from the Windows as server
- Implemented Autoresponder for the RDP client side to determine successful RDP connection
- Implemented tests management using
- csv file
- Implemented automated test deployment and launching using Bamboo
Responsibilities: Researcher, Single developer
Technologies: PowerShell, C#, bash, WinRM
Senior Software Engineer, RDP Server component for custom authentication
Duration: 2018
Summary:- Researching TPM, reversing Windows binaries for its support
- RDP virtual channel implementation
- Implementation of Credential Provider with custom Credentials
- Researching OS bugs and limitations
- Improving functionality and fixing bugs in PnP driver
- Implementing COM-server as Windows service
- Implementing interaction with Active Directory and Local System Authority from C# and C++ code
Responsibilities: Researcher, Developer
Technologies: C++, C#, PowerShell, bash, Credential Provider, COM, TPM API, Active Directory
Senior Software Engineer, Provisioning of VMs on VMWare vSphere and Hyper-V
Duration: 2017-2018
Summary:- Fixing bugs in windows services
- Implementing support of new version of VMWare vSphere in provisioning module
- Fixing bugs in PnP driver for USB-devices
Responsibilities: Developer
Technologies: C++, C, VB6, Java, COM, KMDF
Senior Software Engineer, Restoring damaged SQLite databases
Duration: 2017
Summary:- Researching SQLite database structure
- Fixing and improving legacy code
- Implemented parsing of all kinds of SQLite pages
- Benchmarking and improving performance
Responsibilities: Dev manager, Developer, Researcher
Technologies: C++
Senior Software Engineer, Cloud-based storage and analytic tool for personal sensitive data
Duration: 2016-2017
Summary:- Implemented Server’s REST API for storing, processing and retrieving user data
- Implemented desktop client application with Qt for Windows and Mac OS
- Fixing urgent bugs on server’s side
Responsibilities: Developer
Technologies: C++, C#, Python, .Net, boost, gtest, RPC, SQL
Senior Software Engineer, Forensic tool targeting mobile devices for Windows and Mac OS
Duration: 2013-2016
Summary:- Decomposing, refactoring, testing and documenting legacy code
- Implementing new features in obtaining and analyzing useful data
- Analyzing and improving performance
- Researching new abilities for the product using reverse engineering
- Separating functional parts of the product as separate sub-products in form of static and dynamic libraries with CLI
Responsibilities: Developer, Researcher, Acting Dev manager
Technologies: C++, C#, Python, Qt, boost, gtest, openssl, curl, CUDA, OpenCL, protobuf, tinyxml, jsoncpp