Job Description
Key Roles/Responsibilities:
- Actively participate in development along with team members for as much as 50% of their time, creating modules & systems that can then be treated as a working reflection of the best practices.
- Participating in code reviews, design reviews, architecture discussions.
- Being responsible for Scaling, Performance & Quality for the team
- Setting up best practices to help the team achieve the above and constantly thinking about improving technology use are your responsibilities.
- Driving the adoption of these best practices around coding, design, quality, performance in your team and influence them for the entire organization are also expectations from you.
- Experiment with new & relevant technologies and tools, and drive adoption while measuring yourself on the impact you are able to create
- Collaborate with Product Management and Product Development leaders in developing product visions and strategies.
- Define & drive implementation of long term technology vision for your product & team
- You will be the primary owner of the architecture of your product and will also be responsible for getting it reviewed, and making sure the system is built accordingly.
- Creating architectures & designs for new solutions around existing and new problem spaces
- Drive technology & tool choices for your team & be responsible for them.
Experience & Skills Required
- Quick & Excellent Problem-solving skills for complex & large scale problems
- Exposure to a wide variety of problem spaces, technologies
- Very Strong System design and OO skills with a nifty ability to craft clean interfaces and operate at the right levels of abstraction
- Solid coding skills with the ability to drive teams through massive refactoring exercise & improve coding standards across large codebases.
- Deep knowledge, understanding & experience in working with a large variety of multi-tier architectures.
- Awareness of pitfalls & use cases for a large variety of solutions.
- Deep understanding & experience of high-performance web-scale & real-time response systems with experience & expertise in a variety of large scale persistent systems including large databases.
- Exposure to complete product development cycles - From inception to production to scaling up, supporting new requirements, re-architectures the Principle architects should have seen it all and ideally in multiple cycles.
- Should have been part of scalable product development cycles with either large data handling or large transaction processing exposure for 5 years.
- Must have worked in a small setup (either a startup or a small & reasonably independent team).
