Latest / The Pragmatic Engineer / Developer productivity with Dr. Nicole Forsgren (creator of DORA, co-creator of SPACE)
Transcript
- 0:00SPEAKER_01: S is the satisfaction metric.
- 0:01SPEAKER_01: Just ask people.
- 0:02SPEAKER_01: Are you satisfied with the tools you use?
- 0:04SPEAKER_01: Are you satisfied with something?
- 0:05SPEAKER_01: Because people can usually tell you pretty quickly.
- 0:07SPEAKER_01: I've seen data across an entire tool chain that was pretty fast.
- 0:10SPEAKER_01: It was good for the company.
- 0:11SPEAKER_01: But you ask the developers, and they're like, this is nearly impossible.
- 0:14SPEAKER_01: Performance, outcome metrics, we definitely want.
- 0:17SPEAKER_01: A is activity, all accounts, anything that's account.
- 0:19SPEAKER_01: We usually have a lot of activity metrics.
- 0:21SPEAKER_01: C is communication and collaboration.
- 0:23SPEAKER_01: This could be looking at meeting schedules.
- 0:24It can also be looking at how well APIs are working or if
- 0:27they're breaking.
- 0:28SPEAKER_01: And then E is efficiency and flow.
- 0:29Those types of things,
- 0:30those types of data points and metrics give you additional insight.
- 0:33Nicole Forsgren is probably the best known expert on developer productivity.
- 0:37SPEAKER_00: She is a co-creator at the widely used frameworks Dora and Space,
- 0:40SPEAKER_00: lead author of the book Accelerate.
- 0:43SPEAKER_00: Nicole started her career as a software engineer at IBM,
- 0:46where she experienced firsthand the challenges of being given
- 0:48unrealistic deadlines
- 0:49SPEAKER_00: by management who understood nothing about developer productivity.
- 0:53SPEAKER_00: Seeing how developers burned out around her,
- 0:55SPEAKER_00: she entered academia,
- 0:56SPEAKER_00: researching DevOps and developer productivity.
- 0:58She then joined Chef Software and then co-founded a bootstrap
- 1:01startup called Dora.
- 1:03Dora was acquired by Google,
- 1:04and Nicole worked on developer productivity here.
- 1:07SPEAKER_00: She later joined GitHub as VP of Research and Strategy,
- 1:10SPEAKER_00: and she is currently leading research initiatives at Microsoft.
- 1:13SPEAKER_00: She's also working on a book related to developer productivity,
- 1:16SPEAKER_00: one that we'll touch on in the podcast.
- 1:18SPEAKER_00: In our conversation today,
- 1:19SPEAKER_00: we cover Dora and Space,
- 1:22examples of using these frameworks and advice on how to make
- 1:25the most of them.
- 1:26SPEAKER_00: Measuring developer productivity,
- 1:28whether measuring PRs makes sense and why this area remains
- 1:31challenging to quantify.
- 1:33Traits of high performing engineering teams and why time to
- 1:35onboarding can be very
- 1:36SPEAKER_00: telling about the efficiency of a team and many more interesting topics.
- 1:40If you're looking for advice on making your engineering team
- 1:42more efficient or are
- 1:43SPEAKER_00: interested in ways to measure developer productivity,
- 1:46SPEAKER_00: this episode is for you.
- 1:47If you enjoy the show,
- 1:48please subscribe to the podcast on any podcast platform and on YouTube.
- 1:51SPEAKER_00: Thank you.
- 1:52SPEAKER_00: This greatly helps the show to spread to even more listeners and viewers.
- 1:55SPEAKER_00: With this, I'm very excited to have Nicole on the podcast.
- 1:59SPEAKER_00: I wanted to put a pointed question at you.
- 2:01SPEAKER_00: You've...
- 2:04SPEAKER_00: You've been studying developer productivity both at the theory level,
- 2:08SPEAKER_00: but also very practical level.
- 2:11SPEAKER_00: What is your take on the importance of PRs or diffs?
- 2:14And the background is here that there's now a renewed
- 2:17conversation about this.
- 2:19There's been this viral threat going around on the concept of
- 2:24ghost engineers who
- 2:25SPEAKER_00: might not be producing as much production.
- 2:29kind of like code on a monthly basis and you know that's
- 2:32something that that can be
- 2:33measured and also companies like uber and meta they do have
- 2:36tools for managers and
- 2:37directors to track the number of diffs per team they don't say
- 2:40that they're going
- 2:41to break it down for engineer it is possible and also there's a
- 2:44new dx core 4
- 2:45SPEAKER_00: framework which is something that uh is is going around and the
- 2:51They also suggest that the number of diffs at the team level
- 2:57should be measured.
- 2:58SPEAKER_00: I'm curious,
- 2:59SPEAKER_00: how important is the diff frequency and how good of a predictor is it for
- 3:04SPEAKER_00: productivity or unproductivity at a team at an individual level?
- 3:07SPEAKER_01: I love this question.
- 3:09SPEAKER_01: Thank you so much.
- 3:11SPEAKER_01: I will say PRs and diffs.
- 3:15SPEAKER_01: both are good signals and are terrible signals.
- 3:18Which is probably not helpful,
- 3:19but let me kind of dig into this a little bit more.
- 3:22SPEAKER_01: When we think about using the word productivity in particular,
- 3:25SPEAKER_01: many folks,
- 3:26SPEAKER_01: especially in leadership,
- 3:28SPEAKER_01: are thinking about the traditional economic definition of productivity,
- 3:31SPEAKER_01: which is the rate of output,
- 3:35SPEAKER_01: right?
- 3:35SPEAKER_01: What do you produce?
- 3:37SPEAKER_01: And then sometimes that'll be a ratio, right?
- 3:38SPEAKER_01: The rate of output per inputs.
- 3:43SPEAKER_01: And so
- 3:44as we know,
- 3:45that doesn't apply very well to software or it's really hard to disentangle,
- 3:49right?
- 3:49SPEAKER_01: Is it a feature?
- 3:50SPEAKER_01: Is it a shipment?
- 3:51SPEAKER_01: Is it a full product?
- 3:52SPEAKER_01: Is it what, right?
- 3:54SPEAKER_01: It's different than in like farming.
- 3:56SPEAKER_01: I grew up, my grandfather was a farmer, right?
- 3:58SPEAKER_01: Like how much do you put in and then how many potatoes do you get out?
- 4:02SPEAKER_01: Like that's fairly straightforward.
- 4:03SPEAKER_01: And when we think about GDP, that's often what it's looking at.
- 4:06SPEAKER_01: But in technology,
- 4:08SPEAKER_01: Things are just different because many times you'll get many,
- 4:13SPEAKER_01: many,
- 4:13SPEAKER_01: many more things when we think about cameras and phones or photos,
- 4:17SPEAKER_01: right?
- 4:17SPEAKER_01: We could take a handful of photos.
- 4:19SPEAKER_01: Now we can take millions of photos and it's basically free.
- 4:23SPEAKER_01: And so many things in technology are just flipped.
- 4:25SPEAKER_01: Yeah.
- 4:26SPEAKER_01: So with that context, I will say PRs are important in a few ways.
- 4:35One way is that it does give you a relatively reasonable view
- 4:40into what work is
- 4:41getting done and what work can get done through the current
- 4:44system and processes
- 4:45SPEAKER_01: that you have.
- 4:46SPEAKER_01: right?
- 4:48SPEAKER_01: With a couple important caveats and disclaimers, right?
- 4:50SPEAKER_01: Many senior engineers don't have very high PR output or code commits.
- 4:57Now,
- 4:58for those of us who have been in software for a while,
- 5:00this isn't surprising,
- 5:01right?
- 5:01Because as you become more and more senior,
- 5:03you're doing things like unblocking folks.
- 5:05SPEAKER_01: You're doing things like architecture and design work.
- 5:08You're doing things like supporting reviews and mentoring and
- 5:10maybe like pair
- 5:11SPEAKER_01: programming with juniors.
- 5:13SPEAKER_01: And so your commits
- 5:15SPEAKER_01: Your PRs, yours, finger quote, right?
- 5:18SPEAKER_01: Aren't showing up.
- 5:19SPEAKER_00: This episode is brought to you by DX,
- 5:21SPEAKER_00: the engineering intelligence platform designed by leading researchers.
- 5:25Measuring developer productivity is a decades old challenge and
- 5:28many technology
- 5:29SPEAKER_00: organizations still struggle to get it right.
- 5:32DX takes a scientific approach that offers complete clarity
- 5:35into productivity and
- 5:36SPEAKER_00: its underlying factors.
- 5:38It combines data from development tools with self-reported data
- 5:41collected from
- 5:42SPEAKER_00: developers so you can see both the what and the why.
- 5:46The insights from their platform cater to leaders at every
- 5:48level of the organization,
- 5:50SPEAKER_00: from CTOs to platform teams to frontline managers.
- 5:53SPEAKER_00: Learn why some of the world's most iconic companies like Dropbox,
- 5:57SPEAKER_00: Plaid,
- 5:57SPEAKER_00: Twilio,
- 5:58SPEAKER_00: Vercel,
- 5:59SPEAKER_00: and Gusto rely on DX.
- 6:01SPEAKER_00: Just visit getdx.com slash pragmatic engineer.
- 6:05SPEAKER_00: That is G-E-T-D-X dot com slash pragmatic engineer.
- 6:11And then you're also pulled into recruitment,
- 6:14your leadership meeting,
- 6:15performance calibration.
- 6:17SPEAKER_00: Oh, there's this team on fire.
- 6:18SPEAKER_00: We need you to help out.
- 6:19SPEAKER_00: The higher you are staff and principal level, it happens all the time.
- 6:23SPEAKER_01: Exactly, exactly.
- 6:25SPEAKER_01: And so I think it's really important to think about not just recruiting,
- 6:29SPEAKER_01: what we're measuring,
- 6:30SPEAKER_01: but in which context and who we're measuring,
- 6:33SPEAKER_01: because that's not,
- 6:34SPEAKER_01: I wouldn't call that output.
- 6:36SPEAKER_01: I would call that one aspect of throughput, right?
- 6:39Because it can be really interesting and important to see if
- 6:44there are blockers,
- 6:45why is it?
- 6:46SPEAKER_01: If there's friction, why is it?
- 6:47SPEAKER_01: Is it an overly complicated code base?
- 6:49SPEAKER_01: Is it a really, really difficult to use, uh,
- 6:53SPEAKER_01: tech stack and developer ecosystem?
- 6:55SPEAKER_01: Is it that our PR assignment process is just like bad, right?
- 7:01Either it only goes to one person or it doesn't like get shared
- 7:05out very well.
- 7:05SPEAKER_01: And so one person or just the assignment is the blocker.
- 7:09SPEAKER_01: So there are a handful of things to look at there.
- 7:14It's bad as a just straight solo metric,
- 7:18but I think everything as bad as a solo metric.
- 7:22What we always wanna do is take kind of a constellation of
- 7:26metrics that help us
- 7:28think more holistically about the context in which developers
- 7:32are working.
- 7:33SPEAKER_01: What are the trade-offs that they are making?
- 7:35SPEAKER_01: So I've been working with some folks to kind of kick up,
- 7:40SPEAKER_01: we started the Eng Thrive effort at Microsoft.
- 7:43And it's a way to understand and start conversations at several
- 7:46levels in the
- 7:47SPEAKER_01: business about how can we help our engineers thrive?
- 7:50SPEAKER_01: And we use a handful of metrics across many dimensions.
- 7:53SPEAKER_01: And it was inspired in part by space, the space framework.
- 7:58SPEAKER_01: Because then we can look at qualitative feedback, right?
- 8:01Microsoft famously has NSAT,
- 8:05which is kind of like a satisfaction qualitative survey.
- 8:08SPEAKER_00: That's like every six months, right?
- 8:10SPEAKER_00: I think I remember when I was there.
- 8:11SPEAKER_00: It was still going on 10, 15 years ago.
- 8:15SPEAKER_01: Yeah,
- 8:15some of them are quarterly now so that we can make sure we stay
- 8:17on top of any trends,
- 8:19SPEAKER_01: any changes.
- 8:21But then we also want to capture some objective data from our
- 8:24systems because that
- 8:24SPEAKER_01: can provide additional insight
- 8:26SPEAKER_01: And you're not asking people for it all the time.
- 8:28SPEAKER_01: You're not interrupting their work.
- 8:30SPEAKER_01: And so there you're looking at examples of quality and outcome metrics.
- 8:35SPEAKER_01: You're looking at examples of any delays that may come up.
- 8:38SPEAKER_01: Now, I'm just giving broad examples.
- 8:40SPEAKER_01: This isn't necessarily what N5 uses,
- 8:42but build time or deployment pieces or security outcomes or
- 8:48quality and stability outcomes.
- 8:50SPEAKER_01: PRs
- 8:52SPEAKER_01: And the data that are around PRs, right?
- 8:55So it can be number of PRs,
- 8:56it can be time for PR,
- 8:57it can be the time that awaits from review.
- 9:01SPEAKER_01: Those can be helpful in this constellation, right?
- 9:06Because then you're also seeing and you can think about a story
- 9:11of why people are
- 9:12SPEAKER_01: making decisions to do the work that they're doing.
- 9:15SPEAKER_01: And what are the impacts and implications?
- 9:17SPEAKER_01: And I love that because it can help inspire
- 9:20SPEAKER_01: Larger questions around when we're making investments.
- 9:24Now,
- 9:24say investments,
- 9:25whether it's money or capital or time,
- 9:27where should those go,
- 9:29right?
- 9:29How do we want to balance feature delivery and customer value
- 9:34delivery with
- 9:35SPEAKER_01: internal investments?
- 9:36SPEAKER_01: Because those are so tightly related, right?
- 9:39SPEAKER_01: I like to joke.
- 9:40SPEAKER_01: This is our hot AI moment, right?
- 9:41SPEAKER_01: And everyone's like, well, build all the AI things.
- 9:44SPEAKER_01: Everything's AI.
- 9:44SPEAKER_01: You have to go faster.
- 9:45SPEAKER_01: It's real hard to build the AI things when your pipeline's trash.
- 9:51SPEAKER_01: It's super hard if your developer experience just isn't there.
- 9:54SPEAKER_00: I agree.
- 9:55I also feel that the reason,
- 9:56I've been thinking,
- 9:57why is this trending right now?
- 9:58People seem to be really touchy-feely about the fact that you
- 10:02can measure diffs.
- 10:03This survey was specifically about remote engineers,
- 10:07you know,
- 10:07like potentially doing less.
- 10:09SPEAKER_00: And I feel that what is happening,
- 10:11there's a lot of things that what you're talking about and what
- 10:13people talk about
- 10:14SPEAKER_00: in developer productivity,
- 10:15SPEAKER_00: it's like you have a team that's
- 10:17SPEAKER_00: doing well,
- 10:18SPEAKER_00: everyone is,
- 10:18SPEAKER_00: you know,
- 10:18SPEAKER_00: doing their work and we're trying to figure out how to do better.
- 10:21SPEAKER_00: What's happening?
- 10:22SPEAKER_00: Where are people stuck?
- 10:23SPEAKER_00: Where are the bottlenecks?
- 10:24SPEAKER_00: But there's another question,
- 10:25SPEAKER_00: which is performance management,
- 10:27SPEAKER_00: which is,
- 10:28SPEAKER_00: uh,
- 10:28SPEAKER_00: I have a team and I'm a non-technical manager,
- 10:31SPEAKER_00: or I might be,
- 10:32SPEAKER_00: you know,
- 10:32SPEAKER_00: removed from the layers.
- 10:33I'm the director or CEO,
- 10:35and I just want some stats that tell me who's performing well
- 10:38and not.
- 10:38SPEAKER_00: And there's an assumption for some reason for people who are not, uh,
- 10:42SPEAKER_00: working here that I can just look at some numbers,
- 10:44SPEAKER_00: may this be output or some scores,
- 10:46SPEAKER_00: and I'll see people scored.
- 10:48SPEAKER_00: And my question to you,
- 10:50how important or is it possible to run a good engineering team
- 10:57without a manager or
- 10:58a lead who is hands-on and kind of understands this context and
- 11:02knows that what's
- 11:04SPEAKER_00: going on is kind of involved?
- 11:06SPEAKER_00: Because I'm kind of seeing that there's a real desire to
- 11:09SPEAKER_00: from people,
- 11:10SPEAKER_00: investors,
- 11:10founders who are removed from technical details to get some of
- 11:14these stats,
- 11:15some of these developer frameworks so that they can tell
- 11:18without understanding anything,
- 11:19SPEAKER_00: oh,
- 11:20SPEAKER_00: this engineer is good and productive.
- 11:22SPEAKER_00: That engineer is not.
- 11:24SPEAKER_00: A, is this realistic?
- 11:25SPEAKER_00: And B, is this something new?
- 11:27SPEAKER_00: Or have the business always been asking for something like this?
- 11:30SPEAKER_01: I'll start with that last one.
- 11:31SPEAKER_01: Is this new?
- 11:32SPEAKER_01: I would say it's not new, right?
- 11:33SPEAKER_01: Like we've been, we, the royal we.
- 11:35SPEAKER_00: That's good.
- 11:36Business and researchers have been watching people work and
- 11:39trying to measure how
- 11:42people work and trying to assess how people work with summaries
- 11:44and numbers for a
- 11:46SPEAKER_01: really long time,
- 11:47SPEAKER_01: right?
- 11:47SPEAKER_01: There's something in research called the Hawthorne effect.
- 11:49SPEAKER_01: which is when- The what effect?
- 11:53SPEAKER_01: I love it.
- 11:54SPEAKER_01: So this gentleman was working with,
- 11:57SPEAKER_01: I want to say it was like some type of production for process.
- 12:01SPEAKER_01: And he would come into the office,
- 12:02SPEAKER_01: he would flip the lights on,
- 12:04SPEAKER_01: watch people work,
- 12:05SPEAKER_01: count things,
- 12:06SPEAKER_01: and he would leave.
- 12:07SPEAKER_01: And they would count things and the numbers would be different.
- 12:10SPEAKER_01: Well, so he was like, it must be because the lights are on.
- 12:12Because I guess there's,
- 12:14if I'm remembering correctly,
- 12:15right,
- 12:15like he turned the lights on.
- 12:16SPEAKER_01: So they start turning the lights on, but it's not like consistent.
- 12:19It turns out like people are doing more like when you're there,
- 12:23when someone is there.
- 12:23SPEAKER_00: When they know they're being watched, right?
- 12:25SPEAKER_01: Athletes tend to perform better when there's an audience, right?
- 12:28SPEAKER_00: As developers, we'll definitely do it.
- 12:30As soon as we know what's measured,
- 12:31we're like,
- 12:31all right,
- 12:31we're optimized for that.
- 12:32SPEAKER_01: Absolutely.
- 12:33SPEAKER_01: And I think this is where we have some real limitations around things.
- 12:37SPEAKER_01: You touched on it a little bit when you said like, we can measure PRs.
- 12:40So many times people will default to the measures that are easy
- 12:44and quick to operationalize.
- 12:45Number of commits,
- 12:46number of PRs,
- 12:47number of lines of code,
- 12:48number of what can we grab quickly?
- 12:51SPEAKER_01: And I think this is one thing that prompted space.
- 12:54SPEAKER_01: The space framework is counts can be useful.
- 12:58SPEAKER_01: Yes.
- 12:58SPEAKER_01: If you have access to data that you can quickly operationalize and grab.
- 13:02SPEAKER_01: Sure.
- 13:02SPEAKER_01: Right.
- 13:03inserting caveats around like,
- 13:05what's the accuracy,
- 13:06the reliability of the data?
- 13:07SPEAKER_01: How are you gathering it?
- 13:09SPEAKER_01: Are you doing cohort analysis?
- 13:11SPEAKER_01: But also that will only show you a few things.
- 13:15And the few things it will show you are the parts of the
- 13:17business that are easy to
- 13:18SPEAKER_01: operationalize and it will ignore everything else.
- 13:21And so we often want to think about,
- 13:22you know,
- 13:23S is a satisfaction metric.
- 13:25SPEAKER_01: Just ask people, right?
- 13:26SPEAKER_01: Are you satisfied with the tools you use?
- 13:28SPEAKER_01: Are you satisfied with something?
- 13:29SPEAKER_01: Because
- 13:30SPEAKER_01: People can usually tell you pretty quickly.
- 13:33SPEAKER_01: I've seen data across an entire tool chain that was pretty fast.
- 13:36SPEAKER_01: It was good for the company.
- 13:37SPEAKER_01: But you ask the developers and they're like, this is nearly impossible.
- 13:41SPEAKER_01: We are going to break soon because so much of it was in systems.
- 13:45SPEAKER_01: So you'd think it was automated,
- 13:46but every single handoff point had to be manual because they
- 13:49were not integrated.
- 13:50And that's one of the biggest weaknesses for operationalized
- 13:53data is missing that handoff.
- 13:56SPEAKER_01: the boundaries between systems and the boundaries between processes.
- 13:59SPEAKER_01: So people can tell you pretty quickly.
- 14:03SPEAKER_01: So performance, you know, outcome metrics, we definitely want.
- 14:06SPEAKER_01: A is activity, all accounts, anything that's account, right?
- 14:08SPEAKER_01: We usually have a lot of activity metrics.
- 14:12SPEAKER_01: C is communication and collaboration.
- 14:14SPEAKER_01: This can be looking at meeting schedules.
- 14:15SPEAKER_01: It can also be looking at how well APIs are working.
- 14:19SPEAKER_01: or if they're breaking and then ease efficiency and flow.
- 14:21SPEAKER_01: And so that's where we're looking at time handoffs, um,
- 14:27SPEAKER_01: You know,
- 14:27SPEAKER_01: those types of things,
- 14:29SPEAKER_01: those types of data points and metrics give you additional insight.
- 14:32SPEAKER_01: And if you can grab at least three different categories,
- 14:35SPEAKER_01: you're going to be in a much better position.
- 14:37SPEAKER_01: Now,
- 14:38SPEAKER_01: you also asked,
- 14:39SPEAKER_01: and I'm kind of tying into the earlier question,
- 14:41SPEAKER_01: which was,
- 14:42SPEAKER_01: can you evaluate and understand how well a team's doing?
- 14:45SPEAKER_01: Can an eng leader, an eng manager do it if they're not like there?
- 14:49I think at that level,
- 14:51right,
- 14:51when you've got a tech lead,
- 14:52when you've got an eng leader,
- 14:53an
- 14:56SPEAKER_01: absent and unaware of context does no one any favors, right?
- 15:00SPEAKER_02: Yeah.
- 15:02SPEAKER_01: At some level though,
- 15:03I think there can be benefit to having a holistic set of
- 15:07metrics to help leaders
- 15:10SPEAKER_01: guide decisions around which type is an example,
- 15:13what type of blockers or barriers or friction points are
- 15:16affecting most of the company?
- 15:18SPEAKER_01: Would that be a good use of a central resource?
- 15:20SPEAKER_01: What types of barriers, um,
- 15:24show up that are probably out of the realm or scope of control
- 15:29for a development team to fix.
- 15:31SPEAKER_01: Sometimes their documentation can be,
- 15:33SPEAKER_01: but if it's something like a central build system,
- 15:36SPEAKER_01: no individual team is going to be able to fix that.
- 15:40Or it will be heroic effort,
- 15:42but the larger the company,
- 15:43the more impossible it is.
- 15:44SPEAKER_00: Exactly.
- 15:46SPEAKER_01: This is where I think
- 15:48SPEAKER_01: there can be some value, right?
- 15:50Especially when we're doing things like cohort analysis and
- 15:54kind of holistic
- 15:55measures and having it be a discussion where people can get
- 15:58curious and can talk
- 16:00SPEAKER_01: through what they think they're seeing and then go confirm.
- 16:04Because it's just not realistic for an executive to meet and be
- 16:08fully embedded with
- 16:09every single engineering team that exists and every single
- 16:11product team that exists
- 16:12SPEAKER_01: and every single marketing team that exists to try to figure out,
- 16:16SPEAKER_01: get a good feel for the business.
- 16:18SPEAKER_00: This makes a lot of sense.
- 16:19SPEAKER_00: And I really like about space how to me,
- 16:22that was the first framework that kind of made it really clear
- 16:24that this thing is
- 16:25complex and we can measure a lot of things and we should
- 16:28measure multiple things.
- 16:29And sometimes they will tell us different stories,
- 16:32but we need to look at the whole picture.
- 16:35SPEAKER_00: But before we go too much into space and what happened before...
- 16:39SPEAKER_00: Before space, there was Dora.
- 16:41SPEAKER_00: You mentioned your first startup.
- 16:43SPEAKER_00: It had a massive impact on the industry.
- 16:45SPEAKER_00: The book Accelerate, I think, had a huge impact as well.
- 16:48SPEAKER_00: I see it on the shelves of almost every engineering leader.
- 16:51And if you've not read it,
- 16:53I think it's a great read to start with,
- 16:56at least.
- 16:57SPEAKER_00: And in the Dora framework, there are four...
- 16:59SPEAKER_00: It's key metrics.
- 17:00SPEAKER_00: The deployment frequency for D,
- 17:02SPEAKER_00: lead time for changes,
- 17:04SPEAKER_00: change failure rate,
- 17:05SPEAKER_00: time to restore service.
- 17:07And still today,
- 17:08a lot of engineering leaders who I meet,
- 17:10they read the book.
- 17:11SPEAKER_00: They kind of hold it up and say, like, I've read the book.
- 17:13SPEAKER_00: I've cracked it.
- 17:15SPEAKER_00: What we need to do to be a highly performing team.
- 17:18SPEAKER_00: Here are these four things.
- 17:19SPEAKER_00: We're going to measure it.
- 17:20SPEAKER_00: And if we have high scores on it, we'll be there.
- 17:23SPEAKER_00: Now, clearly, things have evolved since.
- 17:25SPEAKER_00: But I'm interested.
- 17:28SPEAKER_00: Where do you see the usefulness of Dora?
- 17:29So teams who are optimizing for this and getting to this thing,
- 17:32you know,
- 17:33how far can they go?
- 17:34SPEAKER_00: And what is the point where it's kind of time to look at other things?
- 17:37And,
- 17:37you know,
- 17:38like,
- 17:38for example,
- 17:39how space and other things evolve from here?
- 17:43SPEAKER_01: Dora is a lot of things.
- 17:45SPEAKER_01: Dora is a...
- 17:47SPEAKER_01: how I kind of refer to the entire research program,
- 17:49SPEAKER_01: but a lot of folks just when they hear Dora,
- 17:51SPEAKER_01: they think about the four metrics.
- 17:52SPEAKER_01: And so I think understanding that there are both of those are important.
- 17:56SPEAKER_01: And here's why the four metrics end up being,
- 17:59SPEAKER_01: you know,
- 17:59SPEAKER_01: through a lot of statistical tests over 10 years now,
- 18:03SPEAKER_01: like even when I'm not doing the analysis,
- 18:05SPEAKER_01: it ends up being a very good indicator,
- 18:09SPEAKER_01: a really good signal for how well your development pipeline is working.
- 18:14SPEAKER_01: Is it relatively fast?
- 18:17SPEAKER_01: How many things can you deploy?
- 18:20SPEAKER_01: What are the quality outcomes at the end of that?
- 18:24And so for folks who are just starting out,
- 18:27that can be a pretty good place to start.
- 18:32Now,
- 18:32I will say sometimes folks just hate me because they're like,
- 18:34well,
- 18:34this doesn't work here.
- 18:35SPEAKER_01: I'm in air gap systems.
- 18:36SPEAKER_01: I'm in wherever.
- 18:38SPEAKER_01: find ways to accommodate for your environment.
- 18:43SPEAKER_01: I do work with folks that work in air gap systems that use Dora.
- 18:45SPEAKER_01: And so instead of the final...
- 18:46SPEAKER_00: And by air gap systems,
- 18:48can you just tell us for the ones of us who are not familiar
- 18:50with that term?
- 18:51SPEAKER_01: Yeah.
- 18:52So air gap systems are where you have some gap in your
- 18:56deployment process,
- 18:57SPEAKER_01: usually right before final deployment,
- 18:59SPEAKER_01: where there is no
- 19:02SPEAKER_01: communication between the two sides, right?
- 19:03SPEAKER_01: There's no input.
- 19:05SPEAKER_01: You can't just push and it deploys all the way through.
- 19:08So some folks that I work with that have air gap systems is the
- 19:10US Navy,
- 19:11right?
- 19:11SPEAKER_01: Yeah.
- 19:12SPEAKER_01: They do it.
- 19:12SPEAKER_00: It kind of makes sense why they would have that.
- 19:15SPEAKER_01: Right.
- 19:15SPEAKER_01: Many times it's for security purposes,
- 19:17but sometimes it's because you literally have to take something
- 19:20out to a ship or a
- 19:21SPEAKER_01: submarine and install it there,
- 19:22SPEAKER_01: right?
- 19:23SPEAKER_00: That's a good way to ship on a ship.
- 19:25SPEAKER_01: Yeah, right?
- 19:27And so there,
- 19:28we say,
- 19:29okay,
- 19:29well,
- 19:29then what do we want to consider our deployment pipeline?
- 19:32When we want to think about optimizing and improving this,
- 19:35what should that be?
- 19:36SPEAKER_01: Now,
- 19:37SPEAKER_01: at some point,
- 19:37you do want to consider flying out to a ship or a submarine and
- 19:41installing it.
- 19:42SPEAKER_01: But for the teams on the ground,
- 19:44you can go until that pre-prod environment because that's
- 19:47within the scope of control.
- 19:48SPEAKER_01: And that,
- 19:49SPEAKER_01: for all intents and purposes,
- 19:50SPEAKER_01: the way they're thinking about it,
- 19:52SPEAKER_01: that is what they're thinking about.
- 19:54SPEAKER_01: Now, the same is true for...
- 19:57like iPhone and Android apps,
- 19:59you can't push to the app store every single day.
- 20:03SPEAKER_01: That's not real, right?
- 20:05SPEAKER_01: But you can go to pre-prod and that can give you great insights.
- 20:09So don't get super caught up in like precise definitions
- 20:15because we can always accommodate,
- 20:17SPEAKER_01: right?
- 20:18SPEAKER_01: Now, your other question is how far should you go and what else is there?
- 20:23SPEAKER_01: Now, sometimes folks also tell me that they
- 20:26SPEAKER_01: hate DORA, the DORA 4, because it just tells them how bad they're doing.
- 20:29SPEAKER_01: But that's where the rest of the research program comes in, right?
- 20:32SPEAKER_01: Because there's a BFD,
- 20:34a big friendly diagram that kind of points to the many things
- 20:38that can improve
- 20:40SPEAKER_01: these four metrics.
- 20:41SPEAKER_01: Things like improving automated testing,
- 20:43SPEAKER_01: things like improving continuous integration,
- 20:46SPEAKER_01: things like improving your cloud deployments and your cloud usage.
- 20:52SPEAKER_01: So it can help
- 20:53SPEAKER_01: It's a signal, but it's not the action, right?
- 20:56SPEAKER_01: How well are we doing?
- 20:58And it can be good because as you generally start to improve,
- 21:01you start to improve.
- 21:02If there's a huge drop-off,
- 21:04you should probably take a look at your system,
- 21:06right?
- 21:07SPEAKER_01: So from a signal perspective, it's pretty good.
- 21:11SPEAKER_01: It's not everything though.
- 21:12And one thing I always try to point out is that DORA only goes
- 21:15from commit to production.
- 21:17SPEAKER_01: Now, back when we were starting this, this was like 2013.
- 21:22That end-to-end software systems had not been studied very much
- 21:26and measured
- 21:26SPEAKER_01: because it's so,
- 21:28SPEAKER_01: so difficult to measure them.
- 21:29And so we focused on that part of the engineering system
- 21:32because we thought we
- 21:32SPEAKER_01: could have some really good impact,
- 21:33SPEAKER_01: deliver some good insights.
- 21:36Also because that's the part of the process that can be highly engineered,
- 21:39right?
- 21:42SPEAKER_01: We want things to work better and be faster,
- 21:44but also sometimes we just need to take 30 minutes to go walk
- 21:47around outside to
- 21:48SPEAKER_01: solve a problem.
- 21:49SPEAKER_01: Sometimes we're sketching on a notebook to solve a problem.
- 21:51SPEAKER_01: Sometimes we're having discussions around prioritization.
- 21:55SPEAKER_01: Once you commit, though...
- 21:58SPEAKER_01: you should have opportunities to optimize all of that system.
- 22:03SPEAKER_01: It should be high predictability and low variability.
- 22:06And so that is also a nice way to think about that because if
- 22:08your tool chain is
- 22:10SPEAKER_01: really out of whack,
- 22:11SPEAKER_01: if it requires a ton of manual intervention,
- 22:13SPEAKER_01: if all of your tests and your builds are failing,
- 22:15SPEAKER_01: if it's highly,
- 22:16SPEAKER_01: highly variable,
- 22:17sometimes it's super fast and sometimes it absolutely breaks
- 22:19and you can't figure
- 22:20SPEAKER_01: out why.
- 22:21SPEAKER_01: It's a great place to start because you can engineer the heck out of it.
- 22:24SPEAKER_01: Okay.
- 22:24SPEAKER_01: But it's not everything.
- 22:26SPEAKER_01: Developer experience ends up being incredibly important.
- 22:29Now it's related because if you can't get feedback on something
- 22:31for two weeks and
- 22:33SPEAKER_01: then you find out that,
- 22:34SPEAKER_01: you know,
- 22:34SPEAKER_01: the thing you committed,
- 22:36SPEAKER_01: you thought you were done with,
- 22:37SPEAKER_01: you were no longer done with,
- 22:38SPEAKER_01: I have to drop all of my work.
- 22:39SPEAKER_01: I have to reset my environment.
- 22:40SPEAKER_01: I have to get my head back in the right head space.
- 22:43SPEAKER_01: I have to figure out everything that's happening.
- 22:45SPEAKER_01: So fast feedback is important,
- 22:46SPEAKER_01: but the rest of the developer experience,
- 22:48SPEAKER_01: the holistic developer experience is also important.
- 22:51SPEAKER_01: Can I set up an environment quickly?
- 22:52SPEAKER_01: Can I provision the resources that I need quickly?
- 22:54SPEAKER_01: Can I write code and do local build and test quickly with good insights?
- 22:59And so that's where identifying the opportunities to really
- 23:04understand and get to,
- 23:06SPEAKER_01: I like to look at this as a constraints problem,
- 23:08SPEAKER_01: theory of constraints.
- 23:09SPEAKER_01: Where are my biggest blockers?
- 23:11Because I can't fix everything,
- 23:12and I sure can't fix everything in the next month.
- 23:15SPEAKER_00: Do I understand correctly that Dora started with developer productivity,
- 23:22SPEAKER_00: if you will,
- 23:23SPEAKER_00: as you said,
- 23:24SPEAKER_00: until we ship,
- 23:25SPEAKER_00: just to get some data from there?
- 23:27And a lot of the research that has been happening since
- 23:30thinking about space,
- 23:31SPEAKER_00: thinking of the DevX framework,
- 23:33thinking about some new things coming are starting to look at
- 23:37not just this,
- 23:38SPEAKER_00: but also the other part or get a piece of the puzzle.
- 23:41SPEAKER_00: I'm just putting it here.
- 23:42SPEAKER_00: As you mentioned, developer productivity and how all of this works.
- 23:47SPEAKER_00: is affecting one or the other.
- 23:49SPEAKER_00: Is this a fair way to say where the space is progressing?
- 23:53SPEAKER_00: Or how do you see things evolving since Dora,
- 23:56together with space and some of the newer research that you're
- 23:59embarking on?
- 24:00SPEAKER_01: Yeah.
- 24:01So a lot of people have studied various ways to improve the
- 24:06active writing software,
- 24:07right?
- 24:07SPEAKER_01: I don't want to say development, because development is a lot of things.
- 24:09SPEAKER_01: But when you're coding in an IDE, what are ways that we can improve that?
- 24:15But I think there has been kind of this continued evolution
- 24:18both with the tools
- 24:19SPEAKER_01: that we have,
- 24:20SPEAKER_01: with the processes we have,
- 24:22with the things that we've learned prior to think about this
- 24:26from an end-to-end
- 24:28SPEAKER_01: type of a view,
- 24:30SPEAKER_01: right?
- 24:30SPEAKER_01: So not just commit and not just writing code.
- 24:33Although many people focus on that and they're the experts and
- 24:35they can tell you
- 24:36everything down to the millisecond of how long things take and
- 24:39like at what point
- 24:41SPEAKER_01: you lose focus and you break concentration.
- 24:43So I think all of that,
- 24:45all of these individual pieces are very,
- 24:46very important.
- 24:48SPEAKER_01: And for some folks,
- 24:50SPEAKER_01: myself included,
- 24:51SPEAKER_01: my team,
- 24:52we like to look at the full experience to kind of test what
- 24:56that looks like.
- 24:56And I think it's fair to say that that is part of the evolution
- 24:59of space is we had
- 25:02SPEAKER_01: learned so much about the commit to prod.
- 25:08SPEAKER_01: And how else do we want to think about that?
- 25:09And I had been chatting with so many companies for so long that
- 25:12kept saying,
- 25:12SPEAKER_01: well,
- 25:12SPEAKER_01: how do I define a metric then?
- 25:14SPEAKER_01: How do I pick the right thing?
- 25:15SPEAKER_01: Or once you're in DORA and let's say DORA,
- 25:18SPEAKER_01: you know,
- 25:18SPEAKER_01: the analysis,
- 25:19some kind of constraint analysis tells you that build is the
- 25:22biggest problem or PR
- 25:23SPEAKER_01: is the biggest problem.
- 25:24SPEAKER_01: Then the question is, well, how do I measure it?
- 25:26And so space was useful here because it can measure the entire
- 25:29developer end-to-end tool chain.
- 25:31SPEAKER_01: Or you can just come up with space metrics specific to PRs.
- 25:36SPEAKER_01: How satisfied are people with the PR assignment process?
- 25:39SPEAKER_01: What's the outcome of PRs, right?
- 25:40Like what percentage of PRs get through within a day,
- 25:45a certain timeframe or number of viewers?
- 25:47SPEAKER_01: Activity metrics, how many PRs do people commit?
- 25:50SPEAKER_01: How many PRs are they assigned?
- 25:52SPEAKER_01: Communication, right?
- 25:53SPEAKER_01: Like what does the communication piece look like?
- 25:54SPEAKER_01: And then efficiency and flow, how long does it take?
- 25:56SPEAKER_01: Where are the delays?
- 25:58SPEAKER_01: So you can apply space to a specific component, right?
- 26:02SPEAKER_01: as well.
- 26:03SPEAKER_01: And it turns out, when I went back and looked, Dora is an instance.
- 26:08SPEAKER_01: It's an instantiation of space.
- 26:11SPEAKER_00: Oh, wow.
- 26:11SPEAKER_00: That's kind of reassuring.
- 26:13SPEAKER_01: Yeah.
- 26:13SPEAKER_01: So deploy frequency is a count, right?
- 26:15SPEAKER_01: That's an activity metric.
- 26:16SPEAKER_01: Lead time to deploy is efficiency and flow.
- 26:19SPEAKER_01: And then change, fail, and time to restore are both performance metrics.
- 26:23SPEAKER_00: So getting into developer experience,
- 26:28SPEAKER_00: As you mentioned,
- 26:30SPEAKER_00: this is becoming increasingly important,
- 26:33SPEAKER_00: especially at mid-sized companies and larger companies.
- 26:35SPEAKER_00: Maybe startups don't care as much just yet.
- 26:37SPEAKER_00: But what does this term mean to you?
- 26:41SPEAKER_00: What is a place that has good developer experience?
- 26:45SPEAKER_01: I think developer experience is what...
- 26:51SPEAKER_01: A developer goes through, like, what's their lived experience?
- 26:55SPEAKER_01: I'm very, very reciprocal in using the same word.
- 26:59But in research,
- 26:59we like to talk about,
- 27:00like,
- 27:00what's a lived experience,
- 27:02right?
- 27:02SPEAKER_01: What does it feel like and what is it like to do the job day to day?
- 27:06SPEAKER_01: Um,
- 27:07now many times people kind of conflate like a good developer
- 27:09experience with just
- 27:10SPEAKER_01: using the word developer experience,
- 27:12but I do think it's important to think about them at least a
- 27:14little bit separately
- 27:15SPEAKER_01: because the experience is just what the work is,
- 27:18SPEAKER_01: right?
- 27:19SPEAKER_01: Could be good.
- 27:19SPEAKER_01: It could be bad.
- 27:20SPEAKER_01: That's what it is.
- 27:21SPEAKER_01: And then if we want to improve it,
- 27:23SPEAKER_01: we can look for ways where we can identify ways,
- 27:25SPEAKER_01: uh,
- 27:26SPEAKER_01: that take away from,
- 27:28SPEAKER_01: or in inject negative,
- 27:30SPEAKER_01: uh,
- 27:32SPEAKER_01: like not wanted things in that developer experience,
- 27:35SPEAKER_01: which often looks like friction,
- 27:37SPEAKER_01: which often looks like blockers and barriers,
- 27:39SPEAKER_01: which often looks like confusion,
- 27:42SPEAKER_01: right?
- 27:42If we can't find information,
- 27:44if we can't find the docs,
- 27:45if we can't find any of the things.
- 27:47SPEAKER_01: then that gives us an improving developer experience.
- 27:51Or sometimes there's a degradation in developer experience when
- 27:53we roll out.
- 27:54SPEAKER_01: I'm sure people will think about this, right?
- 27:55When a company rolls out a new HR system or a new expense
- 27:59system or a new budgeting system,
- 28:01SPEAKER_01: it's going to slow me down.
- 28:02And that might not be what people typically think of as my role
- 28:05as a developer.
- 28:06But if I need to ever interact with these systems with a type
- 28:09of regularity,
- 28:10SPEAKER_01: you've got an initial learning curve,
- 28:11SPEAKER_01: which
- 28:13SPEAKER_01: is understandable,
- 28:14but if that delay or if that friction remains for an extended
- 28:17period of time,
- 28:20SPEAKER_01: that is going to affect the way I do my work.
- 28:22SPEAKER_00: It will affect the time that I have available.
- 28:24SPEAKER_00: Just as you say, an example that came to my mind.
- 28:26SPEAKER_00: When I worked at Uber, when I started, things were pretty kind of free.
- 28:30You could access a lot of systems and there was some logging of
- 28:34accessing sensitive data.
- 28:35When you went to profile,
- 28:37you had to just write quickly while you're doing it and then boom.
- 28:40SPEAKER_00: And then as Uber grew, obviously they needed more compliance.
- 28:43So what happened is when you wanted to access that systems or
- 28:46even data as I was
- 28:47SPEAKER_00: debugging customer issue,
- 28:49SPEAKER_00: I needed to fill it out.
- 28:50SPEAKER_00: And my manager or my director had to approve it.
- 28:53SPEAKER_00: Now, suddenly stuff started happening.
- 28:55SPEAKER_00: We're like, okay, I need to just fix this bug.
- 28:58And I couldn't because my director or my manager was traveling
- 29:02and it was like two
- 29:03SPEAKER_00: days because then the skip level and suddenly I lost context.
- 29:05SPEAKER_00: I didn't get back.
- 29:06SPEAKER_00: And I mean, this policy change that had nothing to do with developer.
- 29:12SPEAKER_00: It was just really like hammering down.
- 29:14SPEAKER_00: I never thought of it as the developer experience was there.
- 29:17SPEAKER_00: I was like, oh, there's just, you know, things.
- 29:19SPEAKER_00: But the result was like things were tasks were getting done slower,
- 29:22SPEAKER_00: especially these debugging tasks.
- 29:24SPEAKER_00: That's an interesting way to think of it.
- 29:26SPEAKER_00: I don't think we thought of it like that.
- 29:27SPEAKER_01: And I love that you bring up not just the time delay,
- 29:30SPEAKER_01: but also the cognitive implications,
- 29:32SPEAKER_01: right?
- 29:32How does this affect your cognitive load in terms of having to
- 29:35come back to it
- 29:35SPEAKER_01: later and regain context?
- 29:37SPEAKER_01: But also,
- 29:38SPEAKER_01: maybe this is just me,
- 29:39but I'll joke that I just end up having to use computers in
- 29:42anger too often,
- 29:43SPEAKER_01: right?
- 29:43SPEAKER_01: Because when it keeps breaking,
- 29:44I can handle so much frustration and still be at my best in
- 29:48terms of creativity.
- 29:49SPEAKER_01: And sometimes it inspires me.
- 29:50SPEAKER_01: But at some point, I'm like,
- 29:52SPEAKER_01: Not today.
- 29:53SPEAKER_01: We're done.
- 29:55SPEAKER_01: I've got to jump over to some administrivia that needs done anyway.
- 29:58And it just doesn't require the type of problem solving and
- 30:02creativity and
- 30:03SPEAKER_01: innovation that great work does.
- 30:06And I can't do great work when I'm just surrounded by friction
- 30:10and interruptions
- 30:11SPEAKER_01: and broken systems and unnecessary process.
- 30:14SPEAKER_01: Some of it's good.
- 30:15SPEAKER_01: But also, how can we find ways to minimize that process?
- 30:20SPEAKER_01: Security and compliance is super important.
- 30:22Are there ways where any environment that gets spun up
- 30:25automatically has all of the
- 30:28SPEAKER_01: or most of the preconditions in the settings done versus a developer,
- 30:32every single developer having to do it manually every single
- 30:34day and every single time,
- 30:36SPEAKER_01: multiple times a day?
- 30:37SPEAKER_00: Now,
- 30:38SPEAKER_00: in your experience,
- 30:38SPEAKER_00: because you talk with a lot of different companies,
- 30:41SPEAKER_00: large and small,
- 30:42SPEAKER_00: you also work at some very well-known ones.
- 30:46SPEAKER_00: Again, pretty pointed question.
- 30:47Do you think developer experience in general is better at some
- 30:51of the largest companies,
- 30:53SPEAKER_00: you know,
- 30:53SPEAKER_00: the Facebooks,
- 30:54SPEAKER_00: the Microsofts,
- 30:55SPEAKER_00: the Metas,
- 30:56SPEAKER_00: et cetera,
- 30:57SPEAKER_00: or at small startups?
- 30:59SPEAKER_00: Which,
- 30:59SPEAKER_00: you know,
- 30:59SPEAKER_00: like these big companies that I mentioned,
- 31:01they do invest a lot in developer productivity and sometimes
- 31:04smaller companies look
- 31:04SPEAKER_00: at them as envy.
- 31:05SPEAKER_00: They have platform teams,
- 31:06SPEAKER_00: they build custom tools,
- 31:07SPEAKER_00: they have teams that measure all these things and try to improve it.
- 31:11Startups,
- 31:11you know,
- 31:12small like two,
- 31:12three,
- 31:13five person startup has none of that.
- 31:14SPEAKER_00: They just kind of do whatever they can.
- 31:17SPEAKER_00: So do you see a difference between them?
- 31:20SPEAKER_00: Because sometimes startups move pretty darn fast.
- 31:22SPEAKER_01: Yeah, I will say yes and no.
- 31:24And a joke I used to make all the time when people would come
- 31:28to me with Dora and
- 31:28SPEAKER_01: they would say,
- 31:28SPEAKER_01: well,
- 31:29this can't apply to me because I'm at a startup or there's no
- 31:31way this could apply
- 31:32SPEAKER_01: to me because I'm in a large company.
- 31:33SPEAKER_01: There has to be something different.
- 31:34SPEAKER_01: I'm like, well, startups...
- 31:36SPEAKER_01: tend to be faster.
- 31:37SPEAKER_01: They have less bureaucracy.
- 31:38SPEAKER_01: They have less levels.
- 31:40SPEAKER_01: Large companies have more funding.
- 31:41SPEAKER_01: They have more resources.
- 31:42They have more ways to help improve what that developer
- 31:45experience looks like.
- 31:46SPEAKER_01: So TLDR, no excuses.
- 31:49SPEAKER_01: But what do I see?
- 31:50SPEAKER_01: I see a mix, right?
- 31:53SPEAKER_01: So I've been at a large company that had Google, right?
- 31:58SPEAKER_01: Probably the best developer experience I've ever seen.
- 32:00SPEAKER_01: It was incredible.
- 32:01SPEAKER_01: I was committed to coding the first day.
- 32:05SPEAKER_01: It was great.
- 32:07They have really taken time to invest in that and prioritize
- 32:10that and research that,
- 32:11right?
- 32:12I worked with some incredible researchers there that did great
- 32:15works here.
- 32:16SPEAKER_01: Jasper.
- 32:19SPEAKER_01: Emerson Murphy Hill, he's at Microsoft now.
- 32:22SPEAKER_01: They care deeply about that.
- 32:24SPEAKER_01: And it's evident through almost every system that they have.
- 32:27SPEAKER_01: They do not tolerate friction.
- 32:29SPEAKER_01: I've been at other large companies and advised,
- 32:31SPEAKER_01: especially I've seen,
- 32:32SPEAKER_01: you know,
- 32:32SPEAKER_01: as I kind of talk to large companies,
- 32:35SPEAKER_01: some of them are very good and some of them are...
- 32:39SPEAKER_01: Very bad.
- 32:40SPEAKER_01: Like it's, I don't want to say bad.
- 32:41It's not a value judgment,
- 32:42but it's incredibly difficult to get work done there.
- 32:45SPEAKER_01: Why?
- 32:46Because many times they're working in large legacy systems,
- 32:49legacy code bases.
- 32:51They're working with layers of bureaucracy that slowly built up
- 32:54over time.
- 32:55SPEAKER_01: And now it just makes it incredibly difficult to do work.
- 32:58SPEAKER_02: Yeah.
- 32:59SPEAKER_01: Startups have often a slightly different set of constraints.
- 33:04SPEAKER_01: They can move fast.
- 33:05SPEAKER_01: They can pick whatever tool they want.
- 33:06SPEAKER_01: They can just go.
- 33:08SPEAKER_01: That also means they have less infrastructure in place.
- 33:11SPEAKER_01: They have to build that as they go.
- 33:12SPEAKER_01: They have to acquire that.
- 33:15SPEAKER_01: If they have to go through security and compliance,
- 33:16SPEAKER_01: there is not a team dedicated to security and compliance at DORA.
- 33:20We were a tiny little like three person startup that pretended
- 33:23to be like a 10 person startup.
- 33:25We did sock two compliance because some of our customers
- 33:27required that getting a
- 33:28SPEAKER_01: sock two and basically two,
- 33:31SPEAKER_01: two and a half,
- 33:31SPEAKER_01: three person company.
- 33:32SPEAKER_01: That's a lot, right?
- 33:34SPEAKER_01: Like that.
- 33:35SPEAKER_00: Congrats.
- 33:36SPEAKER_00: I did that.
- 33:37SPEAKER_00: We did that at Uber, but we had a massive team dedicated people.
- 33:40SPEAKER_01: It stopped work.
- 33:42SPEAKER_01: Now shout out to Jez because he did the lion's share of that work.
- 33:47Um,
- 33:48but there was no development happening through those,
- 33:52those that week or two.
- 33:53SPEAKER_01: Right.
- 33:53It just doesn't happen unless it was like emergency bug fixes
- 33:56or something.
- 33:57SPEAKER_02: Yeah.
- 33:59SPEAKER_01: So there's, there, there are always trade-offs wherever you go.
- 34:04SPEAKER_00: One thing that keeps coming,
- 34:06SPEAKER_00: I just keep asking,
- 34:07because I've also been thinking and covering and being involved
- 34:11in developer
- 34:11SPEAKER_00: productivity here and there for many,
- 34:13SPEAKER_00: many years now.
- 34:15SPEAKER_00: Why is it so darn hard?
- 34:18SPEAKER_00: And you've been doing this for a lot longer than I have.
- 34:21why it just feels you know like we're software engineers we
- 34:24write code we have an
- 34:25output okay we're people as well but we're kind of pretty
- 34:27organized people it feels
- 34:29eventually we should we should converge on something that's
- 34:31kind of you know like
- 34:33easy enough to understand and and the space should go down a
- 34:36little bit you know we
- 34:37should understand more and more and there's less ambiguity it
- 34:39doesn't seem to be
- 34:40happening how are you seeing it why is it hard i think it's
- 34:45hard for a lot of
- 34:45SPEAKER_01: reasons right one is that
- 34:48SPEAKER_01: Most of the work that we do is, let's say, invisible.
- 34:51SPEAKER_01: You can't walk down to a production line and see where something breaks.
- 34:56SPEAKER_01: That's part of it.
- 34:57And the systems that we use and we work with are increasing in complexity.
- 35:02SPEAKER_01: When we think about cloud systems,
- 35:05that changed the way we had to think about distributed systems
- 35:09and orchestrating
- 35:10SPEAKER_01: them and architecting them.
- 35:12SPEAKER_01: Now, we have AI.
- 35:14AI also changes the way we need to think about the
- 35:16infrastructure and the pipelines
- 35:18SPEAKER_01: and the tooling and the model management,
- 35:21SPEAKER_01: right?
- 35:23SPEAKER_01: How we think about that and how we account for that,
- 35:26just its existence and its emergence with continued growth
- 35:30changes the complexity
- 35:31SPEAKER_01: of the work that we need to do and the supporting systems that we need.
- 35:35SPEAKER_01: Another thing that can be challenging is many times leaders and execs.
- 35:39SPEAKER_01: aren't feeling the pain, right?
- 35:40SPEAKER_01: How many CEOs have been developers and are currently,
- 35:45SPEAKER_01: so some of them are developers,
- 35:46but also how many of them are currently using our systems to do
- 35:50work and using them
- 35:52SPEAKER_01: for at least a week or two,
- 35:55SPEAKER_01: right?
- 35:55SPEAKER_01: They're not managing their calendars.
- 35:57SPEAKER_01: They're not, which they shouldn't be, but if they had to feel that pain,
- 36:03SPEAKER_01: I think the motivation would change.
- 36:05SPEAKER_00: This is so interesting because when I talk with David Singleton,
- 36:09SPEAKER_00: who used to be the CET of Stripe for seven years,
- 36:12SPEAKER_00: he told me that every few months,
- 36:15SPEAKER_00: he takes a few days where he does
- 36:18development work,
- 36:19which I found very interesting because not many CTOs at his
- 36:22level do it.
- 36:22SPEAKER_00: He had thousands of people underneath him.
- 36:24SPEAKER_00: At the same time,
- 36:25SPEAKER_00: Stripe is one that invests very heavily into platform teams,
- 36:29into developer tools that they had one of their AI systems
- 36:33early on to help developers.
- 36:35SPEAKER_00: And
- 36:37SPEAKER_00: I was thinking,
- 36:37SPEAKER_00: and he told me,
- 36:38SPEAKER_00: look,
- 36:38SPEAKER_00: if you're not doing this,
- 36:40SPEAKER_00: he said what you're saying,
- 36:42SPEAKER_00: but very few people do it.
- 36:43SPEAKER_00: So I think that's just a really interesting point.
- 36:46SPEAKER_00: I think anyone listening who's in a leadership position,
- 36:49SPEAKER_00: especially in a C-level position,
- 36:51SPEAKER_00: if you're not doing it,
- 36:52SPEAKER_00: there's companies that are doing it a lot better.
- 36:56SPEAKER_00: And you might be missing some things.
- 36:58SPEAKER_01: Right.
- 36:58SPEAKER_01: And in that case, because maybe...
- 37:01SPEAKER_01: For whatever reason,
- 37:02an executive team can't be carving out several days to do
- 37:06development work.
- 37:07SPEAKER_01: Courtney Kistler is at Starbucks now.
- 37:09SPEAKER_01: I met her back when she was at Nordstrom.
- 37:12She had a phrase that has always really kind of stuck with me
- 37:15and resonated,
- 37:15SPEAKER_01: and it's,
- 37:16SPEAKER_01: honor their reality.
- 37:19If you ask a handful of developers and engineering managers
- 37:22what it's like to work
- 37:23SPEAKER_01: in systems,
- 37:24SPEAKER_01: you don't even need a survey,
- 37:24SPEAKER_01: right?
- 37:25SPEAKER_01: Like if you want to send someone,
- 37:26SPEAKER_01: if you want to chat with a handful of them,
- 37:28SPEAKER_01: you need to honor that reality.
- 37:30SPEAKER_01: You might not agree with it,
- 37:31SPEAKER_01: but that doesn't mean that isn't their lived experience of doing work.
- 37:36SPEAKER_01: And sometimes that's going to be the best proxy you can get,
- 37:38but getting it is super important and listening to it and being
- 37:41curious about it is
- 37:43SPEAKER_01: super important.
- 37:44SPEAKER_00: This episode was brought to you by Sentry.
- 37:47SPEAKER_00: Buggy lines of code and long API calls are impossible to debug,
- 37:50SPEAKER_00: and random app crashes are things no software engineer is a fan of.
- 37:54This is why over 4 million developers use Sentry to fix errors
- 37:58and crashes and
- 37:59SPEAKER_00: solve hidden or tricky performance issues.
- 38:02SPEAKER_00: Sentry costs debugging time in half,
- 38:04SPEAKER_00: no more soul-crushing lock sifting,
- 38:06SPEAKER_00: or vague user reports like,
- 38:08SPEAKER_00: it broke,
- 38:08SPEAKER_00: fix it.
- 38:10SPEAKER_00: Get the context you need to know,
- 38:11SPEAKER_00: what happened,
- 38:12SPEAKER_00: when it happened and the impact,
- 38:14SPEAKER_00: down to the device,
- 38:15SPEAKER_00: browser and even a replay of what the user did before the error.
- 38:18Sentry will alert the right dev on your team with the exact
- 38:21broken line of code so
- 38:22they can push a fix fast or let autofix handle the repetitive
- 38:26fixes so your team
- 38:27SPEAKER_00: can focus on the real problems.
- 38:30Sentry helped monday.com reduce their errors by 60% and sped up
- 38:33time to resolution
- 38:34SPEAKER_00: for next door by 45 minutes per dev per issue.
- 38:38Get your whole team on Sentry in seconds by heading to
- 38:40sentry.io slash pragmatic.
- 38:43SPEAKER_00: That is S-E-N-T-R-Y dot I-O slash pragmatic.
- 38:48Or use the code pragmatic on sign up for three months on the
- 38:50team plan and 50,000
- 38:51SPEAKER_00: errors per month for free.
- 38:54SPEAKER_00: Now,
- 38:55most people listening who are software engineers or engineering
- 38:58managers who are
- 38:58SPEAKER_00: pretty hands-on or stay close to the teams,
- 39:01SPEAKER_00: they will agree with both of us that this is important.
- 39:05SPEAKER_00: Developer productivity is important.
- 39:06SPEAKER_00: It's hard.
- 39:07And if you're above a certain size,
- 39:10mid-size or above,
- 39:11you kind of need some investment.
- 39:13SPEAKER_00: It's nice to have dedicated folks who help out.
- 39:16May that be provisioning infrastructure,
- 39:18standardizing things,
- 39:19or building systems.
- 39:21SPEAKER_00: The number one question,
- 39:22SPEAKER_00: or not the number one,
- 39:23SPEAKER_00: but a very frequent question I get from people,
- 39:26SPEAKER_00: especially engineering managers,
- 39:27SPEAKER_00: senior managers,
- 39:28SPEAKER_00: directors,
- 39:28SPEAKER_00: is I see this as a problem.
- 39:30I think we should invest more into developer productivity or
- 39:34internal tools that
- 39:35SPEAKER_00: help us with developer productivity platform teams.
- 39:38SPEAKER_00: I need to get funding for this, and I like to make a case that
- 39:41SPEAKER_00: What is your suggestion of doing so?
- 39:44And I'm asking you as someone who's advised a lot of companies
- 39:48and seen them,
- 39:50what are ways you've seen engineering making the case that
- 39:54there should be an
- 39:55investment in platform teams that directly or indirectly
- 39:58address some of these topics?
- 40:00Because,
- 40:00you know,
- 40:00the business,
- 40:01the usual pushback will be engineering expensive enough.
- 40:04SPEAKER_00: We gave you enough resources.
- 40:06SPEAKER_00: You should just start it out as you are.
- 40:09SPEAKER_01: Yep.
- 40:10In general,
- 40:11I would say some of the best ways to communicate include both
- 40:16data and stories.
- 40:18SPEAKER_01: If we can have some numbers, that can be incredibly helpful.
- 40:21SPEAKER_01: It can drive it home.
- 40:21SPEAKER_01: If you only have numbers...
- 40:25SPEAKER_01: it becomes abstract.
- 40:26SPEAKER_01: It's just another spreadsheet or a number on a document.
- 40:29SPEAKER_01: Now, if we only have stories, it can be easily dismissed as a one-off.
- 40:33SPEAKER_01: That's just that one thing.
- 40:34SPEAKER_01: Someone is just like a disgruntled engineer, right?
- 40:37SPEAKER_01: Someone, some team just doesn't like, it was just that week.
- 40:42And many times resourcing will come down to like,
- 40:46what are the trade-offs?
- 40:47SPEAKER_01: And you want to take a realistic look.
- 40:51SPEAKER_01: Are your engineers having to
- 40:54SPEAKER_01: you know, rewrite, like re-roll scripts every single time they deploy?
- 40:59SPEAKER_01: How much time does that take?
- 41:00SPEAKER_01: So go around to do just a rough estimate.
- 41:03SPEAKER_01: Like at Chef, we did this early on and we just had a spreadsheet.
- 41:07SPEAKER_01: This does not have to be, you know, super intense or rigorous.
- 41:10SPEAKER_01: We had a spreadsheet where at the end of the week,
- 41:12we asked engineering managers to like kind of chime in on like
- 41:15about how long
- 41:16SPEAKER_01: certain things took.
- 41:17Because then you can do some kind of like rough back of the
- 41:20napkin math to say,
- 41:21SPEAKER_01: this is how much time we're losing in aggregate.
- 41:24SPEAKER_01: Now,
- 41:24SPEAKER_01: if you want us to repurpose engineers,
- 41:26SPEAKER_01: we can,
- 41:27but this is the impact on the product because we can come with
- 41:31a recommendation,
- 41:32SPEAKER_01: but it's going to be someone else's decision.
- 41:34And the more information we can give them about the trade-offs
- 41:36that exist in the system,
- 41:38SPEAKER_01: the more valuable it will be and then pair it with a story.
- 41:41SPEAKER_01: Now it can be an actual story.
- 41:43SPEAKER_01: It can be a quote of a comment or it can be a very true amalgamation,
- 41:48like almost a persona of what a day in the life of development
- 41:51looks like now and
- 41:53SPEAKER_01: then what it could look like later.
- 41:55And then it comes back to being a decision around where are we
- 41:58going to invest the resources?
- 41:59SPEAKER_01: We're always in a constrained environment.
- 42:01SPEAKER_01: No one has unlimited resourcing.
- 42:02SPEAKER_01: Maybe a couple of AI companies, right?
- 42:05SPEAKER_01: We always have constraints.
- 42:06SPEAKER_01: So what's the best way to do this?
- 42:08I will say one additional thing to keep in mind for folks kind
- 42:12of kicking this off
- 42:13SPEAKER_01: or making decisions about whether they should be investing in this is
- 42:17is to acknowledge both to yourself and to leadership that there
- 42:22is a tipping point
- 42:23SPEAKER_01: in this trade-off where further investments,
- 42:26SPEAKER_01: explicit,
- 42:28SPEAKER_01: you know,
- 42:28SPEAKER_01: dedicated investments...
- 42:30SPEAKER_01: won't deliver that much more progress.
- 42:34SPEAKER_02: Yeah.
- 42:35SPEAKER_01: Which I think is important because there's,
- 42:37SPEAKER_01: you know,
- 42:37SPEAKER_01: I've talked to execs before who were like,
- 42:39SPEAKER_01: I'm not going to take this meeting.
- 42:41SPEAKER_01: It's just a black box.
- 42:42SPEAKER_01: Everything's broken all the time.
- 42:44SPEAKER_01: So being upfront about the fact and saying,
- 42:46I know that there are so many problems and we could like spend
- 42:49all of the company's
- 42:50SPEAKER_01: resources fixing all of it.
- 42:51SPEAKER_01: I know that's not what we want to do.
- 42:53I am trying to optimize our workflow so that we can deliver
- 42:57value to our customers.
- 42:59SPEAKER_01: And I think this is going to be a very important leverage point.
- 43:02And once we get to a point we'll continually reassess where
- 43:04it's good enough,
- 43:06SPEAKER_01: we will retain these investments,
- 43:07SPEAKER_01: right?
- 43:07SPEAKER_01: We'll keep a platform team,
- 43:09but we won't need additional investment until it starts
- 43:12negatively impacting the business.
- 43:14SPEAKER_01: And that kind of opens up a door to have a real conversation around like,
- 43:20SPEAKER_01: what are the constraints that we have,
- 43:21SPEAKER_01: right?
- 43:21SPEAKER_01: Don't just ask for headcount.
- 43:22SPEAKER_00: Yeah, I love the both that you're saying, making the case.
- 43:26Well,
- 43:26first of all,
- 43:26making about trade-offs,
- 43:27because I think that's a lot easier to work with.
- 43:30SPEAKER_00: The fact that mentioning that you can later repurpose teams,
- 43:34SPEAKER_00: and I think just the reality right now in the market,
- 43:37SPEAKER_00: it's all about efficiency.
- 43:39There's now a push with a lot of companies where they're
- 43:42hesitant to hire more
- 43:43SPEAKER_00: software engineers.
- 43:44So I do think folks will need to get a lot more creative and
- 43:47also just accept the reality that
- 43:49SPEAKER_00: We might have,
- 43:50SPEAKER_00: you know,
- 43:51SPEAKER_00: we've had a really good run of the last 10 years where we,
- 43:53SPEAKER_00: like so many places,
- 43:54SPEAKER_00: got almost unlimited investment in these areas as well,
- 43:58SPEAKER_00: which meant that engineers didn't have to feel some of the pain.
- 44:01We might need to,
- 44:02you know,
- 44:02just decide that some of this pain,
- 44:03it is here.
- 44:04SPEAKER_00: Let's solve it.
- 44:05SPEAKER_00: Let's try to, you know, work around it.
- 44:07SPEAKER_00: But let's solve the most important pain points.
- 44:09SPEAKER_00: So I feel there might be a bit of a turning point.
- 44:11SPEAKER_00: A lot of companies,
- 44:12SPEAKER_00: not all of them,
- 44:13SPEAKER_00: were like what you've been used to,
- 44:15SPEAKER_00: you know,
- 44:15SPEAKER_00: getting resources to just building teams that helped it.
- 44:19Either help yourself or or sort it or look at tools that can
- 44:24make it change up your workflow.
- 44:26SPEAKER_00: So is this also a little bit what you might be seeing?
- 44:29SPEAKER_01: Yeah.
- 44:29SPEAKER_00: Yeah, absolutely.
- 44:31SPEAKER_00: So talking about highly productive companies in now in 2025.
- 44:39SPEAKER_00: Some of the most productive companies that you would say are teams,
- 44:42SPEAKER_00: engineering teams,
- 44:43SPEAKER_00: I would say,
- 44:43SPEAKER_00: that just get stuff done.
- 44:45SPEAKER_00: What are some of the common traits that you see across them?
- 44:48SPEAKER_00: And are there some common practices that they use?
- 44:51SPEAKER_00: May they be a startup or a team within a larger company?
- 44:56Many times what I get instead from a company is how do I make
- 44:59my company high performing,
- 45:01SPEAKER_01: right?
- 45:01SPEAKER_01: But it really is very contextual to teams, right?
- 45:04SPEAKER_01: Because there are team technologies,
- 45:06SPEAKER_01: there are team onboarding,
- 45:07SPEAKER_01: there are team cultures,
- 45:08SPEAKER_01: there are team norms.
- 45:09SPEAKER_01: So it can be a group of teams, right?
- 45:12But I often see very different,
- 45:16let's say like performance profiles,
- 45:17right?
- 45:18SPEAKER_01: Across a company.
- 45:20SPEAKER_01: Now, what makes them great?
- 45:21SPEAKER_01: And you can be great anywhere.
- 45:23SPEAKER_01: I've seen a great team working on mainframes.
- 45:25SPEAKER_01: I've seen great teams working on SaaS software.
- 45:28SPEAKER_01: I've seen bad teams working on SaaS software.
- 45:30SPEAKER_01: I've seen bad performing teams working on- We've all seen it, no?
- 45:33SPEAKER_00: We've all seen this, right?
- 45:34SPEAKER_00: We might have even been that team.
- 45:37SPEAKER_01: Maybe, yes.
- 45:39SPEAKER_01: That's a yes.
- 45:42The thing that I see in these teams is a few key
- 45:46characteristics and values.
- 45:49SPEAKER_01: psychological safety is always in there, right?
- 45:51SPEAKER_01: I'm sure several of us have heard about that.
- 45:52SPEAKER_01: You feel safe taking risks.
- 45:54SPEAKER_01: You feel safe asking stupid questions.
- 45:56SPEAKER_01: You feel safe doing so many things.
- 46:00Another part of psychological safety is depending on your team
- 46:03and also knowing
- 46:04SPEAKER_01: that your work has purpose.
- 46:07SPEAKER_01: And that can come back to asking stupid questions, right?
- 46:09SPEAKER_01: Sometimes stupid.
- 46:10They're very important questions as like,
- 46:13how does the project that we're working on right now
- 46:16SPEAKER_01: relate to the group or the business goals and does it.
- 46:22I was at a company once where we rolled some of these things
- 46:24out and a few
- 46:25SPEAKER_01: engineers quietly back channel came to me and they're like,
- 46:28SPEAKER_01: I don't think this aligns to any of the key,
- 46:31SPEAKER_01: you know,
- 46:31SPEAKER_01: the exec OKRs.
- 46:32SPEAKER_01: What am I doing?
- 46:33SPEAKER_01: And so we were able to have a discussion around it does.
- 46:37SPEAKER_01: It's just worded differently.
- 46:38And you're not only impacting your line of business,
- 46:41you're impacting three others.
- 46:43SPEAKER_01: Or I don't see how it aligns at all.
- 46:46You should chat with your manager because this might be a good
- 46:48opportunity for prioritization.
- 46:51SPEAKER_01: So psychological safety is one.
- 46:53A very related one is getting curious,
- 46:57being very open to asking questions and learning more.
- 47:00SPEAKER_01: And I especially see this in large companies,
- 47:04SPEAKER_01: being open to the possibility and frankly,
- 47:07the high likelihood that the way you do things now is not the
- 47:11best way to do things.
- 47:12Just because something was difficult or impossible to solve
- 47:15five years ago doesn't
- 47:17SPEAKER_01: mean it hasn't been solved.
- 47:18And so when you open yourself up to the possibility that there
- 47:21could be better ways
- 47:22SPEAKER_01: to do things,
- 47:23SPEAKER_01: there may be other teams doing better than you.
- 47:27SPEAKER_01: then you can learn what that is.
- 47:29SPEAKER_01: It offers an opportunity for improvement.
- 47:31SPEAKER_01: I've worked with teams in larger,
- 47:34SPEAKER_01: older orgs where I came in,
- 47:36SPEAKER_01: this was a problem,
- 47:37SPEAKER_01: and they're like,
- 47:37SPEAKER_01: oh,
- 47:37SPEAKER_01: well,
- 47:38but that's not one we're going to look at because that just
- 47:40can't be solved.
- 47:42Because the last time they really put their heads down to try
- 47:44to solve it,
- 47:44SPEAKER_01: it was seven or eight years ago.
- 47:45SPEAKER_01: And it's actually been solved now.
- 47:47SPEAKER_01: I can point you to conference talks.
- 47:50SPEAKER_01: And so being willing to consider and ask several questions ends up being
- 47:57SPEAKER_01: super important.
- 47:58SPEAKER_01: And then tactically, onboarding ends up being a great indicator, right?
- 48:02SPEAKER_01: How long does it take a new hire to commit code?
- 48:06SPEAKER_01: And how can we improve onboarding practices and environments?
- 48:09Because it often puts a spotlight on things that are really,
- 48:14really difficult.
- 48:15I was working with one really large org once where they're
- 48:18onboarding time for a
- 48:19SPEAKER_01: brand new college hire engineer.
- 48:21Was the same as a senior developer who just switched divisions
- 48:26in the company.
- 48:28Because the tooling changes,
- 48:30the documentation changes,
- 48:32the context they needed to get.
- 48:34SPEAKER_00: Wow.
- 48:34SPEAKER_01: Was basically non-existent.
- 48:37SPEAKER_00: Those two things shouldn't be the same.
- 48:39SPEAKER_00: Just to be clear, it was a long time, right?
- 48:41SPEAKER_00: We weren't talking a day.
- 48:42SPEAKER_00: It was probably like.
- 48:43SPEAKER_00: We were talking several months ago.
- 48:45SPEAKER_00: Wow.
- 48:47SPEAKER_00: Okay.
- 48:48SPEAKER_00: That's a real unexpected.
- 48:50SPEAKER_00: I mean, that's just terrible.
- 48:52SPEAKER_00: Let's say it how it is.
- 48:52SPEAKER_01: Some of the best teams were at 60 days.
- 48:55SPEAKER_00: Wow.
- 48:55SPEAKER_01: Which is not great, right?
- 48:57SPEAKER_00: No, it's bad.
- 48:59SPEAKER_01: It's bad.
- 49:00SPEAKER_01: It's bad.
- 49:01SPEAKER_01: And when we worked with them on some...
- 49:06SPEAKER_01: general interventions, right?
- 49:07SPEAKER_01: What are some of the concrete things they could do to improve it?
- 49:10SPEAKER_01: There were basic things like improving documentation,
- 49:12SPEAKER_01: improving how easy it is to find documentation,
- 49:16SPEAKER_01: creating a dummy exercise for a dummy pull request very,
- 49:20SPEAKER_01: very early that has to be completed within the first week or two.
- 49:25SPEAKER_01: Now,
- 49:25SPEAKER_01: what we found is that even if you know,
- 49:27SPEAKER_01: so some research on this has been done at Microsoft,
- 49:30SPEAKER_01: my colleague Brian Hough did a bunch of this,
- 49:31SPEAKER_01: which is really incredible.
- 49:33SPEAKER_01: And shout out to the teams that partnered with us on this.
- 49:36SPEAKER_01: Even something like a dummy pull request, right?
- 49:39SPEAKER_01: Not dummy, but like fix a title, right?
- 49:43SPEAKER_01: ends up being hugely impactful.
- 49:44SPEAKER_01: It increases productivity.
- 49:46Some measures of easily automated measures of productivity
- 49:51through the whole rest
- 49:51SPEAKER_01: of the year,
- 49:52SPEAKER_01: right?
- 49:52There was like a 30 to 50% increase because you've gone through
- 49:57the system.
- 49:58SPEAKER_01: Now, people push back.
- 49:59SPEAKER_01: They're like, well, what if you're gaming the system?
- 50:01SPEAKER_01: Great.
- 50:02This is the best way to game the system because then someone
- 50:04has gone through every
- 50:05SPEAKER_01: single step of the process.
- 50:07SPEAKER_01: They are now more familiar with it.
- 50:08SPEAKER_01: They've done it early on something that...
- 50:11was fine but like kind of didn't matter like they didn't have
- 50:14to have full context
- 50:16of the entire code base to get familiar with the tool chain and
- 50:20this is this is
- 50:22just so interesting it was great and they could surface obvious
- 50:24problems that other
- 50:25people uh i when i joined microsoft i joked because some people
- 50:29just knew where
- 50:29everybody was buried they knew where every document was they
- 50:32knew where every
- 50:32everything was but it's because they'd been there for 14 years
- 50:35and they had a list
- 50:35SPEAKER_01: of bookmarks
- 50:38SPEAKER_01: bookmarks are not transferable, right?
- 50:41SPEAKER_01: Now, I mean, the same was true at IBM.
- 50:42The same ends up being true at many large companies and even
- 50:45small companies.
- 50:45SPEAKER_01: Because if there's just a handful of you, you can ping somebody and ask.
- 50:50SPEAKER_00: Yeah.
- 50:51SPEAKER_00: When I used to work at where I had a dock of like the things to do.
- 50:55And I think most people had after a while because there's so
- 50:57many systems.
- 50:59SPEAKER_00: But what you said is just so fascinating,
- 51:01SPEAKER_00: especially about the onboarding,
- 51:02SPEAKER_00: because I didn't think,
- 51:02SPEAKER_00: you know,
- 51:03SPEAKER_00: as we're talking developer productivity,
- 51:04SPEAKER_00: I thought about a lot of things.
- 51:05SPEAKER_00: And I think a lot of people are like this.
- 51:07SPEAKER_00: They don't think about how onboarding can predict.
- 51:10SPEAKER_00: But as you said, it's not just the onboarding, but the internal transfer.
- 51:13And one super interesting thing that might tie back to this is
- 51:17a famous thing,
- 51:18a famous law that a lot of engineering managers will quote as
- 51:21Brook's Law,
- 51:21SPEAKER_00: which says,
- 51:22SPEAKER_00: for a late project,
- 51:23SPEAKER_00: if you add more people,
- 51:25SPEAKER_00: it's going to be even more late.
- 51:27SPEAKER_00: But this is true at most companies where onboarding takes a long time.
- 51:32SPEAKER_00: The project is estimated two months.
- 51:34If you add three more people,
- 51:36they'll take a month to onboard and suck time away,
- 51:38et cetera.
- 51:39SPEAKER_00: But if you're working at a company,
- 51:40SPEAKER_00: and a company that's kind of known for super fast onboarding,
- 51:45SPEAKER_00: externally at least,
- 51:46SPEAKER_00: is meta.
- 51:47SPEAKER_00: New hires will often push something code on day one, day two.
- 51:50SPEAKER_00: They have monorepo.
- 51:52SPEAKER_00: If you move teams, you will probably work on the same code base.
- 51:55SPEAKER_00: If you have an organization where changing teams means that the new...
- 52:00the person who changed teams in a day,
- 52:02they will push code to a different part of the stack.
- 52:05SPEAKER_00: Brooks Law might not entirely apply,
- 52:08SPEAKER_00: assuming you can,
- 52:08SPEAKER_00: you know,
- 52:08SPEAKER_00: pick up parallel tasks,
- 52:10SPEAKER_00: which a lot of people don't realize.
- 52:11SPEAKER_00: Because I once had this experience at a company where,
- 52:14SPEAKER_00: this was actually at Uber,
- 52:15SPEAKER_00: where we had people said like,
- 52:17SPEAKER_00: you know,
- 52:18SPEAKER_00: If you get more people on your team, can you get it done faster?
- 52:20SPEAKER_00: And at first I was at Brooks Law, but my director said like, no, no, no.
- 52:23SPEAKER_00: Like those people, they're onboarded.
- 52:24SPEAKER_00: Like they know it's the monorepo, the mobile monorepo.
- 52:27SPEAKER_00: They can do productive on day one.
- 52:29SPEAKER_00: And we added more people and we got it done faster.
- 52:32SPEAKER_00: And later I was thinking, how did we, because this is 50 years ago.
- 52:36SPEAKER_00: It was quite 50 years ago.
- 52:37SPEAKER_00: But as you said,
- 52:38I think this is the part where you need to be open to things
- 52:43potentially changing
- 52:44SPEAKER_00: around you for the better.
- 52:46SPEAKER_00: Yeah.
- 52:46And that's where the question kind of becomes when someone's
- 52:48onboarding to a team,
- 52:49are they onboarding to the entire system and the entire
- 52:54environment in which they work?
- 52:56Or are they onboarding to a slightly new team with like maybe a
- 53:00slightly different
- 53:01SPEAKER_01: culture and learning a different part of the code base?
- 53:05SPEAKER_01: but everything else remains unchanged.
- 53:07SPEAKER_01: If that's the case,
- 53:08SPEAKER_01: maybe not similar productivity on day one,
- 53:11SPEAKER_01: but a handful of days to really dig into the new part of the code base,
- 53:15SPEAKER_01: new functionality,
- 53:16SPEAKER_01: but everything else is just done.
- 53:19SPEAKER_01: Whereas sometimes,
- 53:20SPEAKER_01: even if you're within the same company,
- 53:22SPEAKER_01: you're onboarding to an entirely new system.
- 53:24You have maybe the same tool chain,
- 53:26but it's configured entirely differently.
- 53:28SPEAKER_01: So it's basically a different tool chain.
- 53:29SPEAKER_01: You have different request processes.
- 53:31SPEAKER_01: You have different documentation.
- 53:33SPEAKER_01: If everything's changed, that's onboarding.
- 53:37SPEAKER_01: That's new hire onboarding.
- 53:39SPEAKER_01: They just already have their login.
- 53:41SPEAKER_00: Yeah.
- 53:43SPEAKER_00: Related to this, cultural turnarounds.
- 53:46A lot of companies that you will turn to experts like yourself
- 53:49and seek out
- 53:50SPEAKER_00: different methodologies know that we've got a problem.
- 53:52SPEAKER_00: We're not very productive.
- 53:54SPEAKER_00: We look at our competitors.
- 53:55SPEAKER_00: Other companies, they seem to be getting stuff a lot faster.
- 53:58SPEAKER_00: We're going to turn around the culture.
- 53:59SPEAKER_00: We're going to go from a, you know, like do whatever it needs to be done.
- 54:03SPEAKER_00: Have you seen successful turnarounds?
- 54:06SPEAKER_00: And if so, how did they happen and over what time frame?
- 54:10SPEAKER_00: And,
- 54:10SPEAKER_00: you know,
- 54:11SPEAKER_00: let's talk about like companies that are like,
- 54:13SPEAKER_00: you know,
- 54:13SPEAKER_00: like not a tiny startup,
- 54:16SPEAKER_00: but like company that like 100 plus people or even bigger.
- 54:19And I'm more interested in the kind of the generic learnings
- 54:22because what I see is,
- 54:24SPEAKER_00: you know,
- 54:25SPEAKER_00: people at the top,
- 54:26SPEAKER_00: they think like,
- 54:27SPEAKER_00: oh,
- 54:27SPEAKER_00: yeah,
- 54:27SPEAKER_00: we'll just hire some consultants,
- 54:28SPEAKER_00: you know,
- 54:29SPEAKER_00: we'll become a...
- 54:30SPEAKER_00: tech first company in no time.
- 54:32SPEAKER_00: I've actually worked at a company like this a long time ago,
- 54:34SPEAKER_00: a financial company that kind of advertised itself.
- 54:36SPEAKER_00: And on the ground,
- 54:37SPEAKER_00: developers are just rolling their eyes like,
- 54:39SPEAKER_00: okay,
- 54:39SPEAKER_00: yeah,
- 54:39SPEAKER_00: we're getting,
- 54:40SPEAKER_00: you know,
- 54:40SPEAKER_00: another agile training or whatever that is.
- 54:43And you feel not much is changing and there's usually a
- 54:45disconnect between the two.
- 54:47SPEAKER_00: And there are some companies that over time,
- 54:49SPEAKER_00: by the way,
- 54:50SPEAKER_00: like they do manage to become a lot more tech first companies,
- 54:53SPEAKER_00: like old school companies who you'd be surprised,
- 54:55SPEAKER_00: you know,
- 54:55SPEAKER_00: like.
- 54:56SPEAKER_00: A lot of banks.
- 54:58SPEAKER_00: are here.
- 54:59I've worked with a lot of banks that have undergone that
- 55:01transformation successfully.
- 55:03SPEAKER_00: For the ones that succeed,
- 55:07SPEAKER_00: what do you usually see in terms of success,
- 55:10SPEAKER_00: the time it takes,
- 55:11SPEAKER_00: and what do engineers feel on the ground?
- 55:14SPEAKER_01: You're right.
- 55:14SPEAKER_01: I ended up talking to a lot of folks about it.
- 55:16I think it's important to realize that if you're trying to
- 55:20change the tech culture,
- 55:23SPEAKER_01: that's not going to be possible.
- 55:25SPEAKER_01: And by that,
- 55:25SPEAKER_01: I mean,
- 55:26you need to think about changing the culture of the company or
- 55:30the culture of the organization.
- 55:32You can do things to have it and help it influence the
- 55:37technology culture,
- 55:38but it's really difficult to try to just carve out the
- 55:40technology culture and
- 55:41change the way people think about software without changing the
- 55:46broader culture.
- 55:47SPEAKER_01: And I will say one, you know,
- 55:49SPEAKER_01: I think notable cultural transformation is at Microsoft, right?
- 55:52Satya Nadella has really changed what Microsoft is like
- 55:56compared to the Balmer years.
- 55:59SPEAKER_00: I used to work at the Balmer time.
- 56:00SPEAKER_00: It was very different.
- 56:01SPEAKER_00: Oh my gosh.
- 56:02SPEAKER_01: It's very, very different.
- 56:03Now,
- 56:04there are a handful of things you could do in general and then
- 56:07specific to tech.
- 56:08I'll probably focus on the specific to tech ones because I'm
- 56:11sure other people are
- 56:11SPEAKER_01: familiar with communication and commitment and those types of things.
- 56:16SPEAKER_01: When we think about technology,
- 56:18I think we have additional opportunities because there we can
- 56:22look at some previous
- 56:25SPEAKER_01: research that's been done.
- 56:26SPEAKER_01: John Shook did some great work.
- 56:27SPEAKER_01: We used to think that to change a culture, you would change...
- 56:32SPEAKER_01: or to change the way people do work.
- 56:33SPEAKER_01: You would change the culture.
- 56:34SPEAKER_01: You would change the way you talk about it.
- 56:36And then that would just trickle down into the way people build
- 56:41tools and kind of
- 56:43SPEAKER_01: execute their work.
- 56:45SPEAKER_01: What he found is that when you change the way people do their work,
- 56:49SPEAKER_01: that bubbles up to cultural impacts.
- 56:52And I think that's where having an environment where these
- 56:55changes are allowed and
- 56:57SPEAKER_01: supported is super important,
- 56:58SPEAKER_01: right?
- 56:58SPEAKER_01: From that broader environment.
- 57:00SPEAKER_01: Um,
- 57:00SPEAKER_01: but you know,
- 57:01SPEAKER_01: as an example,
- 57:02SPEAKER_01: uh,
- 57:02SPEAKER_01: you know,
- 57:02SPEAKER_01: people talk about,
- 57:03SPEAKER_01: uh,
- 57:04SPEAKER_01: knew me all the time,
- 57:04SPEAKER_01: but I,
- 57:05SPEAKER_01: the cart factory,
- 57:07SPEAKER_01: but I love talking about it,
- 57:08SPEAKER_01: kind of situating it in companies.
- 57:10If you're in a company or in an organization or a team or a
- 57:14situation where your
- 57:15SPEAKER_01: tool chain is just incredibly slow,
- 57:18SPEAKER_01: it's very high friction.
- 57:19SPEAKER_01: There's a lot of process to go through.
- 57:22SPEAKER_01: You can talk about doing agile, um,
- 57:26SPEAKER_01: And it's going to help to a point, right?
- 57:28SPEAKER_01: People can wrap their minds around it.
- 57:30SPEAKER_01: They can think about what it means.
- 57:32SPEAKER_01: But actually changing...
- 57:34the core culture isn't going to happen if you're working in
- 57:37systems that are incredibly slow.
- 57:40SPEAKER_01: Now,
- 57:40if you introduce new tools and new ways of working that are
- 57:45actually much faster,
- 57:46SPEAKER_01: that actually make it easier to communicate with others,
- 57:48SPEAKER_01: that make it easier to surface and fix problems early,
- 57:51that make any prioritization decisions that you're talking
- 57:54about fairly easy to get done,
- 57:57SPEAKER_01: now you've changed people's lived experience.
- 57:59SPEAKER_01: You've changed what it feels like to do the work
- 58:03SPEAKER_01: And that's paired with larger communications,
- 58:07SPEAKER_01: larger education,
- 58:08SPEAKER_01: larger commitments to what is happening.
- 58:11SPEAKER_01: Now,
- 58:12commitments is also important because are you committing to
- 58:14improving the difficult
- 58:16pieces of the technical stack and the workflow to get to the
- 58:18desired outcome?
- 58:19SPEAKER_01: Are you investing in the communication that's required?
- 58:23SPEAKER_01: You have to say things at least three times for it to kind of land.
- 58:26And it needs to come from several areas and several levels of
- 58:29the business.
- 58:30And so I think those two together can be incredibly powerful,
- 58:33but also needs to be explicit.
- 58:36SPEAKER_00: And just being a little bit more specific,
- 58:39say I'm either a staff senior plus engineer senior staff
- 58:43engineer principal
- 58:44SPEAKER_00: engineer who joined a tech company or an engineering manager,
- 58:47SPEAKER_00: a senior engineering manager,
- 58:48SPEAKER_00: not a C-level,
- 58:49SPEAKER_00: right?
- 58:49SPEAKER_00: So I can't set the things.
- 58:52SPEAKER_00: But
- 58:52SPEAKER_00: In a sense, what is it that I could do?
- 58:54SPEAKER_00: I've kind of onboarded.
- 58:56SPEAKER_00: I took it in.
- 58:57SPEAKER_00: I didn't rush to copy, paste, whatever I saw at the previous place.
- 59:01This is a frequent criticism of big tech employees joining startup,
- 59:04bringing process.
- 59:05SPEAKER_00: But we didn't do that mistake.
- 59:07I took it all in and I realized there are things that are just
- 59:10really inefficient.
- 59:12I can see if I was a CTO,
- 59:14I could do stuff,
- 59:15but obviously I cannot do that.
- 59:17SPEAKER_00: What are ways that I can...
- 59:19SPEAKER_00: improve the engineering culture, the efficiency?
- 59:23SPEAKER_00: And is it going to be what you just said,
- 59:26which is around the lines of starting to change my team's lived experience,
- 59:30SPEAKER_00: for example,
- 59:31SPEAKER_00: and hope it bubbles up?
- 59:33SPEAKER_01: Yeah, I think it's going to be a mix, right?
- 59:34SPEAKER_01: Just on a smaller scale, right?
- 59:36SPEAKER_01: So what is within the scope of your control?
- 59:38SPEAKER_01: And it'll start by,
- 59:39SPEAKER_01: I love that you said,
- 59:40SPEAKER_01: you know,
- 59:41SPEAKER_01: it's when you've joined,
- 59:42SPEAKER_01: you know,
- 59:42SPEAKER_01: you've done your first 90 days,
- 59:44SPEAKER_01: you've done a listening tour,
- 59:46SPEAKER_01: you've been able to kind of identify what some of the challenges are.
- 59:49SPEAKER_01: It can be super important to then,
- 59:51SPEAKER_01: you know,
- 59:51SPEAKER_01: write up a summary,
- 59:52SPEAKER_01: run it past one or two people to make sure like it kind of makes sense.
- 59:57SPEAKER_01: Yeah, sanity check.
- 59:58SPEAKER_01: Meet with the teams.
- 59:59SPEAKER_01: Say, this is what I'm observing.
- 1:00:01SPEAKER_01: This is what I'm hearing from you.
- 1:00:03SPEAKER_01: Does this resonate?
- 1:00:04SPEAKER_01: Does this sound right?
- 1:00:05SPEAKER_01: Is there anything I'm missing?
- 1:00:08SPEAKER_01: And then end that without a big call to action,
- 1:00:11SPEAKER_01: but say,
- 1:00:12SPEAKER_01: I would like for us to look for opportunities to improve this.
- 1:00:17And I would love for you to be involved if that's something
- 1:00:20that you're excited about.
- 1:00:21Give people a little bit of time to kind of like marinate in
- 1:00:24that kind of digest.
- 1:00:25SPEAKER_01: Yeah.
- 1:00:26SPEAKER_01: And then go back and say, what are some ways that we can improve this?
- 1:00:32SPEAKER_01: These one or two things really stood out to me.
- 1:00:36SPEAKER_01: What does that mean for you?
- 1:00:38SPEAKER_01: And then depending on – this is where some resourcing comes in, right?
- 1:00:41SPEAKER_01: Because we want to change the way that people work.
- 1:00:44And so that could be creating new education if it's just about
- 1:00:48changing a process.
- 1:00:48SPEAKER_01: It can be changing.
- 1:00:49SPEAKER_01: It can be improving the tech, right?
- 1:00:52SPEAKER_01: And so we can have discussions about either,
- 1:00:54SPEAKER_01: you know,
- 1:00:54SPEAKER_01: kind of carving people off or maybe setting up a hack day.
- 1:00:57SPEAKER_01: Sometimes a hack day can be great to just deal with paper cuts.
- 1:01:00And that already,
- 1:01:02the thing that's great about that is you get this quick win.
- 1:01:04SPEAKER_01: It's visible.
- 1:01:04SPEAKER_01: It's a quick win.
- 1:01:06SPEAKER_01: It impacts people.
- 1:01:07SPEAKER_01: So they see it.
- 1:01:08SPEAKER_01: And if it doesn't impact me personally, maybe it impacts my coworkers.
- 1:01:10SPEAKER_01: So I'm at least seeing progress.
- 1:01:13SPEAKER_01: And then we have continued communication.
- 1:01:15SPEAKER_00: Again, you've got to repeat yourself.
- 1:01:17I also love what you said,
- 1:01:17which is talk with people and basically make allies.
- 1:01:21SPEAKER_00: Because when you started a new company,
- 1:01:22you have no real social capital beyond maybe a fancy title or
- 1:01:26if you have some
- 1:01:27SPEAKER_00: impressive credentials,
- 1:01:28SPEAKER_00: but not there.
- 1:01:29SPEAKER_00: And I think what people forget a lot of times,
- 1:01:31SPEAKER_00: because I've seen so many times where someone on paper,
- 1:01:35SPEAKER_00: you know,
- 1:01:36SPEAKER_00: comes in at a high level,
- 1:01:37SPEAKER_00: tries to make changes.
- 1:01:38There's a pushback because,
- 1:01:40you know,
- 1:01:40like we just want to do our work,
- 1:01:42right?
- 1:01:42SPEAKER_00: Like, what is this person trying to do?
- 1:01:44SPEAKER_00: And then eventually they leave,
- 1:01:47SPEAKER_00: eventually disappointed that this company doesn't want to change.
- 1:01:51But what they miss doing is,
- 1:01:52first of all,
- 1:01:53not realizing it takes a longer time.
- 1:01:55SPEAKER_00: You do want to build a team who...
- 1:01:58who supports you you understand them they understand you and
- 1:02:01now a team and then
- 1:02:02later another team joins in and do this so i i i feel like
- 1:02:09you've kind of conveyed
- 1:02:10this really important thing and the fact that it's also not a
- 1:02:13sprint in a sprint
- 1:02:14you i mean you can do something but it'll probably be washed
- 1:02:17away with like a
- 1:02:17SPEAKER_01: sandcastle on a beach right yep um and i will say i have found uh
- 1:02:25SPEAKER_01: Having aligned incentives ends up being important as well, right?
- 1:02:28SPEAKER_01: If you say something's important,
- 1:02:30SPEAKER_01: acknowledge it and follow up with that actually being important.
- 1:02:33SPEAKER_01: So if you're just on the team, sometimes that can be a little tough.
- 1:02:36If you're just an engineer,
- 1:02:37like an IC you just started out of school,
- 1:02:40right?
- 1:02:42SPEAKER_01: But you can thank people.
- 1:02:44SPEAKER_01: You can highlight what they've done.
- 1:02:46SPEAKER_01: You can send a thank you email and cc their manager.
- 1:02:48SPEAKER_01: And as a manager,
- 1:02:49SPEAKER_01: you can say,
- 1:02:49this is something that I find very important and we decided
- 1:02:52together is important.
- 1:02:54Any work that's done here,
- 1:02:55even if it's not feature work,
- 1:02:58is going to be valued.
- 1:03:00SPEAKER_01: And then reflect that in any performance reports or one-on-ones,
- 1:03:05because it can be really discouraging to go along with like
- 1:03:09some transformation
- 1:03:10SPEAKER_01: effort or fix effort or whatever.
- 1:03:12SPEAKER_01: And then it just kind of, to your point, right?
- 1:03:14SPEAKER_01: It just kind of washes away.
- 1:03:15SPEAKER_01: It just goes away.
- 1:03:17SPEAKER_00: So far,
- 1:03:18SPEAKER_00: everything we talked about might as well have been two years before,
- 1:03:22SPEAKER_00: because before ChatDGPT came out,
- 1:03:24SPEAKER_00: before any of the AI tools went mainstream.
- 1:03:27But these days,
- 1:03:28software engineers are using AI tools,
- 1:03:31coding,
- 1:03:31ID assistance,
- 1:03:32and many others.
- 1:03:33SPEAKER_00: It is changing software engineering as a whole.
- 1:03:36How has it changed your thinking about developer productivity
- 1:03:39and how we should
- 1:03:40SPEAKER_00: think of developer productivity and developer experience?
- 1:03:43SPEAKER_00: Yeah.
- 1:03:44With AI,
- 1:03:44I'm getting so many questions now about how can we improve the
- 1:03:48way developers work?
- 1:03:49SPEAKER_01: How can we make sure that we don't detract from their work?
- 1:03:51SPEAKER_01: Does this impact space or DoraMetrics?
- 1:03:55SPEAKER_01: So I'll quickly say DoraMetrics
- 1:03:58SPEAKER_01: in general, won't change.
- 1:04:00SPEAKER_01: Their utility,
- 1:04:02I expect to remain about the same because we're looking at how
- 1:04:05well that outer loop
- 1:04:08SPEAKER_01: is running.
- 1:04:09SPEAKER_01: In terms of space,
- 1:04:10I think it's still incredibly applicable because we want to
- 1:04:13know how satisfied
- 1:04:14SPEAKER_01: people are with the development experience.
- 1:04:15SPEAKER_01: We want to know about performance outcomes like quality and security.
- 1:04:18SPEAKER_01: We want to know about how many things they're able to get done.
- 1:04:22SPEAKER_01: the way they communicate,
- 1:04:24I think efficiency and flow is also super important because
- 1:04:26it's changing the way
- 1:04:27SPEAKER_01: we do work,
- 1:04:28SPEAKER_01: right?
- 1:04:28SPEAKER_01: When we're writing code,
- 1:04:30SPEAKER_01: we're writing code,
- 1:04:30SPEAKER_01: but we're also now reviewing a lot more code than,
- 1:04:33SPEAKER_01: you know,
- 1:04:33SPEAKER_01: it's almost a review exercise instead of just purely writing.
- 1:04:37SPEAKER_01: There may be opportunities, I think, to expand space, right?
- 1:04:40SPEAKER_01: Because trust ends up being a much larger factor.
- 1:04:45uh to everyone right so i i studied uh trust with sys admins
- 1:04:49and people doing you
- 1:04:50know high consequence highly complex work and and trusting a
- 1:04:54system and trusting
- 1:04:55the outcome of a command and a new tool was incredibly
- 1:04:58important developers didn't
- 1:05:00see that as much because you know we go through school we use
- 1:05:02an ide we use a
- 1:05:03compiler right does the compiler work like do our people people
- 1:05:06are not asking does
- 1:05:07the compiler work and i understand like the underlying math is
- 1:05:09very different but
- 1:05:10SPEAKER_01: suddenly you've introduced this question
- 1:05:13SPEAKER_01: to an everyday, all day workflow, is this the right output?
- 1:05:17SPEAKER_01: Can I trust what I'm seeing?
- 1:05:21SPEAKER_01: So I think it's good to kind of capture that and watch.
- 1:05:24SPEAKER_01: Now, what does that mean kind of more broadly?
- 1:05:28SPEAKER_01: I think there,
- 1:05:28and we're seeing a lot of opportunities to kind of reinvent
- 1:05:32development in software engineering,
- 1:05:33SPEAKER_01: right?
- 1:05:34SPEAKER_01: We're seeing it in the IDE right now.
- 1:05:35We're seeing it in tests where,
- 1:05:37you know,
- 1:05:37we're asking questions around code quality.
- 1:05:39SPEAKER_01: There was a great study done with GitHub and,
- 1:05:42Office of the Chief Economist here that found that four
- 1:05:46developers that had been
- 1:05:48SPEAKER_01: seasoned developers,
- 1:05:48SPEAKER_01: right?
- 1:05:48SPEAKER_01: They have at least five years of experience.
- 1:05:51They were finding that,
- 1:05:53you know,
- 1:05:53they're saying that the code is easier to read.
- 1:05:55SPEAKER_01: They have good approval ratings.
- 1:05:57SPEAKER_01: They're seeing over a 50% increase in unit tests getting passed.
- 1:06:03SPEAKER_01: So it can have some really good.
- 1:06:05And this is just from devs using,
- 1:06:06you know,
- 1:06:07tools like Copilot or other coding assistants.
- 1:06:10SPEAKER_01: Yep.
- 1:06:10SPEAKER_01: Yep.
- 1:06:11SPEAKER_01: It's just from that.
- 1:06:12SPEAKER_00: Interesting.
- 1:06:12SPEAKER_00: And these were the reviewers saying that,
- 1:06:14SPEAKER_00: you know,
- 1:06:14SPEAKER_00: the PRs that are coming in just seem like nicer to work with.
- 1:06:18SPEAKER_01: Mm-hmm.
- 1:06:20SPEAKER_01: And, you know, you can have a PR review cycle that is done.
- 1:06:24SPEAKER_01: You know, we're used to linters.
- 1:06:26SPEAKER_01: Why not have an AI take a look and offer some suggestions?
- 1:06:31SPEAKER_01: You know, that doesn't mean it's approved.
- 1:06:33I think there's already like startups are building it,
- 1:06:36but I cannot see this not being the case.
- 1:06:38SPEAKER_00: Oh, absolutely.
- 1:06:39SPEAKER_00: Right.
- 1:06:40SPEAKER_01: Some folks, it's not quite on their radar, though, because we are so...
- 1:06:43SPEAKER_01: Many times when we think about a developer,
- 1:06:45SPEAKER_01: we think about someone like sitting there typing,
- 1:06:47SPEAKER_01: right?
- 1:06:47SPEAKER_01: Or like it's hackers or something, right?
- 1:06:49It's very IDE focused,
- 1:06:50but there's so much more to the development tool chain,
- 1:06:53right?
- 1:06:54One thing that my team and I are focused on that I'm like real
- 1:06:57kind of bullish
- 1:06:58SPEAKER_01: about is how do we think about the rest of the software process?
- 1:07:01SPEAKER_01: How do we think about roles like release engineering and deployment?
- 1:07:05SPEAKER_01: Because historically,
- 1:07:07that's been very difficult and something that a person makes a
- 1:07:11decision on.
- 1:07:12And it's basically a risk-based decision and they have to take
- 1:07:14data from the builds,
- 1:07:15SPEAKER_01: from the documentation,
- 1:07:16SPEAKER_01: from the downstream system,
- 1:07:18SPEAKER_01: from so many different places and make a decision.
- 1:07:23SPEAKER_01: this is an opportunity for LLMs to really jump in, right?
- 1:07:27SPEAKER_01: Because the person is still making the decision,
- 1:07:29but instead of spending days collating all of this data and
- 1:07:33trying to summarize it,
- 1:07:34you can instead get a quick summary with links out to what you
- 1:07:38want to look at so
- 1:07:39you can confirm or see if there's any like nudge or edge case
- 1:07:41or something.
- 1:07:42SPEAKER_01: And then you can make a more informed decision.
- 1:07:46SPEAKER_01: So I'm personally excited about several ways that AI can kind of help
- 1:07:53bolster and support and you know reinvent and disrupt right the
- 1:07:58way we do the full
- 1:07:59SPEAKER_01: engineering life cycle
- 1:08:02SPEAKER_00: Earlier,
- 1:08:02SPEAKER_00: you told me that some of the most productive engineers or teams,
- 1:08:09SPEAKER_00: but also engineers you've seen are curious,
- 1:08:12SPEAKER_00: but also they don't hold on strongly to beliefs.
- 1:08:15SPEAKER_00: They're open to things changing.
- 1:08:17And you gave the example of like a team tried an approach eight
- 1:08:21years ago and it failed,
- 1:08:22SPEAKER_00: but now it's actually,
- 1:08:23SPEAKER_00: it was possible.
- 1:08:24SPEAKER_00: Yeah.
- 1:08:25Do I sense correctly that it's probably a smart approach for a
- 1:08:27lot of us engineers
- 1:08:28SPEAKER_00: to just kind of put away a lot of our reservations because LLMs are just
- 1:08:33SPEAKER_00: fundamentally changing a lot of things.
- 1:08:34SPEAKER_00: They'll turn out to do some things wonderfully.
- 1:08:36SPEAKER_00: Some things will just crash and burn.
- 1:08:38SPEAKER_00: But unless we do this,
- 1:08:40will probably be that team that kind of closed itself down to
- 1:08:44how things are.
- 1:08:46SPEAKER_00: Is this the kind of advice you give to engineers?
- 1:08:50SPEAKER_00: Or what would you tell people?
- 1:08:52SPEAKER_00: Because there are some experienced engineers,
- 1:08:53SPEAKER_00: they've been around the block,
- 1:08:54SPEAKER_00: and there's some people who are skeptical.
- 1:08:55SPEAKER_00: Like, okay, they're just a fancy autocomplete.
- 1:08:58SPEAKER_00: We're giving them too much credit here.
- 1:09:00SPEAKER_00: It's not going to change what we do at the fundamental level.
- 1:09:03Or there are concerns that it will introduce errors or security
- 1:09:06bugs or other types
- 1:09:08SPEAKER_01: of things that I would never do or my team would never do.
- 1:09:11SPEAKER_01: Right?
- 1:09:13SPEAKER_01: Yeah,
- 1:09:14I would say if you're in an organization that is deploying or
- 1:09:19allowing tools like
- 1:09:20SPEAKER_01: Copilot and Tab9 and Cursor,
- 1:09:24SPEAKER_01: Really take it for a spin.
- 1:09:26SPEAKER_01: See what works, see what resonates, see what lands.
- 1:09:29SPEAKER_01: If you don't like it, don't use it, right?
- 1:09:32If you only like it for specific types of use cases and
- 1:09:35specific types of tasks,
- 1:09:37SPEAKER_01: leverage it for the things that it is good at.
- 1:09:41SPEAKER_01: And don't use it for the things that don't fit into your workflow,
- 1:09:43SPEAKER_01: that don't fit into your mental model.
- 1:09:45But give yourself a little bit of time to open up what that
- 1:09:48mental model is.
- 1:09:50Because it can shift and it can shift in ways that are very,
- 1:09:52very valuable.
- 1:09:53SPEAKER_01: It can open up time.
- 1:09:56SPEAKER_01: Now you don't have to do all of the setup in your code.
- 1:09:59SPEAKER_01: You can just focus on really solving the problem,
- 1:10:04SPEAKER_01: really looking externally,
- 1:10:05SPEAKER_01: really trying to figure out where the blocker is or what the longer term
- 1:10:08SPEAKER_01: architectural components should be.
- 1:10:12Now,
- 1:10:13when I talk with developers and also when I'm building with AI,
- 1:10:18I see two types of usages.
- 1:10:19SPEAKER_00: One is you have just specifically talking about the coding.
- 1:10:22So I know what the problem is,
- 1:10:24I know what I want to do,
- 1:10:25and I now need to do the work.
- 1:10:27One of them is you have the inline AI systems,
- 1:10:30which show automatic code completion.
- 1:10:33SPEAKER_00: May this be co-pilot, a cursor, or some other ones.
- 1:10:36SPEAKER_00: And it kind of helps you move faster as you go.
- 1:10:40SPEAKER_00: It continuously gives you that additional context,
- 1:10:42SPEAKER_00: but it also kind of takes away your attention a little bit.
- 1:10:44SPEAKER_00: As soon as you type it, it shows up things.
- 1:10:47An interesting thing that I talk with a developer who's
- 1:10:50actually building a game
- 1:10:51SPEAKER_00: He uses AI very differently.
- 1:10:53He says he actually goes to one of these tools,
- 1:10:56ChatGPT or Claude or one of the others.
- 1:10:58And he goes there with a skeleton code,
- 1:11:01pastes it in with a to-do,
- 1:11:03and it generates.
- 1:11:03SPEAKER_00: And I asked, hey, why aren't you using it in your ID?
- 1:11:06SPEAKER_00: And he said,
- 1:11:06I actually find that I can focus way more when I don't have
- 1:11:12this thing interrupting
- 1:11:13SPEAKER_00: me all the time.
- 1:11:14SPEAKER_00: But I'm like, no, I need help.
- 1:11:16SPEAKER_00: And I want to get your feedback.
- 1:11:17SPEAKER_00: And I'm iterating with you versus going, I'm in my flow state.
- 1:11:22Are you aware of either some research or even just personal
- 1:11:24observations on how
- 1:11:27SPEAKER_00: developers can preserve flow?
- 1:11:28SPEAKER_00: Is it important or can you actually have a flow state either way?
- 1:11:33SPEAKER_00: Is it something that everyone needs to figure out for themselves?
- 1:11:35SPEAKER_00: Yeah.
- 1:11:36SPEAKER_01: Um,
- 1:11:37SPEAKER_01: I just want to say that story you started with,
- 1:11:39I think is incredible because someone played around with AI and
- 1:11:42they figured out
- 1:11:43SPEAKER_01: the workflow that makes sense for them,
- 1:11:46SPEAKER_01: that works for them.
- 1:11:47SPEAKER_01: Right.
- 1:11:47SPEAKER_01: It doesn't have to be, you know, line completions inside the IDE.
- 1:11:51SPEAKER_01: It could be writing up a chunk of code and then asking it for review.
- 1:11:54SPEAKER_01: Right.
- 1:11:55SPEAKER_01: Um,
- 1:11:57SPEAKER_01: I will say anecdotally,
- 1:12:00SPEAKER_01: I've seen folks sometimes adopt that type of workflow or they'll turn off
- 1:12:06SPEAKER_01: autocomplete or auto suggestions as they're typing.
- 1:12:10SPEAKER_01: I haven't seen any hard data on that,
- 1:12:11SPEAKER_01: although I wouldn't be surprised if there's some coming out.
- 1:12:14In terms of flow,
- 1:12:17there are a few things that we've discovered and noticed.
- 1:12:19So there's a paper that some colleagues of mine did here in MSR around,
- 1:12:25they use the CUPS model.
- 1:12:26SPEAKER_01: So it's how does coding change, right?
- 1:12:30SPEAKER_01: You write something,
- 1:12:31SPEAKER_01: you wait for feedback,
- 1:12:31SPEAKER_01: you have to reassess it,
- 1:12:32SPEAKER_01: you have to decide what's coming next.
- 1:12:35And some of that work and early work we did with the GitHub
- 1:12:37team even influenced
- 1:12:39SPEAKER_01: how the timing of suggestions happens,
- 1:12:43SPEAKER_01: right?
- 1:12:43SPEAKER_01: We ended up slowing some down because as you pointed out,
- 1:12:46SPEAKER_01: if you're getting like suggestion after suggestion after suggestion,
- 1:12:50SPEAKER_01: it ends up being an interruption.
- 1:12:54SPEAKER_01: When I think about,
- 1:12:55SPEAKER_01: you know,
- 1:12:55SPEAKER_01: your question around how do we think about flow,
- 1:12:59I think everyone will kind of need to play around with this and
- 1:13:02see what works for
- 1:13:03SPEAKER_01: them and what that means,
- 1:13:04SPEAKER_01: right?
- 1:13:04SPEAKER_01: Because when you're coding in an IDE,
- 1:13:06SPEAKER_01: I know sometimes I'll turn it off because I just want to code,
- 1:13:08SPEAKER_01: right?
- 1:13:09SPEAKER_01: I did that this weekend because I wanted to play around with some code.
- 1:13:12SPEAKER_01: And I wanted to be kind of driving and doing all of the writing.
- 1:13:16SPEAKER_01: Yeah.
- 1:13:17SPEAKER_01: But that also is,
- 1:13:18SPEAKER_01: I think,
- 1:13:18one helpful way to think about it is imagine a world where
- 1:13:24there's just a different
- 1:13:25SPEAKER_01: way to do the work.
- 1:13:26SPEAKER_01: And maybe that means you call it something else in your head.
- 1:13:29SPEAKER_01: Maybe instead of coding, maybe I'm driving and reviewing or I'm guiding.
- 1:13:34SPEAKER_01: Because if we can think about it differently,
- 1:13:36SPEAKER_01: then we're not comparing it to something that's not the same thing.
- 1:13:39SPEAKER_01: And we can find what that new workflow is.
- 1:13:43SPEAKER_00: I like it.
- 1:13:44SPEAKER_00: I also like your initial suggestion of driving versus guiding.
- 1:13:47SPEAKER_00: It is just very different.
- 1:13:48But I do think that a lot of us engineers just need to accept
- 1:13:52that it's different.
- 1:13:54SPEAKER_00: It will change.
- 1:13:55SPEAKER_00: We'll look back at this 10 years later.
- 1:13:56SPEAKER_00: People will look back.
- 1:13:57SPEAKER_00: People are starting their career now.
- 1:13:58SPEAKER_00: They'll be like, oh, yeah, a little bit loud.
- 1:14:01SPEAKER_00: Anyone who's a coder, it's like, oh, Stack Overflow, it always existed.
- 1:14:04SPEAKER_00: I mean, interesting enough, now we've kind of stopped using it.
- 1:14:07But there was a time where it was just a given and there were
- 1:14:10people before and people after.
- 1:14:11SPEAKER_00: So I think we're going to have that.
- 1:14:16SPEAKER_00: It's a good and timely reminder.
- 1:14:19SPEAKER_00: And also, we're just in the beginning of this, right?
- 1:14:21Like this whole thing,
- 1:14:21it's just wild how much it's gone in such a short time.
- 1:14:26I don't think there's been any technology in the history of
- 1:14:29software engineering
- 1:14:30that has spread across a whole industry so quickly and is
- 1:14:33changing how people work,
- 1:14:36SPEAKER_00: changing their productivity,
- 1:14:37SPEAKER_00: what they're doing,
- 1:14:40SPEAKER_00: and still work in progress.
- 1:14:43SPEAKER_01: Yeah, absolutely.
- 1:14:44SPEAKER_01: I totally agree, right?
- 1:14:45When I think about,
- 1:14:46you know,
- 1:14:46big impactful technology shifts in tech,
- 1:14:50cloud is one for sure.
- 1:14:51SPEAKER_01: But it didn't hit almost the entire industry within a year, right?
- 1:14:58SPEAKER_01: It was many years.
- 1:15:00SPEAKER_01: And specifically like LLMs, right?
- 1:15:02SPEAKER_01: To the AI folks out there, AI has been around for years.
- 1:15:05SPEAKER_01: Anytime you're doing any type of autocomplete in an email or,
- 1:15:08SPEAKER_01: you know,
- 1:15:09SPEAKER_01: IntelliCode,
- 1:15:09SPEAKER_01: this is all AI.
- 1:15:11SPEAKER_01: I think LLMs really changed,
- 1:15:13SPEAKER_01: you know,
- 1:15:14these foundation models really changed the way we can do work
- 1:15:18and the types of
- 1:15:18SPEAKER_01: development we can do.
- 1:15:20SPEAKER_00: So closing off with some rapid questions,
- 1:15:22SPEAKER_00: I'll just ask and you fire off whatever comes to mind.
- 1:15:25SPEAKER_00: The first one is about coding full time versus being a researcher.
- 1:15:31SPEAKER_00: You were a software engineer.
- 1:15:33SPEAKER_00: Now you're a researcher.
- 1:15:34SPEAKER_00: What is the one thing that you miss from coding full time?
- 1:15:39SPEAKER_01: I miss just like packing something up and being in the code.
- 1:15:42There's the thing I love about research is that it's about
- 1:15:45identifying and solving
- 1:15:47SPEAKER_01: problems that are hard to solve where we don't know the answer.
- 1:15:50SPEAKER_01: Coding is very similar.
- 1:15:52SPEAKER_01: And I love that.
- 1:15:53I kind of miss the thought process of figuring out the best way
- 1:15:56to write the code.
- 1:15:58SPEAKER_01: What's the best way to structure the code?
- 1:16:00SPEAKER_01: How do I want to do some of the work?
- 1:16:02SPEAKER_01: I'm a joke, do the typey.
- 1:16:05SPEAKER_01: I miss those parts of coding.
- 1:16:07SPEAKER_01: And luckily, I kind of shifted into something where
- 1:16:11SPEAKER_01: it still kind of scratches that itch of where are the big problems?
- 1:16:14SPEAKER_01: What's the strategy I want to adopt, right?
- 1:16:15SPEAKER_01: There's strategy in writing code,
- 1:16:17there's strategy in communications and product direction and
- 1:16:20research program.
- 1:16:24SPEAKER_00: Plus, even if you're not coding, you're working with people who do code.
- 1:16:28SPEAKER_01: Yes.
- 1:16:28SPEAKER_01: And I,
- 1:16:29SPEAKER_01: like I said,
- 1:16:29SPEAKER_01: I'm,
- 1:16:29SPEAKER_01: I still play around with it,
- 1:16:30SPEAKER_01: but,
- 1:16:31SPEAKER_01: but missing,
- 1:16:32I think a little bit also is like the rush of writing something
- 1:16:35for customers that
- 1:16:36SPEAKER_01: I know is going to be a production system.
- 1:16:38SPEAKER_01: I had folks at IBM a couple of years ago,
- 1:16:40contact me and say that one of the systems I wrote there as an
- 1:16:42intern was still
- 1:16:43SPEAKER_01: being used.
- 1:16:44SPEAKER_01: And I was like,
- 1:16:45awesome first of all sorry second of all it's there's just a
- 1:16:50different kind of
- 1:16:51excitement around writing code and seeing it deployed and
- 1:16:54pushed and shipped to
- 1:16:55customers right which luckily i get a little bit with some of
- 1:16:57my research i'm
- 1:16:58realizing now as i tell you this like i've i've found another
- 1:17:01proxy i've found a
- 1:17:02way to kind of duplicate some of my coding and just another
- 1:17:05discipline well and you
- 1:17:06SPEAKER_00: still code a little bit so yeah
- 1:17:09SPEAKER_00: What is the next book you're working on, if you can tell us?
- 1:17:12SPEAKER_01: Yeah.
- 1:17:13SPEAKER_01: Right now, I'm working on a developer experience book.
- 1:17:17It's kind of geared toward folks who want to think about
- 1:17:21improving developer experience.
- 1:17:22SPEAKER_01: They want to learn more about developer experience.
- 1:17:24SPEAKER_01: It could be an IC or an engineering manager.
- 1:17:28SPEAKER_01: It could be leadership.
- 1:17:30SPEAKER_01: So we cover things like, I'm writing this with Abinoda.
- 1:17:34So we're covering things like what type of data should we be
- 1:17:37thinking about?
- 1:17:37SPEAKER_01: How should we communicate data?
- 1:17:39SPEAKER_01: How should we communicate like the ROI, right?
- 1:17:43SPEAKER_01: A lot of this is communication.
- 1:17:45SPEAKER_01: How do we want to think about a long-term analysis and data collection?
- 1:17:49SPEAKER_01: kind of program.
- 1:17:51SPEAKER_01: This is not a stats book.
- 1:17:53SPEAKER_01: But getting people pointed in the right direction, right?
- 1:17:56Examples of survey questions,
- 1:17:58examples of types of data,
- 1:17:59examples of ways to operationalize.
- 1:18:01Because my kind of heuristic is once I've had at least 100
- 1:18:06people ask me a question
- 1:18:07SPEAKER_01: that ends up being in the same flavor of answer,
- 1:18:10SPEAKER_01: right?
- 1:18:10SPEAKER_01: It's very, very similar.
- 1:18:13SPEAKER_01: Something written,
- 1:18:13something like a book can be really helpful because then
- 1:18:16everyone can kind of cover
- 1:18:17basics and then think of the next level questions that they're
- 1:18:20going to get to eventually.
- 1:18:21But it's not a good use of time if like I'm a blocker if we're
- 1:18:25trying to do
- 1:18:26SPEAKER_01: something over an hour.
- 1:18:27What's a practice or a tool that helps you personally be more
- 1:18:31productive on the
- 1:18:31SPEAKER_00: day-to-day basis?
- 1:18:33SPEAKER_01: Day-to-day.
- 1:18:33SPEAKER_01: So day-to-day at work, I don't want to say a tool.
- 1:18:37I've got an incredible PM who has absolutely up-leveled all of
- 1:18:41the work that we're doing.
- 1:18:42SPEAKER_01: Jason Entenman, shout out.
- 1:18:44SPEAKER_01: Having a very good PM, TPM could just be a game changer.
- 1:18:49SPEAKER_01: I had an incredible one at Google too.
- 1:18:51SPEAKER_01: It was just so, so good.
- 1:18:54SPEAKER_01: But when I think about technology tools,
- 1:18:58SPEAKER_01: not in my work life,
- 1:19:00SPEAKER_01: because I kind of maintain this,
- 1:19:02SPEAKER_01: I for sure maintain like a security boundary.
- 1:19:04SPEAKER_01: Claude, Claude's incredible.
- 1:19:07SPEAKER_01: I'm able to use Claude to do many, many things.
- 1:19:11SPEAKER_01: And that, I would say, has been the most notable impact.
- 1:19:16SPEAKER_00: It is very interesting how the competition between LLMs,
- 1:19:21SPEAKER_00: it's just so great,
- 1:19:22SPEAKER_00: because OpenAI obviously started all of this,
- 1:19:25SPEAKER_00: and now there's Entropic,
- 1:19:27SPEAKER_00: Claude,
- 1:19:28SPEAKER_00: Sonnet,
- 1:19:28SPEAKER_00: in many ways,
- 1:19:30SPEAKER_00: jumping ahead.
- 1:19:31SPEAKER_00: But I feel it's just so great for the ecosystem.
- 1:19:33SPEAKER_00: There's so much competition everywhere, and they're all...
- 1:19:36inspiring one another to become just so much better so i i feel
- 1:19:40like as a someone
- 1:19:41using all these things we're just in the middle of some of the
- 1:19:44best time in the
- 1:19:45sense of like getting all of this these things for free because
- 1:19:48you know these
- 1:19:49teams want to like outclass one another and we're just
- 1:19:52benefiting from it and you
- 1:19:53know like you said it's so early that everyone is still
- 1:19:55learning and i'll jump back
- 1:19:57SPEAKER_01: and forth because some models are you know better for something else but
- 1:20:01SPEAKER_00: It can change every month, right?
- 1:20:03SPEAKER_01: Yeah, it can change all the time.
- 1:20:05SPEAKER_01: But having a rubber duck that responds to some of your questions,
- 1:20:10SPEAKER_01: sometimes I just want the rubber duck,
- 1:20:12SPEAKER_01: but sometimes I really want to think through something like,
- 1:20:14SPEAKER_01: what are my limitations?
- 1:20:15SPEAKER_01: What am I missing?
- 1:20:16SPEAKER_01: What are the holes?
- 1:20:17SPEAKER_01: Okay, no, that's not actually a hole.
- 1:20:18SPEAKER_01: What else would it be?
- 1:20:19SPEAKER_01: It ends up being really useful, and it's super, super fast.
- 1:20:24SPEAKER_00: What are one or two books that you read and would recommend?
- 1:20:27SPEAKER_01: It's tech related.
- 1:20:28SPEAKER_01: Inspire by Marty Kagan is great.
- 1:20:31I'm still making my way through parts of it because it is not a
- 1:20:34small book.
- 1:20:35SPEAKER_01: Yeah, it's right over there.
- 1:20:38It's really kind of solidified and articulated things that I've
- 1:20:43kind of known,
- 1:20:44SPEAKER_01: but like in a very fuzzy way.
- 1:20:45And it's also like introducing some new things for me to think about,
- 1:20:49which I really appreciate.
- 1:20:51SPEAKER_00: Awesome.
- 1:20:52SPEAKER_01: Another one that I loved that was just kind of practical.
- 1:20:56SPEAKER_01: I just like to dive into random things.
- 1:20:59SPEAKER_01: Outlive by Peter Atiyah.
- 1:21:03SPEAKER_01: I want to nerd out and learn something, which my partner jokes.
- 1:21:06I've heard a lot of good things about Peter Atiyah from people
- 1:21:12working in tech.
- 1:21:13SPEAKER_00: Yeah.
- 1:21:15SPEAKER_01: And then for a fun book, I always love Ender's Game.
- 1:21:18SPEAKER_01: It's like an oldie but goodie.
- 1:21:19SPEAKER_01: So if I just want to escape,
- 1:21:22I'll just grab a trashy beachy read or I'll grab Ender's Game
- 1:21:26or Ready Player One
- 1:21:27SPEAKER_01: or something because it's just a fun story that I can just race through.
- 1:21:30SPEAKER_00: They're such fun stories.
- 1:21:32SPEAKER_00: I feel the movies were fine as well, but nothing beats the book.
- 1:21:36SPEAKER_01: Yeah.
- 1:21:37And then for news and articles,
- 1:21:39Tressie McMillan-Cotton and Anne Helen Peterson.
- 1:21:42SPEAKER_01: are probably the most high value rates that I get outside of tech.
- 1:21:47SPEAKER_00: Awesome.
- 1:21:48SPEAKER_00: Well, Nicole, thank you so much for being on this podcast.
- 1:21:51SPEAKER_00: This has been so fascinating,
- 1:21:53SPEAKER_00: interesting,
- 1:21:53SPEAKER_00: and I think just like motivating,
- 1:21:56but both on how much we've come with developer productivity and
- 1:21:59also just how,
- 1:22:00SPEAKER_00: just when we're getting closer to figuring things out,
- 1:22:02SPEAKER_00: things change again with AI and teams behaving differently.
- 1:22:06SPEAKER_00: It's an exciting time.
- 1:22:07SPEAKER_01: Yeah, it's really fun.
- 1:22:09SPEAKER_01: This is a great time to be working, especially in tech.
- 1:22:13Thank you to Nicole for this deep dive into the ever-evolving
- 1:22:15field of developer productivity.
- 1:22:17You can read more from Nicole on her website or follow her on
- 1:22:19social media,
- 1:22:20SPEAKER_00: both linked in the show notes below.
- 1:22:23In the Pragmatic Engineer,
- 1:22:24we've done several deep dives on developer productivity.
- 1:22:26SPEAKER_00: Check these out linked in the show notes below or by searching developer
- 1:22:29SPEAKER_00: productivity in the Pragmatic Engineer newsletter.
- 1:22:32SPEAKER_00: If you enjoyed this podcast,
- 1:22:33SPEAKER_00: please do subscribe on your favorite podcast platform and on YouTube.
- 1:22:36SPEAKER_00: Thanks and see you in the next one.