Software Engineers Are a Unique Bunch

As software solutions are being incorporated into an increasing number of orthopedics products, it’s helpful to understand the software engineering discipline and the characters who are drawn to the profession. Over a four-decade career in the field, I’ve learned a lot about what makes software engineers tick. If you’re working in a multi-disciplinary organization, understanding how they think and work may help you navigate the challenges of incorporating their talents into your product development team.

I’m not a fan of sweeping generalizations, but here are some personality tendencies among the software engineering community. Understanding and noticing them will lead to more effective cross-functional collaboration among your product development teams.

The Introvert. The stereotype of the lone coder is not wholly off base. Software engineering attracts a disproportionate number of introverted people. This is not unlike many STEM-based fields, but is something to understand about our kind.

As introverts, software engineers reenergize by pulling away from others. Their alone time enables them to recharge and look at problems from a fresh perspective.

Ironically, software engineering is a team sport in which individuals across a breadth of technology expertise and experience come together to design, develop, test and release their software. Teams comprising engineering managers, frontend developers, backend developers, quality engineers, security engineers and database administrators are pulled together to develop a complete solution.

Though such a team may consist mainly of introverts, they understand the importance of tapping into each other’s expertise and supporting the needs of their teammates. They know everyone is working toward shared goals and will do what’s needed to achieve those objectives.

I’ve often seen a highly collaborative spirit within an engineering team laced with an understanding that a given team’s rhythm is very welcoming of the need for alone time among its members, whether to enable them to focus, get into a flow or simply recharge.

The Collaborator. Although the best software engineers may be introverts, they typically are also strong collaborators driven to share their expertise by mentoring other engineers and individuals outside of their field, including professionals in sales, marketing and product support.

Their understanding of the big picture allows them to see how team members must work together to deliver a solution. If software engineering is a team sport, these collaborators often serve as the glue that keeps the team together and working in concert.

The Problem Solver. Software engineers love to solve problems. That problem could be investigating and fixing a bug that has surfaced in their code or a complex product requirement that requires an in-depth investigation to explore software design approaches. Good engineers don’t shy away from problems like these, though they’ll need the latitude to explore potential solutions.

The Curious Engineer. Individuals drawn to software engineering are typically quite curious. They are driven to understand how various technologies operate and like to learn about new tools that prove useful in their work. They value the opportunity to dive into something new and do so frequently.

When building a new software capability, evaluating various options on the front end could be time well spent if the net result is a more robust, usable and reliable solution.

The Logical Thinker. Software engineers tend to think linearly. They are systematic in how they approach their work, proceeding step by step toward a final solution. They’re also typically reluctant to get too far ahead of themselves.

That’s why it can be difficult to pin them down on project schedule estimates that require a handful of assumptions that may turn out to be untrue. You’ll often hear engineers asking numerous fundamental questions at the front end of projects as they attempt to build a mental model of what they’re expected to implement.

The Detail Wallower. Software engineers are unafraid to dive into levels of detail that might scare others. Coding is, after all, a detail-oriented pursuit. In fact, they may spend so much time focused on the details of a given problem and solution that they can lose sight of the big-picture perspective.

The Function-Over-Form Designer. Human-centered software usability design doesn’t come naturally to many software engineers. That’s probably apparent to many non-tech users of technology when the intuitions assumed by the software engineers who developed that technology don’t align with the intuitions of the actual users of their software.

Software engineers tend to focus on building a solution with little regard for how it may be used and by whom. The field of user interface design has been a natural outcrop of this tendency, filling the void with designers who can provide usability insights to guide the work of software developers.

The Systems Thinker. Great software engineers can dive deeply into details while understanding the big picture. They connect the dots to understand complex problems and design complicated software solutions.

They consider important non-functional requirements across a given solution, such as software performance and responsiveness, cybersecurity, reliability observability (the ability to see how software behaves under real use) and modular design. These systems thinkers often have titles like Software Architect, which acknowledge their invaluable ability to tie together all the pieces of a development project.

The Empathizer. Some of the best software engineers I’ve worked with are empathic at their core. If they’re building a solution, they want to know that it serves the target audience. They’re not only eager to support individuals outside of engineering, but also listen to the challenges and complaints of others in a non-defensive manner to fully understand how software could be improved.

The empathizer is also quick to volunteer their time and attention to train sales, marketing and support staff, or otherwise support the greater organization.

Software engineers share most or all the traits noted above, but they also bring individual contributions to the table that lead to the success of your product development efforts. Approaching them with a greater understanding of their personalities and the way they tackle projects will help you get the most out of their skill sets and maximize their contributions.

 

DO

Dave Olander Dave Olander is an Engineering Leadership Consultant based in Morristown, New Jersey.

Join us!

The best of BONEZONE content delivered to your inbox, twice each month.

RELATED ARTICLES



CONTACT BONEZONE

 

CONTACT BONEZONE