SW engineering, engineering management and the business of software
Editors note: I originally wrote about Empathy as a Core Engineering Requirement back in 2017. This is adapted from a recent series of tweets:
People ask me why I stress Empathy as an important technical skill (esp. when it comes to recruiting). Aside from the fact that I prefer working with empathetic people and I believe to be a morally sound way to live your life, I make the argument that empathy is an important aspect of business success.
Often, the key to being successful is just getting better than everyone else around you at a faster rate. The way to do this is with the innovation loop: experiment/action → feedback → analyze → iterate → repeat (or EFAI loop for short).
You see aspects of this in obvious areas like AB testing or NPS surveys. Importantly anything you can do to increase the cycle time of that loop is critical.
The way businesses most commonly mess this up is A: skipping a step such as ignoring or not collecting feedback or gathering data but not doing any iteration (which seems silly but I see it all the time!) or B: dramatically slowing the cycle by not allowing for both outcomes of the experiment/action step.
Diving into B, almost by definition an experiment/action can succeed or fail. When you have an environment where failure is frowned upon, punished or has negative ramifications for your career, you are preventing rapid cycles by dramatically increasing friction.
This brings up the concept of psychological safety. One common way of thinking about PS is that you are creating an environment that allows failure is a safe manner. In other words, fast EFAI loops essentially require a workplace where people can fail safely. I do want to point out that this is not an excuse for recklessness or gross negligence. You can have a psychologically safe environment that also has reasonable safeguards against ridiculous extreme behavior.
So if the goal is success and rapid innovation loops drive success and rapid innovations loops require environments where you can fail safely, how to we achieve that?
Having empathy for your users, co-workers, managers, manager’s manager, your reports is an essential foundation of creating a safe environment. Empathy allows you to evaluate outcomes, especially failure, while maintaining a very healthy respect for individuals, the circumstances and context around the original experiment or action. Being able to say: “I understand that you made the best decision at the time with available information at the time” and work to resolve, mitigate and achieve better outcomes is a tremendously powerful tool
Empathy is an important technical skill as it helps create environments where ppl can fail safely which begets fast innovation loops which begets a rate of improvement that outpaces your neighbors & competitors which is strong part of repeated, outsized, successful outcomes.