logo

Telepresence Case Studies: From First Experience to Fast Feedback at Scale

2023-04-20

Authors:   Edidiong Asikpo


Summary

The use of Telepresence, an open source CNCF tool, has improved the developer experience, accelerated the inner dev loop, and reduced staging environment compute costs for Cloudnative companies. Three case studies are presented to illustrate this point.
  • Building and testing microservice-based applications becomes difficult when running everything locally is no longer feasible due to resource requirements.
  • Moving to the cloud for testing is a solution, but synchronizing local changes with remote Kubernetes environments can be challenging.
  • Telepresence improves the developer experience by allowing developers to test their code changes against external dependencies without the fear of things going wrong or not matching up with production.
  • Telepresence eliminates the need to constantly build, deploy, and test images, which speeds up the inner dev loop.
  • The use of Telepresence has positively impacted the development workflow of companies such as Culture Code, Voice Flow, and a fintech company in the APAC region.
The development team at Culture Code struggled with inconsistency between their dev environment and production environment. They would make a code change, test it with their setup, and assume everything would work as expected. However, when they pushed to production, they realized there was missing configuration that wasn't in their setup, which impacted their end users. Telepresence allowed them to have a development environment that resembled production very well in AWS, which enabled them to develop against the same database running in the exact same configuration. This eliminated the need to constantly build, deploy, and test images, which sped up their inner dev loop.

Abstract

Building and testing your microservice-based application becomes difficult when you can no longer run everything locally due to resource requirements. Moving to the cloud for testing is a no-brainer, but how do you synchronize your local changes against your remote Kubernetes environment? Following the usual container build-push-test cycle makes your inner development loop slower because you’d have to wait for minutes, sometimes hours, before seeing the impact of your code changes, and this dramatically reduces the number of iterations you can perform, the features you can ship to your end-users and negatively impacts the developer experience. Using three companies as a case study, this talk highlights how adopting the open source CNCF tool Telepresence improved their developer experience, accelerated their inner dev loop, and reduced staging environment compute costs. An explanation of what Telepresence is and a demo of how to implement it will also be covered in this talk.

Materials: