Measuring Engineering Productivity
Google's framework for selecting metrics.

Measuring Engineering Productivity

Each week in the SE Research newsletter, I share a summary of a research paper relevant to understanding and improving developer productivity.


This week I read?Measuring Engineering Productivity?by engineering productivity researcher Ciera Jaspan . This is a chapter from the book?Software Engineering at Google?that describes the rationale for measuring productivity, as well as Google’s framework for selecting metrics.?

My summary

Why measure at all??

Before choosing metrics, first understand your reasons for measuring. Jaspan opens the chapter with a simple explanation: one reason for measuring is to scale the scope of the business by making engineering more productive, rather than by hiring more engineers. The goal of metrics is then to identify inefficiencies in engineering processes and decide which areas to invest in.?

The rest of the chapter outlines a process for selecting meaningful metrics.

Selecting meaningful metrics

Google uses the Goals/Signals/Metrics (GSM) framework to guide metric creation.?

1. Start by defining the goal you’re trying to accomplish.?Your goal should be phrased in terms of what you want to understand at a high level and should not contain references to specific ways to measure it.?

Aim to cover different parts of productivity with goals. Jaspan explains that Google divides productivity into five components, which they refer to with the mnemonic “QUANTS”:?Quality of the code,?Attention from engineers, Intellectual complexity,?Tempo and velocity, and?Satisfaction. Each component has an associated goal. (See the table below for examples.)?

2. Define signals.?A signal is how we know if we’ve accomplished the goal. Every goal should have one or more signal. Not all signals are measurable.?

3. Select metrics.?These are proxies for the signal. Some signals might have multiple metrics.?

Selecting metrics also includes deciding how to measure them. In the example below, surveys and logs data are used. Jaspan writes, “Qualitative metrics are metrics, too! Consider having a survey mechanism for tracking longitudinal metrics about engineers’ beliefs. Qualitative metrics should also align with the quantitative metrics; if they do not, it is likely the quantitative metrics that are incorrect.”?

Google's Goals, Signals, and Metrics framework for selecting metrics

Following the GSM framework is a great way to clarify the goals for why you are measuring your software process and how it will actually be measured.?

Consider whether the metrics are worth capturing?

Jaspan also shares the questions Google uses to help determine whether these metrics are worth measuring:?

  • If the data supports your expected result, what action will be taken??If no action will be taken, there is no point in capturing that metric.?
  • If we get a negative result, will appropriate action be taken??If there are other inputs that will override a negative result, it might not be worth measuring.?
  • Who is going to decide to take action on the result, and when would they do it??“The goal of measuring our software process is to help people make business decisions. It’s important to understand who that individual is, including what form of data convinces them.”?

Final thoughts

I recently read a?post by Will Larson?that articulates the common reasons for measuring engineering. Of the reasons Will discusses, today’s issue is most relevant for leaders looking to “measure to optimize,” or in other words measure to understand what needs to be done to improve productivity.?

The Goals/Signals/Metrics framework is an important tool that can help engineering teams get clear on what they want to understand and how they’ll use that information — before going down the rabbit hole with metrics.?


That’s it for this week! I'd love to know your thoughts in the comments below.?For more software engineering paper summaries, subscribe to the SE Research newsletter on LinkedIn or Substack.

Charles Zanders

Driving business growth with cutting-edge technology solutions and strategic sales leadership. #innovation #technology #growth #leadership

2 年

Abi Noda, this is eloquent, straightforward, and powerful. These points transfer almost seamlessly to several areas of business management and even life itself. I'm definitely going to take up this book you cited: Measuring Engineering Productivity by Ciera Jaspan. Thank you for this share. I'm also curious to learn how you are applying these, and similar principles to #GetDx.

回复
Brad Appleton

DevOps & Agile Engineering Senior Leader

2 年

I'm mildly curious as to why "metrics" appears twice in heading (intentional? or just an oversight?)

要查看或添加评论,请登录

Abi Noda的更多文章

  • Backstage is dominating the developer portal market

    Backstage is dominating the developer portal market

    Welcome to the latest issue of Engineering Enablement, a weekly newsletter sharing research and perspectives on…

    28 条评论
  • Attending an academic research conference

    Attending an academic research conference

    Welcome to the latest issue of Engineering Enablement, a weekly newsletter sharing research and perspectives on…

    1 条评论
  • Accelerating engineering velocity at Block

    Accelerating engineering velocity at Block

    Welcome to the latest issue of Engineering Enablement, a weekly newsletter sharing research and perspectives on…

    4 条评论
  • Rolling out developer productivity metrics

    Rolling out developer productivity metrics

    Welcome to the latest issue of Engineering Enablement, a weekly newsletter sharing research and perspectives on…

    4 条评论
  • Software Quality

    Software Quality

    Welcome to the latest issue of Engineering Enablement, a weekly newsletter sharing research and perspectives on…

    8 条评论
  • Measuring developer productivity: A clear-eyed view

    Measuring developer productivity: A clear-eyed view

    Welcome to the latest issue of Engineering Enablement, a weekly newsletter sharing research and perspectives on…

    3 条评论
  • Getting exec buy-in for developer productivity initiatives

    Getting exec buy-in for developer productivity initiatives

    Welcome to the latest issue of Engineering Enablement, a weekly newsletter sharing research and perspectives on…

    4 条评论
  • The best of engineering enablement in 2024

    The best of engineering enablement in 2024

    Welcome to the latest issue of Engineering Enablement, a weekly newsletter sharing research and perspectives on…

    3 条评论
  • 2024 benchmarks for the DX Core 4

    2024 benchmarks for the DX Core 4

    Welcome to the latest issue of Engineering Enablement, a weekly newsletter sharing research and perspectives on…

    8 条评论
  • Introducing the DX Core 4

    Introducing the DX Core 4

    Welcome to the latest issue of Engineering Enablement, a weekly newsletter sharing research and perspectives on…

    15 条评论

社区洞察

其他会员也浏览了