What You Will Need to Succeed-
- B.Tech / M.Tech degree in Computer Science or related fields.
- Min. 5+ years of proven experience in full stack software development.
- Should have excellent computer science fundamentals and a good understanding of design, and performance of algorithms.
- Skilled and experienced in:
- Java programming
- Databases (SQL/NoSQL)
- Microservice architecture
- Streaming platform (like Kafka)
- WebRTC and WebSocket communication
- JavaScript, React JS, HTML, CSS, TypeScript
- Caching storage (Like Redis/Aerospike)
- Web / Proxy / Cache server (Nginx)
- Proficient in writing frontend and backend code that is reliable, maintainable, secure, and performant
- Knowledge of AWS and/or Azure services
- Having experience of developing sophisticated web applications with responsive designs, modular and loosely coupled code
- Experience creating and maintaining backend services
- Experience with modern JavaScript and frameworks (e.g. TypeScript, Web Components, React, ES6, GraphQL) and architectures like MVC/Flux/Redux
- Extensive Knowledge of Web Standards and modern browsers, both at their API level and their internals:
- JS engines
- Browser performance
- Reflow, repaint
- Shadow DOM
- Dynamic rendering
- Service Workers
- CDNs
- CSS resetting, normalizing, SCSS, etc.
What You'll Do
This is an individual contributor position. Expectations will be on the below lines:
- Responsible for design and architecture of new features, services and improve existing one
- Be responsible for all phases of engineering:
- From early specs
- Design/architecture
- Technology choice
- Development
- Unit-testing/integration automation
- Deployment
- Collaborate with architects, product management, and other engineering teams to build the technical vision, and road map for the team
- Build technical specifications, prototypes, and presentations to communicate your ideas
- Be proficient in emerging industry technologies and trends and also have the ability to communicate that knowledge to the team and use it to influence product direction
- Orchestrate with the team to develop a product or parts of a large product
- Collaborating with UI/UX designers, Architects, and Product Managers to design and implement modern, delightful, and intuitive features
- Extending, optimizing, and future-proofing all parts of our front-end and back-end stack