Decency in Tech

Pull Requests kicked around and asked apart, questions flinged at a presenter after the “thank you” slide, that judgmental moment of silence after an ill-placed question. Does decency have a place in tech? A question I asked myself 3 years ago, and finally some answers.

This all started that week I spontaneously attended a presentation on AWS security. The talk was highly interesting! The presenter showed his personal involvement with the topic, while the content was up-to-date, well chunked, extensively researched and battle-tested.

During the Q&A session though, the presenter got picked apart. The viciousness, the ruthlessness, the arrogance. This Q&A session really slapped it in my face: The dimension of decency in tech.

The presenter was not imposing some technical agenda on the participants. Neither was he getting paid for his presentation, nor did he at any point claim that his solution was the best solution. In fact, at the beginning of his presentation he clearly stated the opposite. Despite the usual formal “thanks everybody for coming, thanks for presenting”, what he got for his efforts where a bunch of questions aimed at proving him wrong. The good old half hearted sandwich technique. All the while most participants probably couldn’t have presented a better solution either.

Often it is just really easy to ask critical questions.

This hectic back and forth that followed opened my eyes: Most technical conversations can be described better as battles for correctness rather than actual human contact. There is often no respect, personal interest or appreciation in these encounters.

It makes sense to pursue technical correctness. In fact, this is the job, and it is a great mental juggle to jump through all these hoops, to in the end arrive at a solution that “just works”.

A job in the world of technology in many ways is like any other job. You bond with your coworkers. You pursue a common goal. Depending on the culture you do this without judgment, resentment or a complex hierarchy system. A thing that stands out about working in tech though is the pursuit of technical correctness.

Technical correctness I find is not necessarily something that’s in the human nature. As social animals we really need to work on ourselves and sharpen our minds, so we could “be correct”. Psychologists know, that even the process of remembering itself is a social process, not an exact process. Two persons could remember the same thing differently and later come to a common agreement on what happened. What was remembered wasn’t an exact recording of the reality to begin with, and now it could be something else entirely.

It is not an exact process, but it is something that is good enough. And it’s social. This is where the catch is: Good enough is not always correct.

It is in this background that striving for correctness is a human and a social challenge. Listening to technical discussions is most the time not very comfortable. Rather than a conversation, it’s a battle for correctness, in which the conversationalists constantly attack each others statements from every angle, trying to find a flaw. Once that cannot be found, they immediately lose interest in the conversation. A mistake couldn’t be found, so the discussed aspect is “probably fine”.

In this context one really has to wonder, how this inhumane search for truth can be combined with a humane and respectful co-working. And here comes the twist. 3 years ago, when I started writing this post, I couldn’t find a resolution. I could see the problem, but I couldn’t see its end. Now, a couple years and a couple employers later, the picture is a bit clearer.

The problem of decency exists in every company, and good engineers will always challenge a technical solution. The humanity, kindness and respect with which these interactions are played out however varies from culture to culture. I’ve seen cultures which were extremely technical, in which every conversation was a challenge. It was in this culture in which I started this post. I have then seen companies in which the only thing that mattered was speed. And I’ve seen companies in there was a lack of challenge. So in this sense, the problem I’ve been describing here may as well not apply to your company. But it is something that can go into the extremes at some points.

In reality, I’ve seen a few strategies to bring the humane aspect back into a culture that still challenges where needed:

  • Accept and give ownership. I’ve seen seniors accept even quite ugly Pull Requests, as long as they weren’t under their direct personal ownership. Let people do their mistakes. And then let them fix their mess. Don’t be the person that takes something apart that the other person might be okay suffering for.
  • Celebrate and allow. Celebrate even small contributions that work. Catch them when they are good. Allow small mistakes that still work. Similar to the first approach, but a little bit more emotional. A little bit more celebratory.
  • Assume excellence. Given a poor proposal, still assume excellence in the other. Pose the question in a way, that you assume they must have come to their conclusion even though they considered the “better” option. This approach could potentially turn passive aggressive, and it is indeed a threat. On the other hand, without commandments, how could you arrive at achievements? Assuming excellence is a very handy way to approach yourself and your colleagues.

Especially the third one is one that I’m curious about and have seen work in many situations.

Assume excellence.

Catch them when they’re good.

Know to still enjoy each day, as you can take only good memories with you, not those perfect packages.

Rounding things up, I now see that each company has their own challenges. A conversation around decency can become mute in times of desperate search for technical excellency or even basic engineering standards.

Different companies work in different configurations. Different people are okay with different situations.

All I can say in the end is, if you find yourself constantly punished for your work and demotivated, there are other companies in which your life will be better. And for the new and old seniors out there, I’d say there is always a way to let a peer know about his flaw in a respectful manner. Remember, you were once that guy…

comments powered by Disqus