From Business Buzzwords to Meaningful Change: Measuring and Improving Engineering Productivity

Rate this content
Bookmark
Slides

After years of rapid growth, the winds have changed in many tech companies, with strategy changes, budget cuts, restructurings, and layoffs. Productivity and efficiency have become the business buzzwords of the season, and while pressure towards “more engineering productivity” is mounting in many organizations, it can be difficult to apply these abstract concepts to engineering teams and turn them into concrete actions that don’t alienate your team and lead to lasting impact that aligns with your stakeholders’ needs. 

I’m here to help. In this talk, we’ll go: 

- Beyond buzzwords: What do productivity, efficiency, and effectiveness mean? 

- Beyond “implementing DORA metrics”: How can you understand and improve your team's productivity as a technical or people leader?

- Beyond your team: How can you manage up effectively to keep your bosses informed and ensure alignment with organizational goals?

Having led dozens of teams through times of high change, I know that leading during a tech downturn presents unique challenges. You will take away actionable steps to help you improve on your team, and lead successfully through uncertain times.

This talk has been presented at TechLead Conference 2024, check out the latest edition of this Tech Conference.

FAQ

Lena Reinhardt is a speaker with a background in finance and business, who transitioned into the tech industry. She has experience working with numerous tech companies and leaders, focusing on topics like efficiency, effectiveness, and productivity.

The main business buzzwords discussed by Lena Reinhardt are efficiency, effectiveness, and productivity.

According to Lena Reinhardt, the tech industry has undergone significant changes, including a downturn and numerous layoffs justified by efficiency. These changes have impacted both industry leaders and employees.

Efficiency is about doing the same things with fewer resources, effectiveness is about achieving the right outcomes, and productivity is about doing more with the same resources.

Developer productivity is crucial in the tech industry as it has been a long-standing topic. Concepts like Agile and Extreme Programming (XP) focus on improving developer productivity to achieve business goals.

Tech leaders should focus on aligning their team's work with business value, understanding and using the terms efficiency, effectiveness, and productivity correctly, and using appropriate metrics to measure success.

Tech leaders can involve their teams by explaining what productivity means for their team, selecting relevant metrics, keeping the team in the loop, and using metrics as learning tools rather than targets.

Metrics are important because they create incentives, drive behaviors, and shape the culture. They help teams understand how well or poorly they are performing and guide improvements.

Tech leaders can start by understanding their organization's goals, defining what success looks like, knowing their team's current position, and continuously talking about productivity in daily work.

Tech leaders can refer to the bit.ly link provided by Lena Reinhardt for a cheat sheet and additional resources on engineering productivity.

Lena Reinhard
Lena Reinhard
26 min
15 Jun, 2024

Comments

Sign in or register to post your comment.

Video Summary and Transcription

Efficiency and productivity are buzzwords in the tech industry, but they have been misused and misunderstood. Leadership roles in tech are evolving, and understanding engineering productivity is crucial. Effectiveness is about achieving goals and customer adoption, while efficiency is about doing things right with fewer resources. Prioritizing effectiveness, productivity, and efficiency can help businesses achieve their goals. Understanding company goals, aligning strategies, and involving the team in defining success metrics are key to driving productivity and improving team performance.

1. Introduction to Efficiency and Productivity

Short description:

I'm Lena Reinhardt. I'm here to talk about buzzwords like efficiency, effectiveness, productivity, and how to make them work as a tech lead with your teams. The industry has changed over the years, and efficiency has become a big buzzword. However, it has also been misused, leading to shocking decisions. As someone with a background in finance, I understand the importance of efficiency, but I also acknowledge its negative reputation.

