Remote Development Environments
Cloud-based development environments are a common starting point for teams looking to build out their Internal Developer Platform (IDP).
Dev environments can be used to provide a consistent, self-service environment for developers to build and test their applications and can greatly reduce the time it takes to onboard new developers.
Benefits
Standarize Developer Configurations
An common issue for many development teams is configuration drift, whereby slowly over time developers on a team start customizing their configurations, often as workarounds for various issues they encounter. This practice often leads to two problems:
- Difficult to onboard new developers - A lot of time can be wasted debugging issues that are caused by configuration drift.
- "Works on my machine" - It might work in the developer's local environment but not when it's deployed to Staging or Production.
To solve configuration drift, Uffizzi allows teams to standardize on Kubernetes for their application configuration.
For example, teams can take their Staging or Production configurations written as Helm Charts or Kustomizations and use them in Uffizzi dev clusters. This means teams standardize on a single source of truth for your application's configuration.
Access to More Compute Power
By using a cloud-based development environment, you can leverage the extra power of remote cloud servers to provide more compute resources to your developers. Uffizzi dev environments are particularly useful for microservices architectures or resource-intensive applications, where the alternative is running a subset of your application services, connecting to externally running services, or emulating services locally.