Senior Java Backend Developer

Project description

The project is part of the Credit, Asset-backed & Securitized Products (CASP) division of an investment bank, focusing on platforms that support securitization and structured finance products. The current primary objective is migrating existing on-premise systems to a modern Microsoft Azure cloud environment, transforming legacy architecture into scalable, cloud-native solutions. It involves rebuilding and adapting systems used for structuring, processing, and distributing securities such as ABS, MBS, and CLOs. The platform integrates with trading, risk, and regulatory systems to support both real-time and batch data processing. The target architecture follows a microservices-based approach with containerized services deployed on Azure Kubernetes Service (AKS). Infrastructure provisioning and configuration are managed using Terraform as Infrastructure as Code. The system leverages REST APIs and event-driven communication to ensure scalability and flexibility during and after migration. Special focus is placed on maintaining data consistency, performance, and regulatory compliance throughout the transition. The project emphasizes high availability, resilience, and observability in a complex financial ecosystem. AI-assisted development tools like GitHub Copilot are integrated to enhance engineering productivity. The environment promotes modern engineering practices, automation, and continuous improvement.

Responsibilities

  • Design, develop, and maintain backend services using Java 11+ and Spring Boot within a microservices architecture. Build and enhance RESTful APIs and message-driven services supporting securitization and credit workflows. Develop and deploy cloud-native applications on Microsoft Azure, including AKS-based container orchestration. Use Terraform to define and manage infrastructure as code. Work with containerization technologies (Docker) and contribute to CI/CD pipelines using GitLab or GitHub. Implement integrations using messaging systems such as Kafka, IBM MQ, or Tibco EMS. Collaborate on system design, ensuring scalability, resilience, and alignment with distributed architecture principles. Develop and optimize database interactions using Azure SQL, Oracle, or Sybase. Write and maintain unit, integration, and end-to-end tests to ensure code quality and reliability. Implement monitoring, logging, and observability practices to support production systems. Utilize Linux/Unix skills for troubleshooting and scripting. Leverage AI-assisted development tools to improve efficiency while maintaining high coding standards.

SKILLS

Must have

  • Strong object-oriented programming skills with Java 11+ Extensive experience with Spring Boot / Spring ecosystem Hands-on development of Web and/or REST APIs and message-driven services Experience building and running containerized applications Strong experience with Azure cloud, including: Infrastructure as Code (IaC) using Terraform Kubernetes (AKS) and container orchestration Compute (VMs) and storage solutions (e.g., Azure Files) Solid Linux/Unix skills (shell scripting, system understanding) Experience with AI-assisted development tools (e.g., GitHub Copilot) integrated into development workflows Experience with GitLab / GitHub, IntelliJ / VSCode

Nice to have

Microservices architecture and system design Messaging and integration technologies: Kafka, IBM MQ, Tibco EMS Relational databases: Azure SQL, Oracle, Sybase Testing frameworks (unit, integration and E2E testing) CI/CD pipelines (GitLab / GitHub) Monitoring and observability practices