* Drive discussions to improve product across teams where ever there are inter dependencies across products
* You will write performance oriented, unit-tested code, develop object-oriented models and design data structure for new software projects taking systems aspects into account
* You will translate high level business problems into scalable design and code. Create libraries & Utilities for larger consumption
* Drive large refactoring exercises
* API Definitions and end-to-end service design and implementation for large services
* Create Platforms in your product/team. Build platforms, systems and networking infrastructure using your strong background in distributed systems, OS/kernel, network system design, and large scale storage systems.
* Create/Improve the architecture without supervision
* Introducing new arch elements based on current needs
* Influence product requirements & operational plans. Instil best practices for development and champion their adoption, while working with product manager to estimate and plan projects in agile development framework.
* Mentor junior engineers on software design, coding practices and TDD strategies and form a holistic mentoring plan for Mente
* Deep expertise in at least one programming language & tech stack to write maintainable, scalable, unit-tested code.
* Substantial experience in building large complex business applications
* Strong object oriented design skills, knowledge of design patterns, and an uncanny ability to design intuitive module and class-level interfaces
* The ability to channel high-level guidance to direct the building of large and complex business applications and platforms.
* Experience leading multi-engineer projects and mentoring junior engineers
* Experience with full life cycle development in any programming language on a Linux platform
* Deep understanding of data-driven web application design and development
* Deep understanding of design patterns, optimizations, deployments and tuning servers like apache/ MySQL/ Tomcat/ Solr
* Prior experience in working with Agile software methodologies (XP, Scrum)
* Knowledge of Test Driven Development
* BTech, MTech, or PhD in Computer Science or related technical discipline (or equivalent) - MUST
* The experience of having been a software engineer for at least 7 or more years - MUST
Nice to Have:
* A multi-perspective approach to developing object-oriented models, designing data structure and building applications and platforms that can scale.
* Problem solving skills for high-level business and technical problems.
* Your leadership and mentoring skills to roll-up your sleeves and offer technical and project management insights and tips.
Tech expertise to own the best practices for project management in an agile development framework