I'm Lena Reinhardt. I'm really happy to be here today and talk to you about business buzzwords like efficiency, effectiveness, productivity, and how to actually make them work as a tech lead with your teams. Because it's been a bit of a year, the first time I gave this talk was a year ago and things have changed in the industry over the last couple of years. We all know it, we've all been part of it. And efficiency specifically has been the big buzzword in many top tech companies. And I've spoken with dozens of companies and leaders in our industry over the last probably two to three years since things started going into the downturn that we're in right now as a tech industry. And like many of you, I've been trying to make sense of what's going on. And a lot of the things that have been done have been really shocking for a lot of people in our industries, including people in leadership positions. A lot of layouts were justified by efficiency. And as someone who's worked in finance before getting into tech, as someone who has a business background, I do understand that. And at the same time, I also think efficiency, effectiveness, productivity all have a really bad rep and for really good reasons.

2. Evolution of Developer Productivity

Short description:

Developer productivity has been around for a long time, with concepts such as XP, Agile, and the software craftsmanship manifesto focusing on it. Leadership roles in the tech industry are crucial for helping businesses achieve their goals. However, the current industry downturn also means the risk of layoffs. Connecting your work and your team's work to business value and outcomes can improve your chances of success.

And so I did briefly want to take you down a trip on memory lane and look at actually how the space of developer productivity has evolved over time. And of course, when talking about any trends, you have to show Google trends. That's the only thing to look at. This is a chart of how many times people were looking at developer productivity since 2004. And so I wanted to show you what happened over this time. This is a lot of illustrations for one chart, but a couple of really interesting things because developer productivity as a topic has been around so much longer than you actually may realize.

Not everyone here has been in the industry for 40 years. So for everyone who just joined in the last decade, for example, think of things like XP, extreme programming. That's been around since 1999 when first book was published and the author has been working on it much longer. The Adler Manifesto was published in 2001. Here, you can see a photo of one of the meetings of the people who were involved in that. The software craftsmanship manifesto that Fowler and others wrote was in 2009. DORA, the organization for DevOps research was started in 2015. The book Accelerate that is the basis for a lot of people thinking about developer productivity is from 2018. Then the space framework that kind of expanded it was published in 2021 during COVID. And then, of course, the tech downturn started around 2022.

I'm showing this to you to illustrate that developer productivity has been on people's minds for a really long time. And a lot of concepts that you've probably been working with for a long time as a developer like Agile or even XP, those concepts are about developer productivity at their core as well. And that also means this whole topic really matters. Leadership roles, no matter if you're a tech leader, a people leader, you have direct reports or don't. Leadership roles are business roles. They are about helping a business ultimately achieve its goals. In addition, you actually have the expertise to do this well. You probably work with a team, with a set of services in a specific domain. You know how to help the people there achieve the goals that they have and the goals that the business has by extension. And there is the disappointing, sad, annoying side of this. But the time that we're in as an industry right now also means this is also about becoming part of the spreadsheet that has the names of people on it that are going to be laid off. I wish that weren't the case. It's unfortunately the reality of things. And one thing to keep in mind as a lead is the more you're able to connect to the work that you're doing, the work that your teams are doing, to business value, to outcomes, the better your odds are at least going to be.

Check out more articles and videos

We constantly think of articles and videos that might spark Git people interest / skill us up or help building a stellar career

