Skills

This page highlights my technical expertise, programming experience, and complementary skills - from backend engineering and system development to freelance capabilities and language proficiency.

Programming Languages

Rust
CLI tooling, secure systems, automation. It is my go-to language for new projects and general applications (and also my favorite).
Java
Backend engineering, REST APIs and desktop applications. The language I am most proficient with.
C++
Low-level development, performance-critical systems. This is the language I want to improve my skills at the most.

Tools & Technologies

Git & Github
Branching, pull requests, collaboration and CI pipelines. I use it in all of my projects for version control.
Docker
Docker compose setups, containerization for development and deployment.
Build systems
Maven, Gradle, Cargo, Make - familiar with various build tools across languages.
SQL (PostgreSQL)
Basic schema design and queries for PostgreSQL databases. Used it in my backend projects.

Frameworks & Ecosystems

Spring Boot
Experience building backend services and REST APIs with Spring Boot, as well as integrating with databases and security.
JavaFX
Built desktop applications with JavaFX, focusing on UI design and user experience.
Tokio
Used it for asynchronous programming in Rust and building automated bots.
Windows API
Familiar with low-level Windows programming using the Windows API for building utilities and system tools.
Minecraft Plugins
Experience developing Minecraft server plugins using the Spigot API.

Core Competencies

Memory model
Understanding of memory management concepts including stack vs heap, pointers, references, and ownership models.
Backend & API design
Experience designing and implementing REST APIs, including routing, data serialization, and authentication.
Data structures & algorithms
Good knowledge of common data structures (linked lists, trees, hash maps and sets, graphs) and algorithms (sorting, searching). Implemented my own versions from scratch.
Multithreading & async
Familiar with concurrent programming concepts, thread safety, synchronization, and asynchronous programming paradigms.
OOP
Strong understanding of object-oriented programming principles such as encapsulation, inheritance, and polymorphism. My primary paradigm when working with my of languages.
Security basics
Understanding of encryption algorithms, secure storage practices, and basic security principles in software development.

Applications & Platforms

IDEs and text editors
Neovim is my primary text editor, but I use JetBrains IDEs like IntelliJ IDEA and RustRover for larger projects.
Linux
Proficient with the command line and common CLI tools for development and system administration. I use Arch Linux on daily basis.
Premiere Pro
Video editing, special effects and sound design. Experienced in using Adobe Premiere Pro for freelance projects.
Photoshop
Image editing, graphic design and photo manipulation. Skilled in using Adobe Photoshop for creating Youtube thumbnails in specific.

Soft Skills

Team leadership
Experience leading small teams in project development, coordinating tasks, and driving progress. My favourite role to take.
Self-learner
Strong ability to quickly learn new technologies, programming languages, and frameworks independently. Most of my skills were learned independently by myself.
Workflow Organization
Skilled in organizing digital workflows for efficiency and task management using tools like Trello and Todoist.
Passionate
Coding isn't only my job - it's my hobby.

Languages

Russian
Native proficiency (C2).
English
Advanced (C1-C2).
German
Elementary proficiency (A2-B1).