02 January 2023
? Excellent developer, well versed in Java, J2EE, Spring ecosystem
? Hands on experience on any of the cloud technologies (Azure, AWS, GCP)
? Experience in Kubernetes will be advantage.
? Good knowledge of data structures and algorithms
? Thorough knowledge of REST Framework like Spring Boot (or equivalent), REST Maturity
? Levels, good and bad practices of REST
? Where to use non-REST frameworks like gRPC over Thrift or Protobuf
? Thorough understanding of designing distributed systems without single point of failures
? that self-heal and stay responsive during failures
? How to stop cascading failures by implementing fallbacks, graceful degradation, back
? pressure, circuit breaker, request collapsing/caching, adaptive concurrency limits – Hystrix, Resilience4J
? Choosing the right data store for the given requirements – Relational, Graph, Object,
? Document, Columnar, Key-Value. Oracle, MySQL, Mongo, Cassandra
? Usage of mid-tier caches – define the right keys, how to partition them, setting TTLs.
? Load Balancing and Adaptive Routing across nodes
? Implementing distributed paradigms like eventual consistency, CQRS, Event sourcing
? Understanding the implications of asynchronous communication and non-blocking IO
? Nuances of using servers – embedded vs standalone, Tomcat, Undertow, Netty, Jetty
? Designing systems for achieving low latency, low error rate and high throughput
? X, Y, Z cubes of scaling – by cloning, sharding and breaking into microservices. Applying the
? right trade-offs using CAP (Consistency, Availability and tolerance to network Partition)
? Compliance to 12-factor app and solid understanding of different layers in the services stack,
Desired Candidate Profile
Load Balancer, API Gateway, Service Discovery, Central Config Management, Feature toggle.
? Understanding of Data Streaming and Messaging frameworks like Apache Spark, Storm, Flink, Kafka Participate in deep architectural discussions and design exercises to create world-class ? solutions while ensuring solutions are designed for successful deployment.
? Implement BDD, TDD, Unit/Mock/Integration tests during development cycle
? Java developers with Kafka expertise
Load Balancer, API Gateway, Service Discovery, Central Config Management, Feature toggle, Java developers