Jul 16, 2019
How Top Engineering Leaders Build High-Performance Teams That Deliver Results
VPs of Engineering and CTOs have one overarching goal: to build and retain high-performance teams that can deliver quality products on time.
To create teams of talented people that work together effectively, a leader must maintain a strong focus on finding and hiring the best engineers and managers, as well as building a positive company culture. In this article, we’ll take a look at how some of the top engineering leaders in the business approach this task.
Building the Right Team Starts with Hiring the Right People
Okta’s CEO, Todd McKinnon, says his team flourishes because they’ve made hiring as easy as possible.
Unlike some companies, which require unanimous approval for every hire, Okta allows hiring managers to sign on new employees right away. McKinnnon says that some of the best engineers on his team would not have been brought on if the hiring process had required unanimous approval.
Of course, hiring the right people means creating an environment where talented people want to work. HubSpot co-founder Dharmesh Shah, when describing how he attracts “exceptional” people to work for him, said that he does his best to create a company culture that’s rooted in growing the market value of everyone who works there.
Unlike some tech companies, which offer perks like flex-time, games, and company parties, HubSpot focuses on advancing each employee’s value. That way, Shah says, he knows he can attract people who like to learn, grow, and advance.
HubSpot offers its engineers perks like its unlimited meal program, which encourages staff to invite mentors to lunch in order to learn from them. Employees can expense these meals with no approval required. HubSpot also offers employees access to its alumni group, which meets every quarter and brings together some of the best engineers in the business.
Create a Cultural Manifesto to Build Strong Teams
Most top leaders agree that a “cultural manifesto” is the key to building strong engineering teams. A cultural manifesto – also called a culture code, or a culture handbook – is a document that lays out a company’s values, goals, and working methods. In other words, it’s a repository of the company’s shared experience.
A cultural manifesto isn’t just a feel-good declaration, motto, or set of directives – it’s the backbone of a strong company. It holds the company’s teams together, making the whole greater than the sum of its parts. Cultural manifestos have been shown to have a positive impact on company success, boosting revenues by as much as 400%.
MIT scholar Edward Schein defines culture as a “pattern of basic assumptions” which are invented, discovered, or developed by a group as it works through its problems. Those basic assumptions, values, and problem-solving techniques become part of the organization’s “culture” as soon as they are codified into something that can be taught to new employees.
That’s why having a cultural manifesto is so crucial when it comes to scaling teams. A manifesto makes it easy to communicate your company’s values and methods when onboarding new staff. It’s no wonder that Kevin Scott, LinkedIn’s VP of engineering, called a cultural manifesto “the single most valuable management tool while you’re scaling your engineering team.”
HubSpot is renowned for its strong cultural manifesto, which co-founder Dharmesh Shah spent 200 hours crafting. Shah says it’s paid off by creating a strong, cohesive team that’s flexible enough to adapt to new challenges. HubSpot has put together a free guide for creating your own cultural manifesto.
The 12-Month Roadmap
Just as a cultural manifesto is important for setting your team’s big-picture goals, a roadmap can point your team in the right direction on small and mid-size projects.
A roadmap is more than just a to-do list or a step-by-step plan for delivering your product – it’s an overview of the product plan. It should be a clear, adaptable guide created with your team’s participation.
Okta CEO Todd McKinnon recommends using 12-month roadmaps for product areas and for infrastructure. The roadmap itself should be simple. It should be, in his words, a “high-level list of what you need to accomplish in your product and underlying technology.”
He recommends writing this roadmap down and sharing it with the company at large to get everyone on the same page. McKinnon also recommends crafting a 12-month roadmap for software architecture.
That’s where collaboration really comes into play, since McKinnon also recommends creating a virtual team with members of all the groups in the engineering organization that own and manage software architecture projects.
In the tech world, most VPs and CTOs start out as engineers. While that provides them with a good bottom-up understanding of the company, it can have an unexpected drawback; all too often, VPs focus on the process of coding rather than on managing their teams.
In fact, managing and developing are very different skills, and VPs need to focus on the human aspect. They also need to be aware that cultural problems within an organization, especially a large company or one that’s in the process of scaling, aren’t always as easy to remedy as coding problems.
Part of being a great manager is keeping your team members both happy and challenged. You want your engineers to feel a sense of ownership and investment in the projects they work on. You also want to clearly define each employee’s role. There are different ways of going about this; some managers like to move employees around from project to project, while others encourage people to specialize in one area.
McKinnon recommends a more permanent model, which encourages people to hone their expertise and feel a strong sense of ownership over their products. He urges managers to conduct frequent evaluations of employees.
Not only does this tip off managers to any issues with their teams, it gives engineers a sense of their worth and value within the company. High-performing employees will appreciate the reassurance, and poor performers will benefit from clear, focused feedback.
Effective collaboration and communication are vital for any team aiming to deliver high-quality products on schedule. But collaboration doesn’t happen automatically; simply hiring a group of talented engineers and putting them in a room together won’t guarantee you an effective team.
More often than not, there will be some inherent tension between the different members of an engineering team. Employees from different departments will inevitably have different priorities, which will sometimes clash. It takes patience, open communication, and a clear understanding of everyone’s roles to get all the members of a team working together toward a common goal.
Automation and Testing
The saying “don’t reinvent the wheel” is common in engineering. It’s important to allocate a team’s resources efficiently, which means repurposing everything that can be repurposed instead of wasting the team’s energy reinventing it.
Similarly, to be effective, a team needs the tools to automate their processes and measure their performance, wherever possible. That's one area where a great leader can really make a difference by introducing a system that allows for automation and measurement. This ensures that everybody has the tools and data they need to get their job done, along with the time to do it right.
Frequent Delivery and Continuous Learning
Maintaining a frequent release schedule is almost always more efficient than letting features pile up and then releasing them all at once. The best-performing teams generally deliver as often as they can.
A high-performing team needs to practice continuous learning to ensure that they’ll be able keep up the pace of their release schedule. Particularly in the ever-changing tech industry, it’s critical for individuals and teams to keep their knowledge current.
These are areas where strong leadership makes a difference. The best leaders know how to eliminate the kinds of inefficiencies and bottlenecks that stand in the way of frequent delivery. They also know how to inspire their teams so that they remain agile and committed to developing their skills and moving forward.
Ironically, sometimes one of the best ways to improve teamwork and create a cohesive culture is to increase autonomy among your employees.
Werner Vogels, Amazon’s CTO, spoke about this back in 2006. Vogels credited Amazon’s small teams with creating a sense of responsibility among its staff and nurturing a can-do attitude.
He said, “The services model has been a key enabler in creating teams that can innovate quickly with a strong customer focus. Each service has a team associated with it, and that team is completely responsible for the service—from scoping out the functionality, to architecting it, building it, and operating it.”
Vogel added that empowering developers and charging them with overseeing their product through all of the stages of operation made for a strong sense of ownership and responsibility.
In the end, it all boils down to a few fairly simple ideas:
- Hire the right people, and give them the tools they need to do their jobs
- Encourage collaboration between team members
- Establish a strong organizational culture and write a clear cultural manifesto
- Create project roadmaps and share them with the entire company
- Define employee roles, encourage growth, and give regular feedback
- Automate and measure everything – keep your teams working smart, not working hard
- Encourage a sense of ownership through employee autonomy
- Release often, and make sure your team never stops learning
If you’re a VP or CTO, these will almost certainly be issues you’ve had to wrestle with before, and that you’re likely to encounter again in the future. Forming a great team isn’t easy, but it’s crucial if you want to create a company that stands above the competition.