Summary
✨ AI‑Generated
Join a senior engineering team developing modular, reusable Java applications and microservices. You will design REST APIs, apply clean code and established design principles, practice TDD, build comprehensive automated tests, and integrate quality analysis into CI/CD pipelines.
Highlights
Senior Java engineering role focused on clean, maintainable and testable software, modern microservices, REST APIs, strong engineering practices, automated quality controls, and continuous improvement.
Description
Roles and Responsibilities
Software Development
Design, develop, and maintain high-quality, maintainable Java applications using clean code principles, SOLID principles, and established design patterns.Build modular, reusable, and testable Java applications and RESTful APIs.Develop microservices using frameworks such as Spring and Spring Boot.Apply strong knowledge of core Java, including:CollectionsConcurrency and multithreadingGenericsStreams and lambdasException handlingJVM memory managementTesting and Quality Engineering
Write comprehensive and meaningful unit tests using JUnit and Mockito to ensure code correctness, reliability, and maintainability.Apply Test-Driven Development (TDD) practices to drive software design, maximize test coverage, and prevent regressions.Integrate automated unit testing, static code analysis, and quality gates into CI/CD pipelines.Use tools such as SonarQube and JaCoCo to measure, enforce, and continuously improve code quality and test coverage.Evaluate and adopt automated testing and AI-assisted test-generation techniques where appropriate.Code Quality and Technical Excellence
Champion code quality through thorough code reviews, pair programming, and adherence to coding standards and best practices.Refactor and improve existing codebases to reduce technical debt and enhance readability, performance, maintainability, and testability.Diagnose, troubleshoot, and resolve complex technical, performance, and reliability issues.Promote clean code, SOLID principles, design patterns, and engineering best practices across development activities.Collaboration and Delivery
Collaborate with architects, business and application analysts, operations teams, and testing specialists to deliver reliable, secure, and high-quality solutions.Work effectively within a fast-paced, cross-functional Agile environment.Contribute to technical documentation and communicate technical concepts effectively to both technical and non-technical stakeholders.Security and Continuous Improvement
Ensure information security standards and requirements are incorporated into all software solutions.Stay current with emerging technologies, including AI-assisted development and automated test generation.Evaluate new tools and technologies to improve software quality, engineering productivity, and delivery efficiency.
Required Skills and Qualifications
Professional Experience
5+ years of software development experience using Java across the full application development life cycle.Hands-on experience designing, developing, testing, deploying, and maintaining enterprise applications.Java and Application Development
Strong command of core Java concepts, including:CollectionsConcurrency and multithreadingGenericsStreams and lambdasException handlingJVM memory managementExperience building RESTful APIs and microservices using Spring/Spring Boot.Strong understanding of clean code, SOLID principles, and design patterns.Testing and Code Quality
Proven hands-on experience writing effective unit tests using JUnit and mocking frameworks such as Mockito.Strong understanding of Test-Driven Development (TDD), test automation, and continuous testing practices.Experience with static code analysis and code coverage tools such as SonarQube and JaCoCo.Understanding of code quality gates and automated quality checks within CI/CD environments.Build, Source Control, and CI/CD
Experience with build and dependency-management tools such as Maven or Gradle.Experience with source code management tools such as Git and Bitbucket.Experience integrating automated tests, code quality checks, and quality gates into CI/CD pipelines, such as Jenkins.Professional Skills
Strong analytical and problem-solving abilities.Excellent communication and technical documentation skills.Ability to work effectively in a collaborative, cross-functional Agile environment.
Nice to Have / Added Advantage
AI-Assisted Development and Testing
Experience using AI-assisted development tools such as GitHub Copilot to accelerate coding, testing, and software development activities.Experience with AI-powered or automated unit test-generation frameworks such as Diffblue Cover, EvoSuite, or similar technologies.Advanced Testing
Experience with integration, performance, and contract testing tools.Knowledge of automated testing strategies beyond unit testing.Cloud and DevOps
Experience with containerization and orchestration technologies such as Docker and Kubernetes.Experience with cloud platforms such as AWS.Knowledge of security and vulnerability scanning tools such as SonarQube, JFrog Xray, or similar technologies.Agile and Collaboration Tools
Experience with Jira, Confluence, and Agile delivery practices.Education
University Degree or College Diploma in Computer Science, Software Engineering, or a related technology field.Industry Experience
Knowledge or experience in the financial services and/or insurance industries.