Eliezer Talón Software Engineer

Books I read in 2022

This is the last instalment of a series of posts recollecting what I read from 2020 to 2022.

Accelerate

Accelerate, by Nicole Forsgren, Jez Humble and Gene Kim, is an enlightening work based on extensive research about the metrics, practices and culture that have an actual impact on the delivery performance of organisations using technology to drive their business.

I found the most relevant content in the first part of the book, where the authors present what they learned in a succinct and pragmatic way. The second part is an explanation of why and how their research validates the results. Finally, the last part presents a real life example of an organisation that applied the practices from the first part successfully.

There were many lessons for me in this book. But if I really had to choose, I would pick these three:

  1. Be wary of vanity or flawed metrics and use what research shows to be actually meaningful (e.g. the DORA metrics)
  2. Continuous delivery not only improves delivery performance and quality, but also helps improve culture and reduce burnout and deployment pain. But implementing these practices often requires rethinking your organisation
  3. A high-performing culture involves more than just using tools, implementing prescribed processes from a project management framework or adopting behaviours of other successful organisations. Instead, be willing to experiment with different approaches and agree upon the best way to do the work for your team

Scrum Guide

I’m more skeptical than usual with all things Agile1 related, especially when bold claims are made about it. I guess it’s because I believe that a lie told often becomes the truth. And if we let things go unexamined, we are only perpetuating falsehoods and contributing to the problem.

So I read the Scrum Guide again because I kept hearing people say things that I thought were not accurate, which usually fall into two broad categories:

  1. “We should do X because it’s part of Scrum”
  2. “We are an agile team because we do Scrum”

You wouldn’t believe it but stories, story points, velocity, burn-down charts, and tools like Jira are not part of Scrum. At least not in the 2020 edition.

If you want to know what Scrum really is, read the guide. And do it every few years because it’s updated periodically. Things that they’ve come to understand as suboptimal (e.g. the Sprint “commitment”) have been removed as the framework keeps evolving.

Moreover, adopting Scrum is not a guarantee that your team is or will ever be agile2. Scrum has good things. The ability to give a new or immature team some structure as a starting point is probably the most notable one. But sticking to a strict set of rules and not adapting your ways of working over time is probably one of the most anti-agile things there can be.

Object Design

After reading Object Design, by Rebecca Wirfs-Brock and Alan McKean, I couldn’t help but thinking that Responsibility-Driven Design is the logical precursor of Domain-Driven Design (DDD). Or rather, that it’s a foundational technique that complements DDD perfectly.

In a nutshell, the authors propose that object-oriented design is better understood in terms of roles and responsibilities. A role would be a “set of responsibilities that can be used interchangeably” and objects embody “a set of roles”. That contrasts with defining the behaviour of class along with the data they hold.

Reading this book helped me revisit concepts that I thought I had already learned, but in retrospective it’s clear that I had not grasped them fully. I must say though that it’s more of a reference book than something to enjoy as casual reading.

The Manager’s Path

During 2022 I felt like I had to choose in which direction I should take my career next.

I had made three brief stints as leader of a small team. The first one was around 2005, when I was asked to take on the role of musical director in a music band. Several years later I was promoted to lead the team I was part of in a fintech start-up. And again some time after that, I was leader of a pseudo-Scrum team in another tech start-up for around eight months.

Although I had really good moments every now and then, I didn’t really like the experience in general. But it’s also true that I had never had any training before and in some situations I might not have had enough support from upper management either.

So I read Camille Fournier’s The Manager’s Path in the hope of understanding the role better, reflecting about my past experiences, learning from any mistakes I could have made and see if management is a career option I should consider.

It didn’t disappoint. The book is a great foundational resource that describes the most common stages of a career progression as manager. On top of that, it gives sound advice about what can go wrong, tips on how to approach each stage to maximise your success and concrete examples of how to navigate difficult situations (and people!).

I’m still not sure if I want to step into a management role. But I achieved my goal of understanding what the role entails and I think I’m better equipped now to inform my decision.

Becoming

Reading Michelle Obama’s Becoming was… interesting. I’m not a big fan of this kind of books, so I needed some discipline to finish it. Her story is definitely compelling, coming from a working class family and growing in the suburbs of Chicago until ending up as the First Lady of the United States. But somehow it didn’t speak to me much.

The part that I enjoyed the most from was precisely when she was not in the White House yet. Getting to know her struggles as a black woman in a society designed for white people, mostly men, helped me understand better how that part of the world works. But once she jumps into politics at scale, I had the feeling I was merely listening to first world problems.

This is not to say that I don’t think she’s done a great job. Again, considering where she came from, I think her story is persuasive and even encouraging for other people in the same situation. It’s just that it left me with this idea that “you can be anything you want to be”, which I don’t buy.

  1. The capital A is intentional

  2. The non-capital A is also intentional