Product
February 25th, 2022

How Coder workspaces reduce the cost of software development

author avatar
Mark Milligan
Head of Sales

SHARE

Software development is no longer a back-office function in many large enterprises.

Executives are starting to see software development as a strategic way to accelerate past their competitors, powering critical business functions like analytics, mobile, trading, and the customer experience.

To meet the business demands, engineers are embracing modern processes such as Continuous Integration, resulting in faster delivery cycles and getting ideas into production more quickly.

However, the creation and configuration of the development environments have lagged behind these innovations.

The problem with traditional dev workspaces

These workspaces are typically set up and configured on developers' laptops, cloud virtual machines, or virtual desktop infrastructure, resulting in costly inefficiencies for the business.

Coder’s self-hosted software development platform moves developer workstations off of these solutions, driving down costs and inefficiencies, and reducing the risk of stolen intellectual property.

Software complexity increases compute costs

Modern software projects are highly complex, often utilizing microservices and databases and residing in large monorepos. As a result, companies often over-invest in expensive laptop compute, cloud virtual machines, or virtual desktop infrastructure.

The challenge

One of Coder’s customers has a massive monorepo that required their developers to use an expensive 16 CPU 32 GB RAM MacBook Pro to build and run the application. Builds took thirty-five minutes, during which the developer's laptop was rendered useless for any other task. This massive compute power was only needed once or twice a day and most of the laptop’s expensive resources sat idle the rest time as the engineers wrote code and performed other tasks.

The customer explored using public cloud VMs as their development environments, which would have cost over $3,000 per VM per year. The VM approach could reduce their thirty-five-minute build time problem to six minutes but at a steep cost, which like dedicated laptop compute, would only be needed sporadically.

How Coder reduces compute costs

That customer is now using Coder to achieve the same six-minute build time but at a 1/4 the cost of cloud VMs, including the cost of the Coder licenses.

Containerization

Coder achieves this efficiency by running on a resilient shared containerization infrastructure called Kubernetes. Multiple development environments can be packed onto VM nodes, effectively sharing the node’s CPU and memory.

Provisioning rates

Coder allows administrators to define how compute is shared at the organizational group and individual levels. They can also specify over-provisioning ratios that assign minimum CPU and memory per workspace but which allow users to burst to required compute levels if needed during builds and running applications.

Data science groups that need even more compute power can be assigned to a physically separate Kubernetes cluster and namespace that includes powerful GPUs.

Auto-shutdown

To reduce cloud compute costs, Coder workspaces can be set to automatically shut down when idle, destroying the ephemeral development environment while safely preserving the developer’s workspace folder containing checked-out source code and data with a Kubernetes-managed Persistent Volume Claim.

If a developer or data scientist has a long-running task, auto-shutdown behavior can be overwritten at the environment level, ensuring a database, microservice, or analytics job can run uninterrupted.

The high cost of idle time

The challenge

Oil and Gas companies (O&G) track a critical metric called nonproductive time or NPT. Consider an off-shore platform pumping precious raw materials like oil and gas from the bottom of the world’s oceans. Supermajor O&G leaders exceed their revenue targets by efficiently and quickly extracting these raw materials. When a critical machine breaks, the materials are not extracted, resulting in NPT, and revenue is lost.

You can apply that same analogy to software development. When developers are installing and configuring development environments rather than writing code and waiting for large build times that render their laptop useless, that is NPT.

A 2,500 developer company can easily incur $9-18M in annual NPT costs assuming a $120,000 developer salary and 2-4 weeks per year spent manually setting and fiddling with development environments on laptops. Some enterprises that Coder has spoken with have shared even longer NPT.

How Coder reduces developer NPT

Current Coder customers including an oil and gas company, an investment bank, a software provider, a global outsourcing firm, and a Big Four consulting firm, use Coder to define development environments as Docker images that are securely deployed to their container registry infrastructure.

