.@PSI_Engineers built a culture around empathy—and their software is better for it. Here’s why.
Want to know which one of the software engineer personality traits will set a great developer apart from everyone else? It’s not speed or expertise in the latest coding language. While those skills are useful, to be sure, a truly great developer has something far more valuable: empathy.
Software development is all about the end user. Think about it, If you’re a software company and your customers don’t trust your product or don’t feel like you have their best interest in mind, you can almost delete everything else.
A Culture Built Around Great Software Engineer Personality Traits
At my company, Patriot Software, we encourage our developers to stay up to speed on the latest trends and tips but also go to great lengths to create an atmosphere of empathy. We want people here who will craft good code, and, when it breaks, say, “I wonder if that problem affected anyone else, anywhere else?” Then go off to find out.
No one has to ask them. No complaint or error log prompts them. They simply do it themselves because they’re empathetic to the frustrations that stem from bad code. This is where empathy makes all the difference in developing Patriot’s quality accounting and payroll software.
Unfortunately, empathy isn’t one of the most common software engineer personality traits. Why? Well, let’s face it, software development is not cheap. Good developers are in high demand, and employers know they have to overpay to get them. This high barrier of entry stresses the need for cost cutting, which is often done on the front end where the most desirable software developer characteristics are seen as a luxury. The hunt for ways to reduce coding expenses often leads to outsourcing. In my experience, when management creates an atmosphere of outsourcing to cut cost, it takes incumbent developers out of the conversation for “what is quality.” Developers feel like management doesn’t really care about them, or their insights. Moreover, the outsourced code is usually done by parties that are focused on speed and turnaround time, not quality; effectively dumping a broken code into the laps of incumbent devs to stitch together.
This is when good developers will disengage. They don’t have any incentive to try to be an empathetic developer; instead, they have an incentive to prioritize speed over cost over quality.
I’ve seen talented, bright developers that would craft code with pride, unafraid to go the extra mile, and get beat down, being told, “Don’t try to do that. That isn’t making us any money.” Maybe not up front, but there is a cost of quality factor that cannot be discounted. However, I’ve also seen the other side, when average developers become excellent, empathetic software craftsmen because the company shifted the focus from delivery date and cost, to quality and satisfaction.
Balancing the Need for Project Scope and Facilitating Great Software Developer Characteristics
Proper project management is all about finding ways to minimize scope creep and keep the project focused on the business need. You don’t want developers gold-plating software with expensive features that no one needs—not management, not the end user. But there is a fine balance here. If you invest in creating a culture that is empathetic to the end user by factoring the time it takes for that to play out into the project, you’ll get the cost savings back at the end of the project—an ROI that is superior to what you would have spent on the front end.
You will also get higher employee engagement. For example, at Patriot Software, much of our development team has been here for 10-15 years, sometimes longer. That’s rare in software development. But the reason they stick is because they know what a great development atmosphere they have here. I imagine a bigger paycheck could be chased elsewhere, but, are you giving up an atmosphere of empathy in order to get it? Are you going to feel disengaged at work? Can you walk across the hall and talk with the business side of the operation to clarify goals? You can here, and that has real world and ROI value when your business is built on the success, failure, and products of software development projects.