About the Role
We are looking for a Senior Software Engineer to design, build, and operate scalable cloud-native systems. You will work on distributed services, event-driven architectures, and modern DevOps pipelines while collaborating closely with product managers and other engineers in an Agile environment.
The ideal candidate is comfortable working across multiple backend technologies and understands how to design resilient systems that run reliably in containerised and cloud environments.
Key Responsibilities
- Design and develop scalable backend services using Node.js (NestJS) and Java / Kotlin (Spring Boot)
- Build and maintain event-driven architectures using Apache Kafka
- Develop RESTful and asynchronous APIs for internal and external services
- Design and optimise data models using PostgreSQL, MongoDB, and Redis
- Deploy and operate services across Windows Server, Docker, and Kubernetes environments
- Build and maintain CI/CD pipelines using GitHub Actions to automate testing, security checks, and deployments
- Implement and maintain cloud-native application architectures focusing on reliability, scalability, and observability
- Integrate Elasticsearch for logging, search, and analytics capabilities
- Ensure code quality and security standards using tools such as SonarQube, OWASP dependency checks, and TruffleHog
- Participate in Agile ceremonies including sprint planning, stand-ups, and retrospectives
- Mentor junior engineers and contribute to engineering best practices and architectural decisions
Required Skills & Experience
- Minimum 5+ years of experience
- Strong backend development experience with Node.js and NestJS
- Solid experience building services with Java / Kotlin and Spring Boot
- Experience working with Apache Kafka or other distributed messaging systems
- Strong knowledge of relational and NoSQL databases including PostgreSQL and MongoDB
- Experience using Redis for caching, messaging, or performance optimisation
- Hands-on experience with containerisation (Docker) and orchestration platforms (Kubernetes)
- Experience deploying or maintaining applications on Windows Server environments
- Practical experience building CI/CD pipelines using GitHub Actions
- Familiarity with cloud-native architecture patterns (microservices, distributed systems, resilience)
- Experience with Elasticsearch for search, logging, or monitoring solutions
- Knowledge of secure development practices, including static analysis and security scanning tools
- Experience working in an Agile/Scrum development environment