Benefits of Cloud-Based Development Platforms

A CDE has advantages over conventional development setups. It gives developers consistency and convenience, gives platform engineering teams simpler management with consolidated infrastructure, and the enterprise gets a boost in developer productivity and lower infrastructure costs.
author avatar
Marc Paquette
 on January 8th, 2025
8 min read
Listen to this post
0:00

In the first article of this series, we introduced the cloud development environment (CDE). Now let’s get into details about a CDE’s benefits. Like any platform, these benefits start from a CDE’s use of cloud technologies to provide a service that’s consistent, scalable, and flexible.

A small team can get away with accepting a conventional setup’s limits as the cost of doing business. In large enterprise organizations, these costs add up to the point of unsustainability. When development environments cost too much to provide as conventional setups, switching to a CDE starts to make sense:

  • Developers get consistent environments that are loaded at the literal click of a button.
  • Platform engineering teams get a single place to specify, manage, and secure developer infrastructure.
  • The enterprise removes obstacles to developer productivity and cost reductions.

As you’ll see, a CDE reveals opportunities for multiple benefits. It’s often the case that a CDE feature that improves developer experience also eases the burden on the platform team and reduces costs for the enterprise.

Consistency and convenience for developers

A CDE aims to solve many of the developer experience problems that come from a conventional development environment that’s pushed to its limits.

As customers ask for more capabilities, development environments follow by growing in complexity. That complexity comes from new package dependencies, re-configuring build tools, and pulling from more repos. Developers with conventional environments are stuck with longer onboarding, longer build times, and other issues that degrade developer experience.

In a team using a conventional setup, there’s an irony in this: While the importance of consistency increases with complexity, the team has delegated this responsibility to each developer, which multiplies the chances of inconsistencies. A team knows this is happening when “works on my machine” appears in its chat channels.

As we saw in the previous article, moving to a CDE decouples the development environment from the developer’s workstation. That includes relieving the developer of configuring, updating, and maintaining the environment. This gives the team a double benefit of reducing inconsistencies while saving developer time.

Developers only need to install and configure an IDE, and sometimes not even that, while the CDE does the rest of the installation and configuration. Technical onboarding for new hires is reduced from days to, sometimes, hours. And veteran developers can swivel-chair to other projects just as quickly.

At the same time, a CDE preserves the flexibility and responsiveness of a local experience. Developers may run their IDE locally, customizing their IDE and plugins for their preferences. All the IDE has to do is connect to the workspace that the CDE provides.

Consolidated infrastructure

With the developer happily working from their preferred front-end tools, the platform engineering team now has more control over the development environments. A CDE centralizes the specification, management, and monitoring of development environments.

Templates and repeatability

Documenting the components and interactions in a development environment is good practice in itself, which is what competent platform teams already do. But writing a specification for a development environment, even in conventional setups, is only half of the solution. The other half is following this specification accurately, every time.

Here’s one of the biggest benefits of a CDE: The platform team specifies the parts of the development environment in a CDE template. Then, instead of hoping that each developer follows the specification, it’s the CDE that follows the template to provision workspaces. The platform team sleeps at night knowing that each developer works from identical development environments.

Flexibility for the platform team (and developers)

More sophisticated CDEs are flexible enough to host anywhere. For security, budget, or performance, the platform team can choose to use the infrastructure they’re already using, from hyperscaler cloud providers to on-premise servers, or any combination they choose.

The template itself isn’t a rigid specification, developers can still adapt it for their needs. With template parameters, the platform team chooses how the developer customizes the workspace, but within guardrails. For example, when starting a workspace, the platform team specifies the type of GPU to provision while the developer chooses how many.

Reduced support costs

Developer experience is more than just tooling, it’s also support. A CDE reduces the number of support tickets typically seen from inconsistencies in projects.

If a developer discovers a problem in their workspace, like a missing dependency, the platform team can diagnose the problem and apply it to all workspaces just by updating the template. Most CDEs support source-controlled, versioned templates. The platform team fixes the problem only once, all developers get fixes immediately.

A CDE is a lever

Remember that a CDE decouples the components in a development environment. A platform team uses this capability as a lever to spend less effort for greater efficiencies:

  • Redirect access to repos, package management, and so on, without disturbing dev workflows.
  • Organize dev infrastructure into (and administer it as) reusable components.

For example, think of a legacy project that’s rarely updated. A platform team decides to migrate the project to a CDE template to get an accurate, single source of truth.

By encapsulating it into a template, the benefits start accruing:

  • A manager or tech lead can assign a developer to the project knowing that there won’t be days wasted to set up their workstation.
  • The developer keeps using their preferred IDE and other tools.
  • Meanwhile, the platform team incrementally modernizes the legacy project’s template without disrupting developers.
  • The enterprise as a whole adapts more quickly to changing priorities, or just invests more time in actual development.

A CDE doesn’t sacrifice security

A CDE embraces all aspects of the cloud, including security. A CDE’s flexibility gives the platform team more choices over a conventional setup for hardening a development environment with little or no impact on dev experience.

Most CDEs let the platform team choose how a dev environment’s components are hosted, whether in the cloud or, for more stringent security, self-hosted and air-gapped.

For network connections, the CDE is in the best position to ensure that interactions between the IDE and the rest of the development environment are secure, whether from a local IDE, web-based IDE, or graphical client like RDP.

The same goes for access control. A flexible role-based access control (RBAC) system in a CDE lets the platform team specify the projects and resources that a developer may work with. And a CDE supports the secure storage of authentication credentials for workspace components so that only the platform team can see them.

Cost reductions for the enterprise

The benefits of a CDE bubble up the org chart to the enterprise itself. Adopting a CDE has the biggest impact when the costs of maintaining conventional development environments outgrows the capacities of the platform engineering team and the hardware that the developers work on. An enterprise finds itself in this position when it needs to increase spend on resources yet again just to keep pace instead of investing in future growth.

In a conventional development setup, the enterprise has limited budgetary options:

  • Throw more resources at the situation with, for example, regular upgrades to newer hardware.
  • Or limit access to expensive resources like GPUs.

A CDE lets the enterprise move the biggest computing and storage loads for development to the cloud. On the surface, this might seem costly. But it actually opens opportunities to reduce cloud spend:

  • For conventional setups with expensive, remote virtual desktop virtualization (VDI), a CDE reduces costs by letting the platform team provision less expensive cloud services.
  • The biggest savings come from on-demand usage. A CDE scales up resources only when they’re needed and tears them down when demand drops. Why should the development environment keep running when the developer has finished working for the day?
  • To bring on contractors or just reduce spend on workstations, the platform team specifies a zero-config web-based IDE, typically provisioned by the CDE.

Conclusion

When a developer’s laptop can’t keep up and the platform team would rather innovate than diagnose one-off problems, the conventional development environment loses its shine. A CDE solves this problem, giving developers, platform engineering teams, and the enterprise more consistency, convenience, flexibility, and control over their development infrastructure.

Not sure what a CDE is? Check out What is a Cloud Development Environment. You can learn more about CDEs in the rest of this series.

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!