A Guide to React Rendering Behavior
React Advanced Conference 2022React Advanced Conference 2022
25 min
A Guide to React Rendering Behavior
Top Content
This transcription provides a brief guide to React rendering behavior. It explains the process of rendering, comparing new and old elements, and the importance of pure rendering without side effects. It also covers topics such as batching and double rendering, optimizing rendering and using context and Redux in React. Overall, it offers valuable insights for developers looking to understand and optimize React rendering.
Impact: Growing as an Engineer
React Summit 2022React Summit 2022
27 min
Impact: Growing as an Engineer
Top Content
This Talk explores the concepts of impact and growth in software engineering. It emphasizes the importance of finding ways to make the impossible possible and the role of mastery in expanding one's sphere of impact. The Talk also highlights the significance of understanding business problems and fostering a culture of collaboration and innovation. Effective communication, accountability, and decision-making are essential skills for engineers, and setting goals and finding sponsors can help drive career growth. Feedback, goal setting, and stepping outside of comfort zones are crucial for personal development and growth. Taking responsibility for one's own growth and finding opportunities for impact are key themes discussed in the Talk.
Speeding Up Your React App With Less JavaScript
React Summit 2023React Summit 2023
32 min
Speeding Up Your React App With Less JavaScript
Top Content
Watch video: Speeding Up Your React App With Less JavaScript
Mishko, the creator of Angular and AngularJS, discusses the challenges of website performance and JavaScript hydration. He explains the differences between client-side and server-side rendering and introduces Quik as a solution for efficient component hydration. Mishko demonstrates examples of state management and intercommunication using Quik. He highlights the performance benefits of using Quik with React and emphasizes the importance of reducing JavaScript size for better performance. Finally, he mentions the use of QUIC in both MPA and SPA applications for improved startup performance.
On Becoming a Tech Lead
TechLead Conference 2023TechLead Conference 2023
25 min
On Becoming a Tech Lead
Top Content
The role of a Tech Lead involves shaping the roadmap, helping the team be more effective, and working on important projects. Lessons learned include encouraging idea sharing, avoiding taking on all the work, and focusing on delegation. Tech Leads focus on the outcome, involve the team in decision-making, and make plans based on how different pieces will interact. The role of a Tech Lead is to focus on engineering and guide the team in figuring out how the whole system should fit together. Architecting can become problematic when it loses touch with the coding part, resulting in implementation issues.
React Concurrency, Explained
React Summit 2023React Summit 2023
23 min
React Concurrency, Explained
Top Content
Watch video: React Concurrency, Explained
React 18's concurrent rendering, specifically the useTransition hook, optimizes app performance by allowing non-urgent updates to be processed without freezing the UI. However, there are drawbacks such as longer processing time for non-urgent updates and increased CPU usage. The useTransition hook works similarly to throttling or bouncing, making it useful for addressing performance issues caused by multiple small components. Libraries like React Query may require the use of alternative APIs to handle urgent and non-urgent updates effectively.
The Future of Performance Tooling
JSNation 2022JSNation 2022
21 min
The Future of Performance Tooling
Top Content
Today's Talk discusses the future of performance tooling, focusing on user-centric, actionable, and contextual approaches. The introduction highlights Adi Osmani's expertise in performance tools and his passion for DevTools features. The Talk explores the integration of user flows into DevTools and Lighthouse, enabling performance measurement and optimization. It also showcases the import/export feature for user flows and the collaboration potential with Lighthouse. The Talk further delves into the use of flows with other tools like web page test and Cypress, offering cross-browser testing capabilities. The actionable aspect emphasizes the importance of metrics like Interaction to Next Paint and Total Blocking Time, as well as the improvements in Lighthouse and performance debugging tools. Lastly, the Talk emphasizes the iterative nature of performance improvement and the user-centric, actionable, and contextual future of performance tooling.

Workshops on related topic

