Reach out directly about this role
Working in the Moscow Government is an opportunity to make our city more modern and convenient. If you also care about Moscow, want to develop it and develop yourself, join our team!
Responsibilities:
Development, design, and evolution of high-load backend services using Java and C++ programming languages
Implementation of server-side business logic and database interaction
Ensuring data transfer and processing between systems within the backend architecture
Support and development of existing information systems
Participation in ensuring data integrity and consistency between system components
Development of applications in Java and C++
Design and implementation of REST API (JSON), gRPC (Protobuf), and GraphQL
Working with PostgreSQL and Oracle databases (Writing complex SQL queries, profiling, query plan optimization, PL/SQL / PL/pgSQL logic development)
Development and support of server-side business logic
Integration of services within a distributed system
Participation in the design of application architecture and system components
Handling and resolving incidents related to service operation
Design and implementation of automation services based on secure corporate messengers (TDM Enterprise and alternative platforms)
Correctness and stability of developed services and applications
Performance and optimization of server logic and database queries
Reliability of data exchange between system components
Maintaining code quality and adherence to architectural standards
Support and development of existing solutions
Code quality control, including regular code reviews (Java/C++), including those delivered by external development teams (contractors). Control of adherence to internal coding, security, and performance standards.
Participation in the acceptance of technical solutions and architectural components, including those from contracting organizations, assessing their scalability and integration readiness.
Integration with complex server logic and legacy code, requiring understanding of the existing codebase and its development without loss of current functionality.
Performance optimization under high load, including profiling and optimization of complex SQL queries, execution plans, and indexes in PostgreSQL/Oracle DBMS.
Scaling and ensuring fault tolerance, including maintaining service stability and availability under growing data volumes and loads.
Diagnostics and tracing of high-load systems, which includes finding, localizing, and promptly resolving non-obvious errors.
Ensuring correct service operation during API updates and modifications of dependent external systems.
Handling concurrent requests, neutralizing and leveling mutual deadlocks, and ensuring data integrity at the application, service, and DBMS levels.
Requirements:
Higher technical education
1+ year of experience in the relevant field
1+ year of experience developing backend systems in Java
Experience with server applications, APIs, and databases
Desired experience in developing distributed or high-load systems
Experience in large IT projects or enterprise development is welcome
Development of server applications in Java
Design and implementation of REST API (JSON/XML)
Understanding of HTTP, client-server architecture
Error handling, logging, basic fault tolerance
PostgreSQL and/or Oracle
Writing SQL queries, optimization
Working with transactions and indexes
Basic knowledge of PL/SQL or PL/pgSQL
Working with Git (branching, merge, code review)
Ability to understand other people's code
Understanding of multithreading and concurrent data access
Experience with distributed systems
Understanding of microservice architecture
Basic understanding of Kafka (as a message bus)
Docker (understanding of containerization)
CI/CD (GitLab CI / Jenkins)
Conditions:
1 month ago
Grade
Middle
Experience
from 1 years
Work Format
remote/hybrid/office
Employment
Full-time
AI writes it from your resume. You only have to send it.
By country