Java Back End Developer

Java Back End Developer

Reliance Industries Limited | Bangalore, KA, IN

Posted 17 days ago

Apply Now

Description

o Excellent programmer, preferably in Java – Intermediate (Collections, Polymorphism, Design Patterns) to Expert level (Annotations, Lambda, Streaming, Concurrency)
o Good knowledge of data structures and algorithms – if methods you write are in traffic request path, you know how to avoid unacceptable time complexity
o Thorough knowledge of REST Framework like Spring Boot (or Lagom), REST Maturity Levels, good and bad practices of REST
o Where to use non-REST frameworks like gRPC over Thrift or Protobuf
o Nuances of TCP, UDP, HTTP, HTTP2, SSL
o Thorough understanding of designing distributed systems without single point of failures that self-heal and stay responsive during failures
o How to stop cascading failures by implementing fallbacks, graceful degradation, back pressure, circuit breaker, request collapsing/caching, adaptive concurrency limits – Hystrix, Resilience4J
o Choosing the right data store for the given requirements – Relational, Graph, Object, Document, Columnar, Key-Value. We use Oracle, MySQL, Mongo, Cassandra
o Usage of mid-tier caches – define the right keys, how to partition them, setting TTLs. We use Redis, Memcache, EHCache, Hazelcast, Aerospike.
o Load Balancing and Adaptive Routing across nodes
o Implementing distributed paradigms like tune-able eventual consistency, CQRS, Event sourcing
o Understanding the implications of asynchronous communication and non-blocking IO
o Nuances of using different servers – embedded vs standalone, Tomcat, Undertow, Netty, Jetty
o Designing systems for achieving low latency, low error rate and high throughput
o 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)
o Compliance to 12-factor app and solid understanding of different layers in the services stack – Load Balancer, API Gateway, Service Discovery, Central Config Management, Feature toggle, etc.
o Understanding of Data Streaming and Messaging frameworks like Apache Spark, Storm, Flink, Kafka

The Reliance e-commerce team is looking for ambitious software developers, who will think on behalf of the consumer and translate that into world-class experiences. In addition to in-depth technical expertise in software development

Skills: Java, Spring Boot, Algorithm, Data Structures

Experience: 5.00-10.00 Years