Developing source code, including descriptions, for all Software Components in accordance with Software Requirements specification, the functional design and the technical design document
Working on full stack Java based development of greenfield and existing applications within a micro services architecture
Contributing to quality assurance by writing unit, integration and functional tests as well as leading test driven development (TDD)
Assisting in the adoption of Agile principles across the team and working with the wider team to manage key issues and stakeholders
Prepare High level, technical and solution designs for different use cases and challenges
Architecting and Designing solutions that transforms a Database Platform into a Service
Continuously looking for opportunities to automate core technical assets and tasks with a view of delivering them as a cloud native services or APIs
Designing and implementing complex software integrations
Performing research, POCs and leading highly technical discussions
Designing software target state architectures and roadmaps of achieving it
Designing CI/CD pipelines
Leading Software deployments, releases, audit remediations and supporting production Application incidents with an engineering approach
Skills and Experience
Significant development delivery experience, with experience of delivery within Agile Software Development Life Cycle/teams ideally with CI/CD
Proven vast experience in Java (1.8 or above) with focus on TDD, design patterns, messaging and parallel processing
Proven Knowledge of Event driven architecture, service orchestration and messaging
Extensive experience in API Integrations
Strong Experience in Relational Databases (Oracle or Postgres) and NoSQL
Previous experience in ServiceNow or a similar ITSM solution is highly desirable
Previous experience working with OpenShift or a similar Kubernetes platform is a must.
Extensive experience in micro service development, architecture and patterns.
Extensive hands-on experience with Spring Boot, and similar libraries like Spring Could, Spring JPA, Hibernate, Spring security and Docker
Experience developing unit testable code using testing frameworks like JUnit, Mockito, Cucumber and practical experience with build tools (preferably Maven),
Vast Experience in Software Design and technical architecture using a variety of toolsets
Extensive experience in building a CI/CD pipeline using TeamCity, Jenkins, Bamboo, GitLab or Travis CI etc is highly essential.
Prior experience in Python flask is nice to have.
Experience developing and architecting integration solutions on Cloud Platforms is essential be it GCP, Azure or AWS.
Experience in building cloud native, distributed, highly available and fault tolerant applications.
Extensive experience in Software design and documentation
Strong knowledge of API gateway, Authorization and Authentication schemes like OAuth, TL, the Open-API and Async-API standards, DNS, Load Balancing, Serverless and Auto-scaling
Strong knowledge of Enterprise integration patterns