About the Role
We are seeking highly skilled
Back End Developers
to join our dynamic, multi-disciplinary project team. You will work closely with front-end developers, DevOps engineers, business analysts, interaction designers, user researchers, product managers, and test teams to deliver high-quality, scalable, and secure digital services.
You will be embedded in a collaborative environment, solving complex problems, integrating enterprise systems, and driving best practices in modern back-end development.
Key Responsibilities
* Design, develop, and maintain back-end applications and microservices using
Java 11 & 17
with
dependency injection
.
* Build
asynchronous RESTful APIs
using
Spring Boot
.
* Integrate with
legacy
and
third-party systems
using asynchronous and synchronous messaging patterns, including
JMS
and
pub-sub channels
.
* Apply
Domain Driven Design (DDD)
principles for scalable and maintainable architectures.
* Implement persistence layers using
Hibernate
and manage RDBMS transactions ensuring
ACID
compliance.
* Develop and execute
automated tests
with
JUnit
and
Mockito
following a
test-driven development (TDD)
approach.
* Use
Git
and pull-request workflows for version control and code reviews.
* Work with
Maven
builds and consume CI/CD pipelines, analysing reports from tools like
Checkstyle
,
PMD
,
Clover
, and
SonarQube
.
* Manage database changes using
Liquibase
.
* Collaborate within
agile methodologies
to meet user needs.
* Operate confidently in
AWS
or similar cloud environments.
* Use
UNIX command-line
tools for development and deployment tasks.
Essential Skills & Experience
* Strong Java development skills (Java 11 & 17).
* Proven experience with Spring Boot for REST API development.
* Expertise in asynchronous microservices and enterprise messaging systems.
* Familiarity with DDD, ORM (Hibernate), and relational database concepts.
* Strong cloud experience (AWS or equivalent).
* Automated testing (JUnit, Mockito) and TDD expertise.
* Source control with Git and PR-based review flows.
* CI/CD experience with Maven and static code analysis tools.
* Agile team experience, working in cross-functional environments.
* Familiarity with Liquibase for database version control.
* UNIX command-line proficiency.
Nice-to-Have Skills
* Knowledge of
Spring Batch
.
* Experience with
Rules Engines
(e.g., Drools).
* Experience with
JIRA
and
Confluence
.