Scale Microservice Developer Environments in Kubernetes
/ a k8s native platform made for developers
Before Signadot, previewing features took 30 to 40 minutes, creating a significant bottleneck in our development. Now, that time is under two minutes—a 15x productivity boost. Signadot is now essential to our streamlined process, saving hundreds of engineering hours, enabling more testing iterations, and elevating code quality.
With Neon's rapid growth, maintaining key DORA metrics and production SLO became a challenge. Signadot's Sandboxes solution transformed our CI/CD pipelines, reducing costs and enabling effective testing. Their plugins helped us manage complex dependencies and partners without staging environments. Now, we can confidently make risky changes, fostering a culture of performance-oriented engineering.
Signadot helps ShareChat to set up an extremely efficient rollout of an end-to-end integration test environment and allows developers to test for backward compatibility without having to worry about maintaining various versions of their services.
I want staging to be in a state where I'm able to push to production any day I want. The quality should be as good as prod so that I don't have to do more work after merging. This is exactly what Signadot allows us to do today. We're now running tests before merging, which means cleaner code and fewer rollbacks.
Without Signadot, developers were experiencing frequent rollbacks of code due to issues discovered late in the staging environment. Now, the developers have much more confidence in what they are deploying, resulting in fewer breaks on production.
Our vision when we started talking to Signadot was that we wanted to have the same stack for testing and production. Signadot has allowed us to do just that, bringing down the lead time for our developers to test changes from 30 minutes to literally 60 seconds.
/ how sandboxes work
Sandboxes bundle services and resources that operate either locally or within Kubernetes. When using Sandboxes, you can develop and test your microservices against the most recent dependencies that exist in a remote Kubernetes environment, otherwise known as the baseline. This baseline environment is constantly synchronized with the main branch of all services, ensuring that your testing is always valid.
When using Sandboxes, all requests are tagged with tenancy context. This enables a multi-tenancy model based on request isolation, rather than infrastructure isolation. Furthermore, you utilize a flexible Resource Plugin framework to create temporary stateful resources, such as databases, for data isolation.
/ customer highlight
DoorDash's Leap in Developer Productivity with Signadot
Discover how DoorDash utilized Signadot to supercharge their development workflow, transforming testing from a time-consuming bottleneck into an efficient, cost-effective solution. Developers at DoorDash now safely test changes in the production environment before merging code.
/ why sandboxes?
Fast and High Fidelity Feedback
Sandboxes multiplex developer environments in existing Kubernetes clusters set up with high-quality data, real services, and third-party integrations. With Sandboxes, you can tap into high fidelity environments early in the development lifecycle, significantly accelerating your feedback cycles.
Scale Cost Effectively
When compared to conventional approaches of cloning environments, Sandboxes deliver substantial cost savings - typically 10 to 100 times less. This efficiency is achieved as the baseline environment is utilized across hundreds of Sandboxes. By assigning tenancy context to requests, you achieve multi-tenancy through request isolation, circumventing the need for infrastructure duplication. Additionally, maintaining just the baseline environment up-to-date further amplifies operational cost-effectiveness.
Test with Latest Dependencies
Your baseline environment consistently receives updates via dedicated CI/CD pipelines for each microservice. This ensures you're always testing against the most recent versions of all dependencies, validating your outcomes. The Signadot operator facilitates this process by seamlessly synchronizing your Sandboxes with baseline environment updates.
/ use cases
Local Developer Environments
Integrate Signadot into your CI pipeline to automatically create Sandboxes for each pull request with its own shareable preview URL.
Run services locally and engage in request flows that bridge your local services with those operating in a remote Kubernetes cluster.
Combine multiple sandboxes using RouteGroups to test product features that span multiple microservices.
/ built on open standards
Sandboxes allow you to harness Service Mesh and Proxies such as Istio, Linkerd, and Envoy for dynamic request routing and provide isolation based on tenancy context. In cases where a Service Mesh isn't available, Signadot sidecars offer the same capabilities.
Sandboxes ensure multi-tenancy by assigning tenancy context tags to requests and utilizing this context for isolation. Native support for context propagation via standards like OpenTelemetry, Jaeger, and Datadog is integrated within Sandboxes.