Backend Systems Engineer
Description
As a Backend Systems Engineer, you'll be responsible for architecting and developing the backend that powers both the Endl web/mobile frontend and our partner-facing API layer. You'll work across the present Microservices, designing Java-based microservices, optimising message queues, and ensuring that the system maintains reliability, speed, and fault tolerance under high transaction loads.
This role requires a deep understanding of distributed systems, system design, and asynchronous architecture. You'll collaborate with product, DevOps, and frontend teams to deliver a unified backend that scales for both direct users and enterprise partners.
Responsibilities:
- Design and develop distributed backend systems in Java (Spring Boot) following microservices principles.
- Architect and develop a queue-driven system (SQS/RabbitMQ/Kafka) for processing user and partner API events asynchronously.
- Build and optimise RESTful and internal APIs for frontend clients and partner integrations.
- Design and manage PostgreSQL/MySQL databases, ensuring schema scalability and query performance.
- Implement caching and rate-limiting mechanisms for partner APIs.
- Collaborate with frontend teams to ensure low-latency, secure data flows between web/mobile clients and backend services.
- Create detailed system design documents covering entity relationships, service interactions, and message flow through queues.
- Implement robust authentication and authorisation (JWT + API key-based AuthZ) for customers and partners.
- Ensure fault tolerance, retry mechanisms, and monitoring for queue-based workflows.
- Conduct load testing, profiling, and scaling exercises to ensure system reliability under growing partner/API load.
- Maintain technical documentation for APIs, message formats, and service dependencies.
Requirements:
- 5+ years of hands-on experience in backend development using Java (Spring Boot).
- Strong understanding of system design, distributed architecture, and concurrency patterns.
- Experience with message queues (AWS SQS, RabbitMQ, Kafka).
- Strong SQL skills with experience in PostgreSQL/MySQL, including indexing and optimisation.
- Familiarity with RESTful API design, API key management, and rate limiting.
- Proficient in writing clean, modular, and well-documented code.
- Comfortable with CI/CD, containerization (Docker), and cloud infrastructure (AWS).
- Experience working in agile teams and collaborating with cross-functional developers.
- Understanding of authentication/authorisation (JWT, API keys, OAuth).
- Solid debugging, performance tuning, and monitoring skills.
- Experience with microservice orchestration and service discovery.
- Exposure to multi-tenant systems or partner-facing APIs.
- Familiarity with Kubernetes and Terraform for infra automation.
- Experience integrating webhooks, async job processors, or background workers.
- Must to have: Knowledge of financial services/fintech workflows (KYC, AML, payments, FX).
- Exposure to event-driven architectures or CQRS patterns.