Hugely amplified by the DevOps revolution of the 2010s, engineers and managers have been on a quest to specifically improve quality with improved techniques such as continuous integration, branch-based development and new and specific tools to test software at a unit, acceptance and integration level. However, despite such initiatives,
41% of respondents to a survey included in our DevEx Evolution playbook, created in conjunction with Network Perspective, reported that quality is the biggest challenge facing them in delivering software. The reality is that this isn't just a technical problem; it's a complex issue rooted in aligning technical quality with user value and, ultimately, a company's mission and goals. Arguably, all of these improvements should improve a developer's life, but what's prompted the emergence of Developer Experience as a discipline in its own right?
Developer Experience reflects the manifestation of software quality positively and progressively. A key to unlocking this is to make it easy for developers to do the right thing. Gathering insights from developers about things that slow them down–the little paper cuts that affect most development practices–and working to resolve these can dramatically improve the development process.
So, how do we link Developer Experience to software quality in a positive and progressive way? It's about shifting the focus to the developer's journey – how they interact with people, metrics, tools, and processes to help them make software that works well. When developers are empowered with the right resources and a streamlined workflow, they're better equipped to build high-quality software. This ultimately leads to fewer bugs and well-written and maintainable code, thus setting up a developer's "future self" to succeed in building reliable quality software.