Empathy-Driven Development: A Slack Takeover with Andrea Goulet
Thought leaders throughout the software community are taking over the TechWell Hub for a day to introduce themselves, answer questions, and engage in conversations.
Andrea Goulet is the CEO of Corgibytes and the founder and cohost of Legacy Code Rocks, a podcast dedicated to changing the way we think about legacy code. LinkedIn also named her one of the Top 10 Professionals in Software Under 35. @andreagoulet presided over our most recent Slack takeover, which led to some insightful discussions.
Empathy-Driven Development
“Why is it that you find empathy to be such a crucial skill in software development?” —@Owen
Goulet shot down a common stereotype that if you are analytical and logical, you can’t be empathetic. “Research shows that the only people who don’t have empathy are sociopaths,” she said. She added, “If we want to build products that are effective and useful, the process of listening and problem-solving is critical. I’ve actually used this to develop my own working definition for software engineers: proactive perspective-taking and problem-solving.”
Goulet pointed to Brené Brown’s book Dare to Lead to outline five skills associated with empathy:
- Taking perspective
- Being nonjudgmental
- Understanding another person’s feelings
- Communicating your understanding of another person’s feelings
- Being mindful
“These traits don’t just help us build better software,” Goulet said, “but they help us develop teams that are inclusive and have the psychological safety that’s required to innovate and experiment.”
Reinforcing Agile
“My company still practices waterfall, or at best, some iterative waterfall. However, they’ve convinced themselves they are actually doing Agile. It drives me nuts, but is there real harm in this? And how might I go about correcting their perception?” —@andrew.peckens
Goulet pointed to our human nature of struggling with change as the root of the issue. She suggested that teams keep looking to the Agile Manifesto and its principles and to find what works best for them, as her team does.
“We continue to experiment with different processes instead of getting tied down to specific practices. We’ve come up with internal ways of working that are inspired by different practices but aren’t strict implementations of any one,” she said. “To me, getting dogmatic about anything kills the spirit of experimentation and innovation.”
An Agile Approach to Quality
“How have you implemented agile to better develop good QA practices, designing a test automation front end?” —@Jeanette Kreutner
“In general, we have a strong test-first culture and we don’t distinguish between testers and developers. QA is everyone’s responsibility,” Goulet said. “We encourage our clients, especially the people who don’t code regularly, to write code using specifications in languages such as Gherkin to prevent the inevitable translation errors that occur when you use a spreadsheet or similar tool.
"Good testing happens much earlier in the development process than I think a lot of people realize. Building the right thing is just as important as building the thing right.”