CDEs: Offering Improved Developer Productivity and Experience
Our second blog accompany our CDE Adoption Report.
It’s no secret developers are some of enterprises’ most valuable, expensive, and hard-to-replace assets. So it stands to reason that organizations should put the highest priority on ensuring that developers are not only working as efficiently and effectively as possible but that they’re happy as well.
Unfortunately, developer satisfaction and productivity is strained. A Zenhub survey showed 10% are dissatisfied, and only 31% were extremely satisfied with their jobs. Plus, developer productivity is lagging for a very good reason: the software industry has moved so many tasks onto developers’ plates that less than a third of their time is spent writing code.
The “shift left” approach—integrating testing and quality control early in the development process—is causing a significant workload increase for developers. According to the CDE Adoption Report, developers now spend nearly as much time on planning, testing, deploying, and maintaining software as they do on actual coding.
There’s a solution. Cloud Development Environments (CDEs) go a long way toward solving these two interrelated issues – the prolonged time to merge and developers’ frustrations with the tasks that impede their productivity.
They shift important development processes like writing code, executing builds, running tests, and deploying applications out of local environments and into the cloud. This streamlines the developer experience, providing organizations’ prized assets with more flexibility and efficiency, helping them to collaborate better and release higher-quality software faster.
A recent Coder survey of 223 developers and business leaders, the focal point of our CDE Adoption Report, shed new light on the role CDEs are playing in making developers happier and more productive. Developers using CDEs reported a 15% higher metric in their overall quality of life compared to developers using conventional coding environments. Coder was one of the top-scoring CDEs (4.4/5) that made developers happier. Respondents also noted that CDEs generated overall productivity improvements in the set-up and ongoing management of development environments.
Let’s unpack these issues.
The biggest frustration developers face is having to suffer through lengthy onboarding – not only when they’re first hired, but whenever environments have to be updated along the way. In conventional enterprise environments, it can take days or weeks to equip each developer before any lines of code are written. This isn’t the case with CDEs. As Elliot Graebert, Director of Engineering, Infrastructure, Skydio, noted in the CDE Adoption Report: “The time from setting up a new workstation to the first commit to production plummeted from a week to as little as an hour.”
They do this by removing the complexity from the developer onboarding experience. All the development tools, services, and infrastructure developers need can be made accessible through a web browser, or even by connecting through an extension on a local IDE. Often with a configured CDE, all IT departments have to do is give developers a URL and have them sign on.
Still, onboarding is more than just a one-time task to be carried out at the time of hiring. Large enterprises typically shift developers to new projects four to six times per year, each incurring an “onboarding” tax as they set up the right tools, languages, dependencies, and repositories.
CDEs remove other sources of friction as well.
- Removing confusing code flows: Not all codebases are created equal. Some are more complex than others, possessing unclear boundaries and many connecting factors. CDEs codify the environment, letting developers use the components that are there rather than having to worry about changes that get made. For example, using Coder Templates, developers can create customized cloud development environments, provisioning any platform in the company's arsenal for their own use.
- Code maintenance: In conventional coding environments, developers find themselves wasting time having to update dependencies every time they switch between branches and projects. CDEs remove this hurdle. Since the developer environment is standardized, it automatically works every time. All updates are managed centrally, freeing up the developer to focus on code rather than maintaining the overall system.
- Consistent environments: CDEs eliminate occurrences of "but it works on my machine" by ensuring that developers and testers are using the same code, dependencies, and data in a consistent and centralized environment. This is especially important when contractors bring their own devices into the workflow. Their environments can be easily configured and synced within minutes.
- Eliminating rework: Manual environment setup can also force developers to re-do tasks if environments don’t sync properly across a development team. A feature change may work on a developer's machine but break in a CI test or, worse, production. Besides environmental consistency, developers can securely share their work-in-progress applications. Coder gives developers confidence their code will work in CI and production, eliminating rework.
- Shortening code reviews: One of the more frustrating parts of the developer experience is having to stop what they’re doing and make themselves available for a code review. It’s bad enough that these tend to happen multiple times a day. If the code has been significantly updated, the reviews can take a while. With cloud dev environments, developers can conduct a code review in a separate tab, test it, and comment on it. This removes the need to conduct lengthy merges because developers are always working with the latest code.
Developers are at their best when they can concentrate on crafting quality code without the hassle of managing their development environments. CDEs offer a straightforward solution, removing these obstacles and increasing developer experience and productivity. This approach not only benefits developers by allowing them to focus on their core tasks but also boosts their value to the organization.
Related Content:
Subscribe to our Newsletter
Want to stay up to date on all things Coder? Subscribe to our monthly newsletter and be the first to know when we release new things!