Senior Java Software Engineer (multiple)

Job Type

Full Time

Responsibilities

  • Designing and developing high-volume, low-latency applications and delivering high-availability and performance.

  • Contributing in all phases of the development lifecycle.

  • Create technical documentation to support developed components through their lifecycles.

  • Management of the development team to be able to deliver on time and with quality.

  • Ensure the best possible performance, quality, and responsiveness of applications.

  • Implementing automated testing platforms and unit tests.

  • Mentor and coach development team Owning and leading your own projects.

  • Work effectively in a team environment and follow/develop product software development processes and standards.

  • Understand existing product and domain elements and work with business analysts to refine and implement new requirements.

  • Refactor and improve the code to keep the product maintainable and adaptable to new requirements Support existing and develop new functionality and components.

  • Support continuous improvement by investigating alternatives and technologies and presenting these for architectural review.

  • Candidates will need to be comfortable working in a fast paced and highly autonomous environment that can sometimes be subject to tight deadlines.

Core requirements

  • Have excellent working Java knowledge to a minimum of Java 8.

  • At least 5 years Java/Spring experience.

  • Strong experience in the Spring Framework (Core, Boot, MVC, Data, Security).

  • OOP and Design Patterns Shell Scripting (Bash)

  • Tech Lead experience

  • Microservice/Docker experience

  • Cloud experience; preferably AWS

  • OAuth experience

  • Have knowledge and experience designing and building large scale and high availability systems.

  • Awareness of SOLID & Clean Code principles

  • Sonarqube/Jacoco

  • Good experience using Agile processes

  • TDD/JUnit/Mockito/Cucumber. Unit and Integration Testing

  • Git/GitHub/JIRA

  • CI/CD experience

  • Knowledge in RDBMS and NOSQL technologies (MongoDB,Oracle,MySQL,PL/SQL)

  • Candidates will need to be comfortable working in a fast paced and highly autonomous environment that can sometimes be subject to tight deadlines.

  • Be a willing team player happy to knowledge share and improve development capabilities as well as being capable of receiving feedback and acting upon it.

Beneficial skills

  • Javascript/NodeJS/Python

  • Reactive experience using Spring WebFlux

  • Kubernetes

  • GCP/Azure

  • Redis

  • DynamoDB

  • Auth0

  • Flyway

MicrosoftTeams-image (8).png