… Engineering is something else entirely. It is about building things that people will actually care about. It is about making people’s lives better.

— Daniel Lemire1

This time, I might be making a bold statement. However, being wrong (many times) is a part of publishing my ideas, so I need to take the risk. After all, how can we achieve perfection without failing? Since I started writing more frequently in the last couple of months, I’ve come to the realization that writing is akin to implementing a solution. Our ideas never fail until they are put into words, just like a solution never fails until it is put into practice. Until then, we miss the learning opportunity. As always, I’m open to feedback. Shoot me an email if you feel like it.

Based on my experience in the last couple of months, a huge gap is being created, albeit unintentionally, between engineers and both the product and customers. As far as I’m concerned, this gap has two main causes:

  • One is the broader push toward AI, which is influencing how things are built or prioritized. The tool has become the goal.
  • The other is a shift toward individual-focused performance expectations, where people are evaluated more on personal output than collective outcomes.

I believe these two forces are entangled and reinforce the same problem rather than acting separately. As an engineering manager, I have seen OKRs (Objectives and Key Results) as dumb as the percentage of effort spent on a task using AI. Engineers tried to prioritize tasks that could be completed entirely using AI, or split tasks so that some could be developed entirely using AI. But the core complexity of the feature remained. It was seen as a difficult problem and deprioritized. This is at least as bad as counting developer commits for performance tracking. I guess almost everyone knows we need to measure outcomes instead of outputs, yet we are here.

Companies have started to push AI usage aggressively and oftentimes blindly. Most individuals are now forced to have targets related to AI. I observe that technology companies, most of which had a customer first mindset as a founding value, are now widely shifting their focus from customers to AI. Instead of being just a tool, AI has become the goal. I know a fair number of “winner” companies owe their success to their customer focus. In my opinion, so-called leaders are missing the most important pillar of their business.

Your customers don’t care whether you use AI or not. They care only about your product. If your product is AI, then it makes sense to promote it. However, if it is not, then you are just shifting the focus of your engineers away from your product and customers. This is the shortcut to failure.

Let’s say we could consider Sir Isaac Newton an individual contributor. He probably accomplished more than any other human being. Even he acknowledged: “If I have seen further, it is by standing on the shoulders of giants.” We, mere mortals, definitely have to work as a team to create impact. I don’t like the term individual contributor either. Yet, we call our engineers individual contributors. What happened to the good old team player? Is the AI push changing human nature and isolating us as individuals rather than a collective species? Or is this caused mainly by Western individualism? Anyway, in my experience, any individual performance metric that does not target customer satisfaction harms the product in one way or another.

Always design a thing by considering it in its next larger context - a chair in a room, a room in a house, a house in an environment, an environment in a city plan.

— Finnish architect Eliel Saarinen

Saarinen’s quote fits very well with software design. Indeed, I also have applied it in my teams for feature development, encouraging engineers to take end to end ownership2.

Considering the larger context applies to OKRs as well. When an individual is tied to certain key results without the larger context, then they cannot realize the detrimental effects, or worse, ignore them to achieve the goals in their limited context.

I have encountered many bullshit roles (jobs)3 throughout my career. These roles were such that they could be immediately eliminated with no or negligible impact on the customers. However, they are often the highest-paid roles in companies.

I see myself as a pure engineer who was handed a management role. Over time, the bureaucracy increased steadily. I spent time going over employee satisfaction results and coming up with action items that were never used to decide the direction of the company. Performance evaluations and the promotion process got more and more tedious, taking too much time and eating into precious product time. My own role was becoming a bullshit job.

Look around you; you will immediately recognize the bullshit roles. Perhaps you have one as well. Sorry to bring that up. I presume much of the AI push and individualist performance expectations are created by these bullshit roles. Because these roles pull people away from the product and customers. Oftentimes, they are the residue of the Dead Sea effect4. I fear that the AI push and bullshit roles will reinforce each other and end up driving the best engineers away, fast.