Design components by translating product requirements, breaking down the project into tasks and providing accurate estimates.- Independently come up with different solutions, and extensible Low-level designs. Write modular, extensible, readable and performant code.
- Choose the right Data Structures, tools and tech stacks and be able to do High-Level design with guidance.
- Build, develop, mentor and coach junior team members.
- Collaborate with teams by contributing to the shared vision and working closely with cross-functional stakeholders.
Requirements:
- B. Tech or M. Tech or equivalent with at least 3 years of experience.
- Build abstractions and contracts with separation of concerns for a larger scope.
- Extensive programming experience in any one programming language like Java, Ruby, Clojure, Scala, C or C++, SQL etc.
- Strong object-oriented programming skills.
- Experience with multi-threading and concurrency programming.
- Ability to work with complex business flows and deal with huge amounts of data.
- Prior work experience in an agile environment or continuous integration and continuous delivery (CI or CD).
- Experience in building robust and scalable web applications is good to have