Specializing in the development of scalable, fault-tolerant, and high-performance enterprise systems using Java. Hands-on experience in designing RESTful web services, optimizing databases, and implementing complex algorithms. Proficient in modern development tools like Git, Maven, Docker, JUnit, CI/CD to ensure code quality and process automation.
- Java (JDK 8/11/17) — Collections, Lambda, Stream API, Concurrency, JDBC, JPA
- Spring Boot 2.x/3.x — Architecture, best practices, production deployment
- Spring Data JPA & Hibernate — complex mappings, optimization, N+1 problem solutions
- PostgreSQL — schema design, indexing, query optimization, slow query analysis
- Docker & Docker Compose — production-ready images, multi-stage builds, local development
- REST API — API design, HTTP methods, status codes, OpenAPI/Swagger
- Redis — caching, TTL, caching strategies
- SQL & Query Optimization — indexing, optimization
- JUnit 5 & Mockito — Unit testing, integration testing, mocking
- Testcontainers — integration testing with real databases and external services
- GitLab CI/CD — pipeline configuration, automated build and deployment
- Maven & Gradle — dependency management, build configuration
- Git / GitHub / GitLab — daily hands-on experience, feature branching, code review
- GraphQL — core concepts, basic queries
- RabbitMQ — message broker concepts
- Prometheus & Grafana — monitoring, metrics, dashboards
- Linux / Ubuntu — administration, shell scripting
- Python / Bash — automation, scripting, tooling
- Kubernetes (Basics) — pods, services, deployments
- Apache Kafka — producers/consumers, consumer groups, DLQ, error handling, 1M+ events/day
- Microservices Architecture — system design, monolith decomposition, service-to-service communication
- Domain-Driven Design (DDD) — bounded contexts, aggregate roots, repository pattern
- Design Patterns — Repository, Service, Factory, Singleton, Decorator, Strategy
- SOLID Principles — Single Responsibility, Open/Closed, Liskov Substitution, Interface Segregation, Dependency Inversion
- Agile / Scrum — sprints, planning, retrospectives, daily stand-ups
- Code Review — conducting reviews, incorporating feedback, best practices
- Pair Programming — collaborative development experience
- TDD — test-Driven Development, code coverage, quality assurance
Degree / Higher Education:
- Belarusian State University of Informatics and Radioelectronics — specialized education with a focus on system engineering, ergatic systems, information protection regulations, and software architecture.
Additional learning & Specialized training:
- Java. Programming Methods (I. Blinov, A. Romanchik) — deep dive into object-oriented design, Java Core algorithms, design patterns, and multithreading fundamentals.
