Why Angi’s Engineering Team Relies on ‘Alignment, Empowerment and Mentorship’ to Enable Innovation
When Amit Gulati reflects on the fundamentals that best serve him in his day-to-day role as an engineering leader, it’s not the wherewithal of a library, programming language, or other piece of tech — but, rather, a certain outlook.
“One of the things I’ve always appreciated about leadership I’ve worked with is a focus on growth and learning, and I believe that is the most valuable skill I have brought to my current role,” Gulati said. “I have learned to embrace failure as an opportunity to grow, and to teach others to do the same.”
That philosophy is central to his current work as SVP of engineering Angi, the new moniker for Angie’s List that debuted earlier this year as part of a rebrand for the collection of home services brands. In the process, Gulati came to help lead a new “combined engineering team” that supports Angi connecting users to professionals for home, lawn and other residential projects.
“I want to create just enough consistency and uniformity in how we build, deliver and operate software so that we all feel like we are part of a larger whole, with shared definitions and a shared understanding of the value we are creating for each other and our customers, but still provide room for diversity in perspective, and foster innovation and empowerment for every engineer,” he said.
Below, Gulati shared some of his big goals, how the company’s newly launched core values guide his work and the exciting items on the teams’ engineering roadmap.
Tell us more about your role and responsibilities at Angi.
My role at Angi as the SVP of engineering is to build and lead a software engineering organization that understands what our customers need and value and rapidly create solutions. We’ve been very focused on recruiting and developing a team of engineers motivated to understand these problems deeply, collaborate and complement each other’s strengths, and learn quickly.
Once we recruit engineers, it’s very important we have foundational onboarding and a commitment to continued growth and learning. We train new engineers on our technology stack, our toolchain and the practices they need to be highly effective. We also focus on a deep understanding of our mission and values and how that roots us together at Angi. Our onboarding process starts every new engineer with an introduction to the business that we are supporting in addition to the technologies we use to support it. And everyone deploys code to production, no matter what their level.
I’ve been working with our team internally to build career paths for engineers here. We want each team member to understand and emphasize skill acquisition, mastery, and effectiveness over attainment of titles at regular intervals, and that continued growth and learning is most important.
Angi boasts a handful of products and ways consumers can find home pros and solve their home service needs. How does your team create the infrastructure to scale all of these products?
We use a microservices architecture deployed in AWS to enable easy reuse of business logic across multiple products and to facilitate scaling to meet consumer demand. Through a combination of both REST API based and event-based interaction, we are able to optimize for performance as well as user experience. By adhering to microservices best practices such as the single responsibility principle, running each service on its own dedicated infrastructure, and clearly defining the bounded context for each service, we are able to loosely couple our microservices and easily share functionality in different ways to support different product workflows. Our SDLC also includes an architecture design and review step for large features, where we include staff engineers and SMEs from across the org to facilitate knowledge sharing across teams, further enabling code reuse and collaboration between teams that own different products.
Angi launched 12 new core values this year. These are Gulati’s favorites:
- “Data beats opinion: We heavily rely on data to back up our theories and pivot as needed to ensure that the products we deploy transcend what currently exists in the marketplace.”
- “Be an owner: Our team is made up of individuals who take the initiative and run separate operations within our tech stack.”
- “All about talent: Celebrating wins is an important component that makes up our technical team. There is so much room for personal advancement within this arm of the business.”
Do you have a particular leadership style you swear by?
The most significant premise behind how I try to lead is the notion that, if I am doing my job well, then I am removing the need for me to be here at all. I try to lead through alignment, empowerment and mentorship. An organization thrives when every person there feels like they are working toward a common goal and understands how their work supports that goal. I also work closely with the folks on my team to understand their friction points and work with them to reduce that friction. Sometimes that means I need to empower them to effect the change they need, and other times I go deep with them to determine what the best path forward is. On a good day, someone on my team asks me for help driving something forward. On a great day, someone tells me what they did on their own to get the outcome they were looking for.
Looking ahead, what are some of the key items on your engineering roadmap?
The engineering teams focus on shipping bite-sized features quickly. One of our teams, the memberships product engineering team, is working to improve acquisition and engagement for Angi’s membership offering, Angi Key. We solve problems related to building a member’s home profile, custom reminders to book projects and features that curate the recommendations, which takes the headache out of our end users’ home maintenance. For the technical side, this involves working with distributed systems that are rebuilt in a couple of different ecosystems.
Another team, the foundation engineering team, is taking steps to modernize how Angi communicates information. We’ve migrated from a singleton, database-backed communication engine powered by Oracle to a distributed, auto-scalable solution powered by Amazon Simple Queue Service. One interesting challenge related to this body of work relates to delaying the communications sent to customers and professionals. The Java ecosystem does not offerer an out-of-the-box solution for delaying events with an exactly-once delivery guarantee. The Angi foundation group is developing a reusable pattern and library for delaying messages or events through a combination of AWS Step Functions and SQS. With this new toolset, engineers can easily delay any sort of event through an inclusion of a custom library and a few Terraform changes.