-
Design, develop, and maintain robust and scalable backend services using Java.
-
Participate in the modernization and migration of legacy systems to cloud-native architectures.
-
Implement service-based architecture with distributed services and RESTful APIs.
-
Utilize hexagonal (Ports and Adapters) / layered architectures to ensure maintainability and testability.
-
Implement messaging patterns, including request-reply and publish-subscribe, using message brokers like Artemis ActiveMQ (or alternatives Kafka, RabbitMQ).
-
Collaborate with cross-functional teams to define, design, and ship new features and enhancements.
-
Optimize applications for maximum speed and scalability, including the use of caching systems such as Apache Ignite and Redis.
-
Conduct code reviews, provide feedback, and ensure adherence to best practices and coding standards.
-
Employ distributed transaction patterns as necessary to ensure data consistency across services.
-
Write and maintain Pact tests for contract testing and utilize Arch Unit for architecture validation.
-
Generate API documentation using SpringDoc OpenAPI and manage database migrations with Liquibase.
-
Document technical specifications and architectural designs for future reference.