👋 Hi, this is Gergely with a bonus, free issue of the Pragmatic Engineer Newsletter. In every issue, I cover topics related to Big Tech and startups through the lens of engineering managers and senior engineers. In this article, we cover a fresh industry trends: Cloud Developent Environments — which is analysis full subscribers have received 3 weeks ago. To stay up to date with trends across the tech industry, subscribe here.
There is a quiet revolution unfolding at tech companies: cloud development environments (CDEs). The past three months, I shared insights with full subscribers:
- Cloud development environments at tech companies (27 Jun 2023)
- Why are CDEs spiking in popularity, now? (5 Sep 2023)
- The Cloud development environment vendor landscape (26 Sep 2023)
The trend is so fresh that even Gartner — an authority in detecting trends — has only mentioned CDEs for the first time two months after The Pragmatic Engineer analyzed this category. In today’s issue, we cover why this trend is popular around now, and what are startups to watch for in this space.
Why are CDEs gaining popularity, now?
The concept of remote development environments stretches back to the dawn of computer programming. In the 1960s, expensive central computers were shared by many users, sitting at terminals. Each user had a specific amount of time to use the processor in this setup called “timesharing.”
Cloud development environments are similar to how programmers used a terminal to program a central computer, back then. A big difference is that in the case of old-school timesharing, the goal was to save on infrastructure costs, as the cost of CPU cycles was far higher than programming time. A single mainframe machine cost several times the annual salary of a programmer; the Atlas computer at Manchester University in the UK cost £50M in today’s money, the equivalent of several hundred programmers’ annual salaries. No wonder compute time was so valuable!
Today, it is compute that’s much cheaper than software engineers’ time. In the US, a software engineer working at a Big Tech company is compensated more than 100 times the cost of a high-end laptop, annually.
So why the sudden rise in use of remote environments? I observe several trends which make this shift understandable and sensible:
Here are the reasons:
1. Larger codebases. Every day, there’s more code at a tech company, not less. This means more repositories are needed, which are fast enough to build and work with, but which increase fragmentation. At many large companies, this inevitably leads to consolidating many smaller repositories into fewer, larger ones. Which leads to the next point…
2. Monorepos. These are becoming more popular at large tech companies for a few reasons. The biggest is consistency; with a monorepo, dependencies are clear and API breakages due to outdated dependencies are absent. Also, tasks like integration testing are much easier. However, monorepos result in codebases growing large, so that even checking out the code or updating to the head can be time consuming.
3. Laptop compute power is plateauing. The available compute power of laptops and personal computers no longer increases as it did prior to 2010. Moore’s Law says the number of transistors in an integrated circuit (IC) doubles around every two years. But the most recent 10 years suggest this is no longer the case.
4. The Cloud is spreading and offering more capabilities. Since around 2010, there’s been a boom in Cloud computing. AWS launched in 2006, Azure in 2010, and GCP launched its first region in 2015. Since then, all Cloud providers have expanded their availability, and the price of Cloud compute has dropped due to competition and technological progress.
5. Low-latency networking is cheaper and more common. CDEs only make sense when latency is low. This requires high bandwidth internet connectivity for developers, and remote development environments to be located in close vicinity to servers. High-bandwidth networking is spreading rapidly, including fallback options with mobile 4G and 5G coverage. And with cloud providers launching new data centers, zones and regions, it’s now easier than ever to have cloud environments near to software engineers’ locations.
For example, Uber runs its Devpods out of 5 data centers this way, presumably operated by a provider like Google Cloud. We previously covered Uber's transition from its own data centers to the public cloud.
6. Developer productivity investments. Assuming a team of four software engineers costs $1M/year, would you spend $10K/year to improve the efficiency of that team by 10%? The answer should be a no-brainer ‘yes,’ because the business value generated by a team costing $1M/year should already exceed $1M/year. So if the team gets 10% more efficient, it should generate at least $100K/year extra value.
At companies with large codebases, CDEs are a pragmatic way to increase the productivity of software engineers.
7. Remote work. Covid-19 lockdowns and the rise of remote working have played a role in boosting CDEs. With remote work, engineers spend more time on video calls, which utilizes laptop resources like CPU, memory, and more. Executing a build is much slower while on a call. Plus, a CPU and memory-intensive build can impact the quality of the video call, and make the local environment much less responsive.
LinkedIn gathered data showing how much slower video calls make common developer operations. It found video calls added a 2-4x increase in latency to a developer laptop.
8. Concern about code leaks. One downside of remote work – and hiring people whom you’ve not met in person – is that trust problems tend to arise more easily. When working from the office, it’s easy to verify that the same person you hired is the one doing the work, remotely. With full-remote work, the risk is higher that someone other than the employee accesses the codebase.
CDEs can offer an additional layer of protection to reduce the risk of source code leaking outside of the network. At the very least, far more logging is in place, and it can be easier to detect when larger parts of the codebase are accessed and copied across the network.
9. Open source VS Code Server. In 2021, Microsoft open sourced VS Code Server. This is the server code that powers VS Code remote development, and GitHub Codespaces. Thanks to this, the barrier to entry was dramatically reduced for anyone wanting to build their own cloud development environment which supports VS Code. This applies to startups offering CDE solutions, as well as companies building such a solution in house.
None of these trends alone can explain the spike in popularity of cloud development environments, but their combined effect in recent years does provide a plausible explanation. It’s also possible to posit that the “spark” which ignited this confluence of factors was the Covid-19 pandemic of 2020-21, and the accompanying rise of remote work.
CDE vendors: a definite trend
With more than 20 players in this space, let’s begin with a timeline of when the products launched. The segment really took off around 2018, although Cloud9 – which AWS acquired in 2017 – was founded in 2010.
Startups that offer remote development solutions include:
- Gitpod: feels like it might have the most momentum in the CDE space – at least right now
- Stackblitz: the only vendor that offers environments which boot in milliseconds, and the only solution that mount a micro-operating system written in WebAssembly inside the browser tab that boots in <200ms!
- DevZero: founded in 2021 by two engineers who’d worked at Uber, and the solution brings a lot of inspiration from Devpods at Uber, and the developer experience at the company
- Crafting: probably the most advanced solution of all; one that extends Kubernetes under the hood, and aims to be far more than a CDE
- Replit: probably the most popular collaborative coding environment for personal use.
- Codesandbox started out as a web IDE in around 2018, but expanded since.
- Coder: one of the few vendors that offers only a self-hosted CDE platform.
- Codeanywhere: one of the earliest cloud IDEs, founded in 2013
- Daytona: founded in 2023, and its founders are the cofounders of Codeanywhere.
- Cloudomation: almost exclusively targets Germany
- Hocus: started in November 2022, still in the building phase
- Strong Network: approaches CDEs from the cybersecurity and compliance perspective
We go into more detail for each of the above solutions — as well as products from more established companies — in the article Cloud development environment vendors.
There’s an absolute flurry of startups which provide tools for remote development. Between 2010-2020, we saw a couple of startups launch in competition with each other, but it’s since 2020 that there’s been a lot more activity, and new product launches seem to be speeding up. Here is a summary of all the vendors and products mentioned in this article:
It feels to me like we could be nearing an inflection point: after which more developers will work with remote environments at medium and large companies, than those that use only their local machine to develop. I am reinforced by this feeling as I talked to vendors who all have a pretty clear vision on what they want to build: but their products are still being built out, and I had trouble keeping track with the various innovative approaches they are all trying!
Will most developers at large and mid-sized tech companies build software on a remote machine in 2-3 years time? And will they do this in a way that’s indistinguishable from doing it locally? It’s hard to be sure, but I believe this is the direction we are headed in.
These were two out of the close to dozen topics we covered on this fresh trend. See these articles for more details:
- Virtual desktops vs CDEs
- The evolution of the CDE space since 2016
- The biggest challenges of the CDE space
- The future of software development in local environments
- The idea behind CDEs
- Upsides of CDEs
- The downsides of CDEs
- CDE startups and open-source solutions
- Big Tech and established companies
Featured Pragmatic Engineer Jobs
- Senior Backend Engineer - C#/.NET at Straddle. £90-125K + founding team equity. Remote (UK).
- Senior Solutions Engineer at Tint. $130-195K. Remote (US).
- Product Engineer at Causal. Remote (US, UK). The team tackles interesting challenges like simplifying React state management.
- Backend Engineer - Data at Causal. Remote (US, UK).
- Senior Backend Engineer at Polarsteps. Amsterdam (Netherlands).
- Senior Data Engineer at GetHarley. £70-100K. Remote (UK) or Hybrid.
- Senior Frontend Engineer at GetHarley. £70-100K. Remote (UK) or Hybrid.
- Senior Software Engineer at Tint. $140-195K. Remote (US).
- Senior Product Engineer, Frontend at Attio. £90-125K + equity. Remote (Europe).
- Senior Data Engineer (RoR) at Terminal49. $140-200K. Berkeley, California.
- Engineering Manager - Security Product team at CAST AI. Remote (Lithuania).
- Software Engineer at Freshpaint. $130-210K + equity. Remote (US).
The above jobs score at least 10/12 on The Pragmatic Engineer Test. Browse more senior engineer and engineering leadership roles with great engineering cultures, or add your own on The Pragmatic Engineer Job board and apply to join The Pragmatic Engineer Talent Collective.
Want to get interesting opportunities from vetted tech companies? Sign up to The Pragmatic Engineer Talent Collective and get sent great opportunities - similar to the ones below without any obligation. You can be public or anonymous, and I’ll be curating the list of companies and people.
Are you hiring senior+ engineers or engineering managers? Apply to join The Pragmatic Engineer Talent Collective to contact world-class senior and above engineers and engineering managers/directors. Get vetted drops twice a month, from software engineers - full-stack, backend, mobile, frontend, data, ML - and managers currently working at Big Tech, high-growth startups, and places with strong engineering cultures. Apply here.