As lead engineer you will be responsible for designing, building, implementing, and maintaining software applications using both Java and related technologies.
Responsible for developing back-end services with Java, integrating APIs, ensuring crossplatform optimization, and collaborating with team members to deliver high-quality software solutions.
Should have proficiency in both Java, Spring boot and related tech stack as well as strong problem-solving skills and the ability to work in an Agile development environment.
Your skills and experience
15+ years experience in implementing software applications using Java Technologies
Have led a team of 5+ engineers.
Hands-on experience with Java: A popular object-oriented programming language used for building scalable and robust backend services. Spring Boot: A framework for building Javabased enterprise applications, providing features such as dependency injection, MVC architecture, and RESTful web services.
Hibernate or Spring Data JPA: Object-relational mapping (ORM) frameworks for simplifying database interactions and managing entity relationships. Spring Security:
A framework for implementing authentication and authorization mechanisms in Spring-based applications. RESTful APIs: Architectural style for designing networked applications, allowing communication between the front-end and backend components. Database: SQl/PLSQL for commonly used databases include Oracle, PostgreSQL, or MongoDB, depending on the specific requirements of the application.
Developer tools & Practices: Integrated Development Environment (IDE): Such as IntelliJ IDEA or Eclipse for Java development. Version Control: Git for managing source code and collaborating with team members.
Build Tools: Maven or Gradle for managing dependencies and building Java projects. Testing Frameworks: JUnit for unit testing Java code and Selenium for automated browser testing. Agile Methodologies:
Practices like Scrum or Kanban for iterative and collaborative software development. Continuous Integration/Continuous
Deployment (CI/CD): Tools like Jenkins, Travis CI, or GitLab CI/CD for automating the build, testing, and deployment processes.
Good working knowledge of various async messaging streams such as Kafka, Rabbit MQ, IBM MQs etc.
Experience with building distributed large scale low latency application is desirable.
Good understanding of implementing various design patterns to improve application performance.
Good understanding of various Object-Oriented Design principles such as SOLID, DRY, KISS etc.
Knowledge of Compute Engine for virtual machines, Cloud Storage for object storage, and Cloud Functions for serverless computing, GKE for GCP is desirable.
Experience with container platforms management services such as docker is desirable.
Knowledge of various workflow management tools such as Camunda, IBM BPM is nice to have.
Strong stakeholder management skills and the ability to communicate at senior level.
Proven experience of delivering results in matrixed organizations under pressure and tight timescales
Excellent verbal, interpersonal and written communication skills.
Bachelor s or Master s degree in computer science or a related field
How we ll support you
Training and development to help you excel in your career
Coaching and support from experts in your team
A culture of continuous learning to aid progression
A range of flexible benefits that you can tailor to suit your needs