To interact with stakeholders in order to envision, model and design the entire product architecture. To review the code to ensure quality of the design by avoiding complexity, advocating clarity and to do this with the team. To lead the team through various technical challenges of building a robust and scalable product. To work collaboratively with the team of developers and make significant contribution in product creation. To mentor and guide the technical team in their growth.