Description

  1. Should be very strong in Core Java (special attention to Collection concepts and implementations etc.)
  2. JDK 8 vs 17 or whichever version the candidate has used, main differences / advantages between them should be clear.
  3. Proficient in SpringBoot and Spring core concepts (special attention to configurations  and different popularly used annotations - @Primary, @ConditionalOnProperty/@ConditionalOnExpression, @PropertySource (custom property file loading) , concepts of Filters/Interceptors etc.)
  4. Git commands/concepts(rebasing, merge fetch, pull etc.)
  5. CI/CD concepts. Basic overview of a Jenkins file, how to do a deployment (pulling from Git, running code quality checks, deploying the image to different env/blue-green or canary etc.
  6. How the release process works.
  7. Use of JMeter/Postman
  8. Basic cloud concepts-   Docker and k8 concepts (Dockerfile (how do you containerise an app and how does a dockerfile looks like, what is the advantage of containerisation etc.),
    k8s - hpa, configmap, secrets, services, ingress etc.)
  9. Candidate's last project's architecture. Experience in System Architecture, Cloud Deployments, Containerization, Authentication/Authorization Systems, and Protocols. Experience in scaling solution in a multi-cloud environment.
  10. Proficiency in Web Service design using RAML, YAML (with JSON) and ODATA.
  11. Experience in building common services framework for Logging, Error Handling, Auditing, Policy Management, Authentication, and Authorization.
  12. Proficiency in building Microservices using Java, Springboot, GraphQL, etc.
  13. Good understanding of Microservice architecture with experience in containerized deployment using MS Azure.
  14. Experience in integration with Databases (Cassandra and RDBMS) and Streaming platforms (Kafka). Continuous integration and Continuous deployment using Maven, Jenkins, Docker, Kubernetes and Springboot.

Good to have-

knowledge on Graphql or Cassandra.

Education

Any Graduate