arrow

ego and engineering


Is it just me, or is the software engineering field filled with ego?

This could perhaps be said of all fields — we have eccentric artists who believe their contributions are god-like (Scriabin and Kanye come to mind); we have charismatic leaders of religious institutions (Joel Olsteen leading the fray of the prosperity gospel); we have wealthy and powerful economists and “world leaders” (or as Nassim Taleb calls them, the Davos attending members of the international association of name droppers).

Here's what I've seen in software:

Pull Requests are the arena where developers often note their semantic preferences, often disguised as mandates for theoretical ideals (“clean”, “readable”, “performant” code). There is a flexing of technical and theoretical knowledge on Github comments, often made without a review of the context of the changes being made.

I have some empathy for arrogant (or seemingly arrogant) expressions. The more senior I have become as an engineer, the more I can identify anti-patterns or dangerous code, and the more confidently I may demand a change. And often those who are responsible for reviewing are fatigued by the demands of their position; senior, staff, and principal engineers will likely do more reviewing than actual coding, and there is only so much bandwidth these engineers will have to absorb the full context of a given PR before making comments that demand changes.

The demands for changes are necessities — those with experience and insight need to guard the larger code-base and steward the efforts of the team. But perhaps the ego-flexing can be softened by approaching the demands with some degree of Socraticism. Instead of saying “it is not clear why X” or “this code needs better typing”, we could prefix our demands with expressions of empathy (“I think I understand you're attempting to do X”) and dress them as requests (“could you change this to Y?” or “do you think your current approach has any particular advantages to Y?”).

Maybe this is too much to ask — it may be too much to expect in a male-dominated field whose caricature of its constituents is an on-spectrum nerd with little appreciation for social nuances.

But perhaps demanding greater empathy in our reviews of each others' work is just as indispensable as the demands we make to keep our code standards high. The whole team benefits when its individuals feel heard and their contributions are guarded from ridicule or destructive criticism.


Jan 3, 2022

Oakland, CA