Demonstrate in depth knowledge of IDE, language and toolset in Java/J2EE/Springboot or equivalent. Also relevant knowledge in relational and non-relational databases.
Design, implement and maintain java application phases even in large or complex project
Conduct software analysis, programming, testing and debugging.
Develop application code for java programs.
Develop technical designs for application development
Good Understanding and Should have worked on BDD, TDD
Typically, the role involves the following activities -
• Taking part in understanding requirements and designing API endpoints and their implementations
• Have an excellent understanding of language & framework and a good working knowledge of the abstraction layer underneath
• Pairing with other engineers to write high quality code that’s easy to understand and work with
• Profile and optimise code
• Comfortably test drive any feature/comfortable with TDD cycle
• Reviewing pull requests and giving good feedback.
• Comfortably debug/find complex problems
• Demonstrate a good knowledge of other programming languages & paradigms and when to apply them
• Understand threads, threading model and concurrent programming
• Supporting the service, both during office hours and out of hours via paid support rota.
• Automating the build, provisioning and deployment in the cloud.
• Implementing Observability via relevant tools
• Automate everything by default
• Build a CI/CD pipeline
• Automate security scanning and performance testing as part of build
• Experience in implementing Event Sourcing and Micro-service architecture.
• Experience in non-relational DB like Couchbase
• Experience in Distributed Messaging system
• Proficiency in Kubernetes, Containers (Dockers/ terraform)
• Defensive or Offensive Security skill/certifications.
• Working Knowledge Azure