A salesperson walked into an engineering conference...🤔

It sounds like the start of a potential joke, but it was actually one of the most valuable learning experiences of my career to-date. When I started college, I chose to study electrical and computer engineering, but ultimately shifted to a more business-focused career path. I’ve never actually worked as a developer and didn’t have a true understanding of the pain points developers and their managers experience on a day-to-day basis. A big part of my job as a sales development manager is to better understand our customers so I can empathize with their pain points and speak credibly about the value of our solution. To truly understand engineers on a more authentic level, I recently went to The Lead Developer conference in Austin to learn more about what makes engineers, teams and engineering leaders frustrated, worried and excited. 

Here were some of the main takeaways from my day as an honorary engineer: 

Context is Everything

Speakers and attendees seemed to agree that creating high-performing teams is a primary focus for most companies — but they also agreed that using metrics to define ‘high-performing’ can be difficult. The key is context. Without context, metrics can’t tell individuals or leaders the performance of a team, if team members are allocating their time appropriately, or who in the company is providing the best ROI. 

Isolated metrics are often counterproductive because they mask the truth. Without context, it’s impossible to tell if a team spending 80% of its time on maintenance work has a problem — that will be the right amount for some teams, given their responsibilities, and way too much for others. 

Challenges at Scale

The root cause of many challenges for engineering teams, from the need to build remote teams to the intense focus on productivity, is scalability. Engineering organizations are often pressed to do, build, and manage more at superhuman speeds. In some cases, things are moving so fast that even adding more team members is daunting. 

Sometimes processes that worked on a small team fall apart when dealing with multiple geographic locations and hundreds of developers. Sometimes a star engineer is a mediocre leader, at least at first. Growth is challenging, but it is also the reality for modern engineering organizations. 

Remote is the New Norm

As companies work on scaling their engineering organizations, building a network of remote teams is an almost-universal strategy. While remote teams have some advantages, there are also challenges for both the engineers and the leadership when it comes to successfully working together. 

Building a successful remote team requires thoughtful communication systems, intentional culture development, and leadership that’s designed around a team’s success. 

There’s a handful of best practices to manage communication between remote team members. One company has a system in place that lets engineers start a queue in the video chat instead of constantly interrupting each other on video calls, for example. The key is to find a way to communicate that works for your group and makes virtual meetings as productive as in-person meetings. 

Likewise, there are different ways to structure teams. No two companies have the same culture. But being intentional about how to build teams and create a company culture that is inclusive of remote workers is essential to success as an engineering organization. 

Trial and Error

While no two companies have the same culture, there are clear culture ‘do’s’ and ‘don’ts.’ Most importantly, if you expect engineers to grow and improve, both in their engineering and leadership skills, it’s important to expect a certain amount of failure. 

If failure is punished, innovation grinds to a halt. Every session I attended started with a story about failure — trying to do too many things at once and failing at all of them.

As engineers, the only way to learn is with experience, which means writing buggy code, finding bugs and fixing them. As engineers get more experience, they gradually make fewer mistakes — but the number of errors will never get to zero. 

At the same time, even as an engineer becomes more experienced at writing code, he or she might take on new responsibilities that come with their own learning curve. Becoming a great leader also has a learning curve, and engineers who are new to leadership roles will inevitably make mistakes. 

A company culture that doesn't punish failures or expect all employees to be flawless is key to improving performance, not only in the engineering department but throughout the organization. Formal avenues for more experienced leaders to mentor engineers and engineering leads is another important way to cultivate an environment that values learning, even if that means mistakes happen. 

How Pinpoint Fits In

In the months since the conference, I’ve talked with many engineering leaders and have seen how these themes play out in real life. As the discussion turns to Pinpoint, I’m able to show exactly how the engineering dashboards and metrics we provide can help teams struggling with context, scale and remote workforces. For example:

  • Pinpoint’s engineering metrics aren’t isolated metrics, but insights that are displayed contextually as part of a larger picture of what engineering teams are working on and how they are doing. Every team works differently and in different tools. Finding a consistent way to discuss performance across those teams without changing their process can be difficult. With data science and machine learning, we are making it easier to compare numbers over time and between teams, giving leaders access to more context without disrupting workflows.
  • It can be hard for leaders to understand how well a team or individual is doing when they’re separated by thousands of miles. Remote teams rely on tools like Slack for collaboration, but it comes along with its own set of distractions. The systems used to build software have data silos (like code analysis) that lack context. Pinpoint’s dashboards deliver a starting point for conversations about process, bottlenecks and performance, as well as an easy way for leaders to provide better support their remote teams by giving more context to what they are working on. 
  • As teams scale and become more complex, having a solution in place that individual engineers use to self-correct and collaborate better as a team is essential. Pinpoint also makes it easier to identify what works really well, where bottlenecks are, and share their best practices and improvements throughout the organization. 

Even with the challenges, it’s an exciting time to be in engineering. Whether you’re a junior developer or a lead engineer, I am excited to see how the process of building software continues to grow and the pain of these challenges is addressed as new tools like Pinpoint or other workflow automation tools get introduced.  

 

A big thank you to the presenters whose sessions contributed to this post and helped me better understand a day in the life of an engineer:  Poornima Vijayashanker (Founder, Femgineer), Hanjie Ji (Engineering Director, WeWork) , Iccha Sethi and Jony Jeyaratnam (Principal Engineer and Director of Engineering, Invision) , Spencer Norman (Director of Engineering, Reaction Commerce), Rebecca Murphey (Front-End Core Engineer Lead, Indeed), Lisa van Gelder (SVP Engineering, Spring Health) and, Stevi Deter (Sr. Software Engineer, Providence Health & Services), 


Get the data science behind high-performance teams.