Exploring Developer Sandboxes
Developer Sandboxes enable delegated developers and admins to request, access, and manage individual sandbox environments on top of the same underlying development instance.
- Developer Sandboxes are isolated environments for parallel building and testing.
- Each sandbox is provisioned on demand and fully isolated from others.
- Every sandbox contains the full metadata of the base instance.
- Sandboxes can be assigned to specific stories, developers, test plans, or custom criteria.
Developer Sandboxes overview
Developer Sandboxes aim to provide lower-cost developer isolation and parallelism for customer development environments and instances. Developer Sandboxes are workflow-agnostic and are broadly applicable across workflows for both smaller and larger companies.
Organizations can face challenges when addressing urgent defects and critical feature enhancements simultaneously in applications. Traditional shared development environments introduce risks such as code conflicts, configuration overlaps, and deployment delays, making it difficult to manage parallel workstreams efficiently. Development teams struggle to deliver urgent fixes and new features concurrently without disrupting each others' progress. The absence of isolated, independent development environments slows down delivery, increases rework, and hampers overall agility.
- Isolation: Each developer works in an independent sandbox, ensuring changes do not affect other team members’ work.
- Faster delivery: Teams can work concurrently, reducing development cycle time and enabling faster turnaround for urgent fixes and enhancements.
- Safe testing: Developers can test configurations, workflows, and integrations within their sandbox without risking system stability.
- On-demand provisioning: Admins and developers can quickly provision sandboxes for specific tasks or experiments without waiting for shared resources.
The Sandbox Management home dashboard displays the total, available, and allocated sandboxes in your instance. The dashboard also displays information relevant to each sandbox, including, the status, data utilization, owner, last accessed date, and when the sandbox was allocated.
Check your entitlements to determine whether you have access to Developer Sandboxes. For more information, see Developer Sandboxes entitlements.
Upgrading an instance automatically backs up update sets to the base instance and recreates the sandboxes on that instance. After a clone, sandboxes on an instance are automatically re-created with the same name, but without the previous work. For details, see Cloning and upgrading considerations for Developer Sandboxes.
Integrate sandboxes with source control
Developer Sandboxes provide an isolated environment that integrates with source control, such as Git. Using merge tools helps eliminate conflicts and enables parallel development. For more information, see Source control and Developer Sandboxes.
Developer Sandboxes users
| User | Description |
|---|---|
| Delegated developers | Delegated developers can request, allocate, or retire sandboxes. |
| Admins | Admins can allocate or retire sandboxes. |
| Sandbox managers | Sandbox managers can administer the lifecycle of all sandboxes without full admin privileges. |
| Sandbox users | Sandbox users can request and view Developer Sandboxes. |
Developer Sandboxes workflow
The delegated developer or admin of a sandbox would procure a sandbox, make changes or experiment with development, test their changes, push their changes, and wait for an admin to clone the instance.
- A Developer Sandboxes user (either admin or dev) allocates a sandbox to start story work.
- The developer makes development changes and tests them out in their fully isolated sandbox.주:The work done in one sandbox doesn't appear in other sandboxes or other instances.
- Once the developer is content with their work and ready to promote their changes to a shared, integrated environment, they push their changes to the desired upstream shared instance. For example, a
test/QAinstance. There are two ways to promote changes:- Using source control (preferable) or exports through Git
- Using update sets and imports (supported, but not as easy to merge changes)
- Further testing can be done on the shared instance.
- The admin of a sandbox instance clones changes from the
test/QAinstance to make those changes the default for all future allocated sandboxes.
Developer Sandboxes benefits
| Benefit | Feature | Users |
|---|---|---|
| Enable parallel development | Enable multiple developers the ability to work on different stories or features at the same time using the same starting source code, all while keeping the non-production baseline instance clean. |
|
| Reduce merge conflicts with source control | Enables integration with source control for more successful co-development. For more information, see Source control and Developer Sandboxes. | Delegated developers |
| Reuse sandbox templates | Enables the optional setup of a repository configuration. You can create a template once, and reuse any existing templates when creating sandboxes. For more information, see Create a sandbox template. |
|
| Sandbox alias | Enables you to easily reference the sandbox you want to allocate. |
|
| Allocate to | Enables you to allocate a sandbox to yourself, or for an admin to allocate a sandbox to someone else. |
|
What to explore next
To learn more about installing and configuring Developer Sandboxes, refer to Installing Developer Sandboxes.