React Performance Debugging Masterclass
React Summit 2023React Summit 2023
170 min
React Performance Debugging Masterclass
Top Content
Featured WorkshopFree
Ivan Akulov
Ivan Akulov
Ivan’s first attempts at performance debugging were chaotic. He would see a slow interaction, try a random optimization, see that it didn't help, and keep trying other optimizations until he found the right one (or gave up).
Back then, Ivan didn’t know how to use performance devtools well. He would do a recording in Chrome DevTools or React Profiler, poke around it, try clicking random things, and then close it in frustration a few minutes later. Now, Ivan knows exactly where and what to look for. And in this workshop, Ivan will teach you that too.
Here’s how this is going to work. We’ll take a slow app → debug it (using tools like Chrome DevTools, React Profiler, and why-did-you-render) → pinpoint the bottleneck → and then repeat, several times more. We won’t talk about the solutions (in 90% of the cases, it’s just the ol’ regular useMemo() or memo()). But we’ll talk about everything that comes before – and learn how to analyze any React performance problem, step by step.
(Note: This workshop is best suited for engineers who are already familiar with how useMemo() and memo() work – but want to get better at using the performance tools around React. Also, we’ll be covering interaction performance, not load speed, so you won’t hear a word about Lighthouse 🤐)
Building WebApps That Light Up the Internet with QwikCity
JSNation 2023JSNation 2023
170 min
Building WebApps That Light Up the Internet with QwikCity
Featured WorkshopFree
Miško Hevery
Miško Hevery
Building instant-on web applications at scale have been elusive. Real-world sites need tracking, analytics, and complex user interfaces and interactions. We always start with the best intentions but end up with a less-than-ideal site.
QwikCity is a new meta-framework that allows you to build large-scale applications with constant startup-up performance. We will look at how to build a QwikCity application and what makes it unique. The workshop will show you how to set up a QwikCitp project. How routing works with layout. The demo application will fetch data and present it to the user in an editable form. And finally, how one can use authentication. All of the basic parts for any large-scale applications.
Along the way, we will also look at what makes Qwik unique, and how resumability enables constant startup performance no matter the application complexity.
Next.js 13: Data Fetching Strategies
React Day Berlin 2022React Day Berlin 2022
53 min
Next.js 13: Data Fetching Strategies
Top Content
WorkshopFree
Alice De Mauro
Alice De Mauro
- Introduction- Prerequisites for the workshop- Fetching strategies: fundamentals- Fetching strategies – hands-on: fetch API, cache (static VS dynamic), revalidate, suspense (parallel data fetching)- Test your build and serve it on Vercel- Future: Server components VS Client components- Workshop easter egg (unrelated to the topic, calling out accessibility)- Wrapping up
React Performance Debugging
React Advanced Conference 2023React Advanced Conference 2023
148 min
React Performance Debugging
Workshop
Ivan Akulov
Ivan Akulov
Ivan’s first attempts at performance debugging were chaotic. He would see a slow interaction, try a random optimization, see that it didn't help, and keep trying other optimizations until he found the right one (or gave up).
Back then, Ivan didn’t know how to use performance devtools well. He would do a recording in Chrome DevTools or React Profiler, poke around it, try clicking random things, and then close it in frustration a few minutes later. Now, Ivan knows exactly where and what to look for. And in this workshop, Ivan will teach you that too.
Here’s how this is going to work. We’ll take a slow app → debug it (using tools like Chrome DevTools, React Profiler, and why-did-you-render) → pinpoint the bottleneck → and then repeat, several times more. We won’t talk about the solutions (in 90% of the cases, it’s just the ol’ regular useMemo() or memo()). But we’ll talk about everything that comes before – and learn how to analyze any React performance problem, step by step.
(Note: This workshop is best suited for engineers who are already familiar with how useMemo() and memo() work – but want to get better at using the performance tools around React. Also, we’ll be covering interaction performance, not load speed, so you won’t hear a word about Lighthouse 🤐)
High-performance Next.js
React Summit 2022React Summit 2022
50 min
High-performance Next.js
Workshop
Michele Riva
Michele Riva
Next.js is a compelling framework that makes many tasks effortless by providing many out-of-the-box solutions. But as soon as our app needs to scale, it is essential to maintain high performance without compromising maintenance and server costs. In this workshop, we will see how to analyze Next.js performances, resources usage, how to scale it, and how to make the right decisions while writing the application architecture.
Maximize App Performance by Optimizing Web Fonts
Vue.js London 2023Vue.js London 2023
49 min
Maximize App Performance by Optimizing Web Fonts
WorkshopFree
Lazar Nikolov
Lazar Nikolov
You've just landed on a web page and you try to click a certain element, but just before you do, an ad loads on top of it and you end up clicking that thing instead.
That…that’s a layout shift. Everyone, developers and users alike, know that layout shifts are bad. And the later they happen, the more disruptive they are to users. In this workshop we're going to look into how web fonts cause layout shifts and explore a few strategies of loading web fonts without causing big layout shifts.
Table of Contents:What’s CLS and how it’s calculated?How fonts can cause CLS?Font loading strategies for minimizing CLSRecap and conclusion