People, Process, Product: Where to Spend Time Growing Engineering

Posted on May 09, 2012

Over the past four years I’ve found that one of the most challenging aspects of growing an engineering team is determining where I should personally spend time. New engineers need to be hired, source control and bug tracking tools need to be improved, features need to be designed and coded ASAP, etc etc. It can be easy to focus on short-term features and forget to invest time growing the team and processes.

A simple framework that has been critical in helping me prioritize my time is focused on people, process, and product. It is similar to frameworks in project management and for lack of a better title i’ll call it The Three P’s of Engineering Management.

  • People – are we attracting and retaining the best people for the organization?
  • Process – are we building an engineering process that provides high quality, velocity and efficiency?
  • Product – are we designing, architecting and building highly scalable, available, and maintainable systems?

Prioritizing between different projects can also be difficult. As a general rule, I try to make sure I spend about 50% of my time recruiting and building the team and roughly an even amount distributed across the other themes. The amount of hiring can vary quite a bit as a startup goes through growth spurts but in general spending half my time on hiring has felt like the right investment.

An important outcome of using this framework is that I’ve felt able to continually make progress across wide range of projects.