Developers log into Coder with a standard web browser on their first day as an employee or on a new development project and choose an environment image that has all the frameworks, languages, and dependencies specific to their project. Coder swiftly creates a Kubernetes pod with an inner container. The developer can open their VS Code or JetBrains IDE (Integrated Development Environment) locally or in a browser, check out a code repository, and begin productively contributing code within minutes.

Nonproductive time virtually disappears, and more importantly, critical software projects that directly impact revenue and profit are delivered faster.

Reducing hardware costs

Some organizations have approached Coder with a strategic vision of replacing expensive, maxed-out developer laptops with basic performant laptops or even Chromebooks, potentially leading to an 80%+ savings in laptop costs.

The challenge

Despite frequently replacing developer machines, organizations are not able to get the performance they need from local machines, incuring additional costs.

How Coder reduces hardware costs

This is possible because Coder delivers the full IDE experience in a browser and all compute operations run in the Coder deployment.

In this era of chip shortages and some hardware manufacturers delivering new laptop chip designs that are not compatible with existing x86 developer tools, Coder is becoming a future-proof option to deliver more compute and therefore developer productivity at a lower price point.

Source code and data on laptops is risky

Source code is the natural resource of innovating with software development.

Source code versions, aptly known as branches in the ubiquitous version control open-source standard called Git, safely reside in remote Git repositories like GitHub, GitLab, Bitbucket, and Azure DevOps on enterprises’ cloud or on-premises infrastructure.

However, when engineers’ development environments are run on local machines, entire project repositories are cloned to developers’ laptops. In this age of growing analytics, data science, and machine learning that require data to train models, sensitive data is also often extracted to developers’ laptops

The challenge

Enterprises typically take precautions to protect this source code with disk encryption and mobile device management software to lock down and monitor laptop activity.

The fact is, though, an enterprise’s entire intellectual property is sitting on an endpoint outside the fortress of the enterprise and susceptible to improper removal. Thumb drives, infiltrating a home network, automatically syncing to cloud storage providers are all vectors for exfiltrating this precious IP, and where it goes from there, no one knows.

The price of a data breach

According to the Ponemon Institute, the average cost of a data breach in 2021 was $3.61M. This figure does not account for the negative impact on the organization's brand nor the potential impact of having their code and data wind up in the offices of competitors and foreign adversaries.

How Coder helps secure your source code and data

With Coder, this poignant risk is eliminated. Repositories are cloned into isolated, secure Kubernetes-managed Persistent Volume Claims residing securely within an enterprise’s managed infrastructure.

Next steps

Most enterprises are far down the path of improving the velocity of “ideas to production” regarding strategic software development initiatives using Continuous Integration and pipelines.

The next frontier for innovation and improvement lies in reimagining how developers onboard, build development environments, get access to required compute, and properly secure an enterprise’s intellectual property.

Coder provides a unique approach to these issues with its platform that can integrate with all of the enterprise’s existing Git, cloud, on-premises, air-gapped, and IDE infrastructure for the least impact to developer flow and adoption.

If you would like a demonstration, tell us about your use case, or sign up for a complimentary self-hosted trial of Coder that can be installed on Kubernetes or Docker.

If you liked this, share on Twitter, Hacker News, LinkedIn or Reddit

RELATED ARTICLES

Excited about Coder? Try it now
Get a demo
ALPHA

Install Coder on Docker

  • Be up and running in minutes
  • Free 30-day trial for 5 users
Learn more about running Coder on Docker or contact us
$ docker run --rm -it -p 7080:7080 \ -v /var/run/docker.sock:/var/run/docker.sock \ -v ~/.coder:/var/run/coder \ codercom/coder:1.30.0

Our commitment to open source

Learn more about our projects and our commitment to the open source community.

code-server: the heart of Coder

code-server is the primary open source project we maintain. It allows developers to use a browser to access remote dev environments running VS Code. Coder builds upon the success of code-server and adds features designed for enterprise teams including support for additional IDEs and advanced security features.