Senior Software Engineer (Java)
Senior Software Engineer – Nottingham Engineering Hub At LSEG, we’re transforming financial markets through data, technology, and innovation. Our teams build resilient, scalable platforms that power global finance. If you’re passionate about writing clean, maintainable code, building cloud-native applications, and delivering software that makes an impact, we invite you to bring your skills to our collaborative tech hub in Nottingham. About The Role As a Senior Software Engineer , you will:
- Design and develop Java-based microservices for cloud-native applications on AWS.
- Work in an Agile environment, embracing trunk-based development, continuous delivery, and a shift-left approach to quality.
- Collaborate closely with engineers and quality specialists to ensure microservices testing strategy is applied effectively:
- Unit tests for logic correctness.
- Component tests for service boundaries.
- Contract tests for service interactions.
- Simple, maintainable end-to-end tests for critical workflows.
- Have an appetite to run containerized services locally (e.g. Docker, Podman) to prevent integration issues and keep pipelines clean.
- Contribute to CI/CD pipelines, ensuring fast, reliable deployments.
- Participate in code reviews, refinement sessions, and planning to improve design, testability, and maintainability.
- Take ownership of your work and help the team continuously improve through retrospectives and knowledge sharing.
- Build and maintain efficient, reusable, reliable, and secure Java code based on user stories and software designs.
- Develop and integrate RESTful APIs and microservices architectures.
- Ensure quality through automated testing and a shift-left approach.
- Contribute to trunk-based development workflows and maintain healthy continuous delivery pipelines.
- Participate in Agile ceremonies and provide timely updates on progress.
- Analyse requirements, provide design input, and estimate complexity.
- Solid experience with Java and the JVM ecosystem.
- Strong understanding of object-oriented programming, design patterns, and microservices architecture.
- Experience with unit testing and writing clean, maintainable code.
- Familiarity with microservices testing strategy (unit, component, contract, end-to-end).
- Knowledge of AWS services (SQS, Lambda, API Gateway, S3, CloudWatch, IAM).
- Experience with CI/CD pipelines and trunk-based development.
- Good communication skills and a collaborative mindset.
- Familiarity with Git and modern branching workflows.
- Experience working with Elasticsearch
- Experience with containerization (Docker, Kubernetes, EKS, ECS).
- Familiarity with CI/CD tooling (Jenkins, GitLab).
- Experience with BDD practices
- Knowledge of secure coding practices and observability (distributed tracing, monitoring).
- Infrastructure as Code: Terraform, CloudFormation.