Position: C/C++ Software Engineer
Category: C++
English level: upper
Years of experience: 5

Completely reworked system update service that made it more stable, faster, testable, and also added the possibility for partial updates with decreased package size.

Was able to reverse-engineer and implement necessary changes to the Linux kernel to make a proprietary kernel module (that expected own proprietary kernel) work with the in-house built kernel. This unblocked the development of POC for a month before we finally received the necessary resources from the vendor.

Replaced local sockets-based IPC between the container and host parts of Android graphics emulation layer with own ashmem-based implementation that allowed to increase the FPS by two times.

Was responsible for implementing and supporting most of the macOS EndpointSecurity system extension module, which allowed to support BigSur+ versions.

Got Bachelor's degree in Software Engineering in 2018.
During that time I participated and got pretty good results in development and ACM-style competitions: (prizewinner of Institute- and Ukraine-level Olympiads in 2015, 2016, a participant in ACM ICPC world semifinals in 2015, 2016, 2017).
I have a solid 5 years of commercial development experience.

For the last ~2 years, I'm working as a C/C++ software engineer at an outsourcing company. The last 3 projects are:
- development and support of hardware-agnostic smart TV OS for a USA-based TV manufacturer (system-level software like system update service, centralized registry service, storage service, monitoring services, SDK, a toolchain for in-house and 3rd-party application development teams, etc.).
- POC of porting an existing solution to run containerized Android applications to a custom Linux-based Broadcom STB for a France-based telecommunications company.
- development and support of Linux/macOS cloud-based antivirus software that consists of interception modules (Linux kernel module, macOS KEXT/SysEXT), endpoint protection, and remote management module.

Before that, I've been working as a freelancer on various small but interesting projects (mainly with C/C++, sometimes C#, Java, and other languages/frameworks) including: parsers and interpreters; virtual machines; caching and process scheduling implementations; memory allocators; raytracing and computer graphics; network protocols and utilities; Linux kernel modifications; and many more. 

I have a strong knowledge of:
- C/C++ (embedded development practices, Linux kernel internals, STL, Qt);
- OOP/OOD, algorithms and data structures, multithreading, networking (Linux sockets API, protocols), Linux internals;
- C# (WinForms, WPF), Java Core, Bash.

Also, I'm familiar with Python, x86(x64)/ARM/MIPS assembly, OpenGL, JS, HTML/CSS, SQL, Functional Programming, cybersecurity practices, and much more interesting stuff.
I want to find a full-time permanently-remote job with interesting and challenging "never-done-before" tasks, an opportunity for professional development and career growth, and comfortable working conditions.

Not interested in gambling projects.