Summary:
- You will work as a senior software engineer to redesign and evolve an enterprise platform
which processes a VERY HIGH SCALE of data.
- This platform ingests multiple terabytes of data every day, processes billions of transactions
every month, and analyses multiple PETABYTES of data.
- You will be responsible for writing backend business logic, building backend features,
system design / redesign, cloud deployment, as well as building CI/CD pipelines for this
platform.
- You will engage and work directly with the client stakeholders as well as development
teams located across multiple geographies.
- You will have to be an expert with the technology ecosystem of this platform - Java,
Springboot, Microservices, Event Driven Architecture, Kafka, AWS, NoSQL and have
exceptional problem solving skills - DSA, OOPS, System Design - to join this engagement.
- You need to be experienced in, as well as excited about, working on enterprise products
which handle high scale. If you have not worked with production systems which ingest
terabytes of data on a daily / weekly basis, you may be overwhelmed by the technical
challenges of this project.
We believe this is one of the most exciting product engineering opportunities for seasoned software
engineers; especially those who want to work with high scale, event driven, multi-tenant, multi-
cloud, distributed systems.
Responsibilities:
- Technically hands-on (Analysis, Design & Implementation) working on deliverables as
required
- Complete ownership of features assigned to work on in the product
- Debate and elaborate functional and non-functional requirements with Product
Management
- Work on a solution approach and design with the team, get it reviewed by stakeholders
before implementation
- Generate artefacts such as functional spec and detailed design for the features
owned/assigned
- Implement complex features with high quality & follow TDD process
- Communicate risks and progress in a timely manner to reporting supervisor
- Mentor team members
- Support the features delivered by debugging and creating RCA for production issues and
subsequently work towards short term and long-term fix
Requirements:
- Expertise with Java programming (collections framework, multi threading, OOPS) preferably
with the recent versions of Java.
- Expertise with Data Structures and Algorithms (solving DSA problems).
- Expertise with Springboot and Microservices.
- Expertise with event driven architecture concepts and asynchronous messaging, especially
with Kafka.
- Exceptional problem solving skills. You should be able to solve problems pertaining to data
structures, object modelling, system design and even architecture based on your
experience.
- Must have experience of working with at least one cloud, preferably AWS
- Should possess 5-8 years of development experience, primarily in building products for
large enterprises.
- Should possess excellent communication skills
- Hands-on experience in building concurrent and/or parallelized, highly performant scalable
applications.
- Proven ability to root cause complex issues in scalable deployments
- Working experience on SOA and TDD is an added advantage