<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0"><channel><title>Pulumi Blog: Case studies</title><link>https://www.pulumi.com/blog/tag/case-studies/</link><description>Pulumi blog posts: Case studies.</description><language>en-us</language><pubDate>Wed, 25 Sep 2024 07:32:40 +0000</pubDate><item><title>AWS CDK vs Pulumi: Why SST Chose Pulumi</title><link>https://www.pulumi.com/blog/aws-cdk-vs-pulumi-why-sst-switched/</link><pubDate>Wed, 25 Sep 2024 07:32:40 +0000</pubDate><guid>https://www.pulumi.com/blog/aws-cdk-vs-pulumi-why-sst-switched/</guid><description>
&lt;img src="https://www.pulumi.com/images/generated/blog/aws-cdk-vs-pulumi-why-sst-switched/index.png" /&gt;
&lt;p&gt;Cloud computing tools evolve, and so must the frameworks developers rely on. For SST (Serverless Stack), AWS CDK was a great starting point—but it had limitations.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;CDK tied infrastructure to AWS.&lt;/li&gt;
&lt;li&gt;Debugging was frustrating due to CloudFormation templates.&lt;/li&gt;
&lt;li&gt;Multi-cloud was nearly impossible.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;The solution? Pulumi. In this post, we’ll explore why SST moved to Pulumi, what challenges they overcame, and what this means for developers building modern cloud applications.&lt;/p&gt;
&lt;p&gt;TL;DR: Pulumi lets SST offer a faster, more flexible, and provider-agnostic infrastructure experience.&lt;/p&gt;
&lt;h2 id="in-this-article"&gt;In This Article:&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://www.pulumi.com/blog/from-cdk-pulumi-evolution-of-sst/#the-beginnings-of-sst"&gt;The Beginnings of SST&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.pulumi.com/blog/from-cdk-pulumi-evolution-of-sst/#cdk-and-cloudformation-limitations"&gt;CDK and CloudFormation Limitations&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.pulumi.com/blog/from-cdk-pulumi-evolution-of-sst/#a-provider-agnostic-solution-discovering-pulumi"&gt;A Provider-agnostic Solution: Discovering Pulumi&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.pulumi.com/blog/from-cdk-pulumi-evolution-of-sst/#transitioning-to-pulumi"&gt;Transitioning to Pulumi&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.pulumi.com/blog/from-cdk-pulumi-evolution-of-sst/#the-benefits-of-pulumi"&gt;The Benefits of Pulumi&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.pulumi.com/blog/from-cdk-pulumi-evolution-of-sst/#the-future-of-sst-with-pulumi"&gt;The Future of SST with Pulumi&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="the-beginnings-of-sst"&gt;The Beginnings of SST&lt;/h2&gt;
&lt;p&gt;Application developers have witnessed the rapid evolution of cloud computing and the growing need for developers to have direct access to powerful cloud resources. However, the traditional tools and approaches to Infrastructure as Code (IaC) have often been geared more toward DevOps teams, leaving application developers feeling disconnected from the infrastructure side of their projects.&lt;/p&gt;
&lt;p&gt;This was the driving force behind the creation of &lt;a href="https://sst.dev/"&gt;SST (Serverless Stack)&lt;/a&gt;, a framework that aims to bridge the gap between application developers and infrastructure management. In the early days, SST was built on top of AWS&amp;rsquo;s Cloud Development Kit (CDK), which allowed developers to define their infrastructure using TypeScript or Python. While this was a step in the right direction, they soon realized that the limitations of CDK and the underlying AWS CloudFormation were holding them back from truly empowering application developers.&lt;/p&gt;
&lt;h2 id="cdk-and-cloudformation-limitations"&gt;CDK and CloudFormation Limitations&lt;/h2&gt;
&lt;div style="position: relative; padding-bottom: 56.25%; height: 0; overflow: hidden;"&gt;
&lt;iframe allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share; fullscreen" loading="eager" referrerpolicy="strict-origin-when-cross-origin" src="https://www.youtube.com/embed/LXxJ9XMXC6o?rel=0?autoplay=0&amp;amp;controls=1&amp;amp;end=0&amp;amp;loop=0&amp;amp;mute=0&amp;amp;start=0" style="position: absolute; top: 0; left: 0; width: 100%; height: 100%; border:0;" title="YouTube video"&gt;&lt;/iframe&gt;
&lt;/div&gt;
&lt;p&gt;As the SST&amp;rsquo;s team continued to work with CDK and CloudFormation, they encountered several challenges that led them to reevaluate their approach. One key issue was the disconnect between application developers&amp;rsquo; thinking and working and traditional IaC tools&amp;rsquo; operating methods.&lt;/p&gt;
&lt;p&gt;With CDK and &lt;a href="https://www.pulumi.com/docs/iac/comparisons/cloudformation/#what-is-aws-cloudformation"&gt;CloudFormation&lt;/a&gt;, the infrastructure code is essentially a code generator, producing an intermediary format (such as YAML or JSON) that is then executed to deploy the resources. This means that the actual code you write as a developer is not the same as the code running during the deployment process. This can lead to several problems, such as difficulty debugging, lack of visibility into the deployment process, and challenges in extending or customizing the deployment workflow.&lt;/p&gt;
&lt;p&gt;Additionally, as the SST&amp;rsquo;s team expanded its focus beyond the AWS ecosystem and started exploring other cloud providers and even on-premises infrastructure, it found that the &lt;a href="https://www.pulumi.com/docs/iac/comparisons/aws-cdk/#what-is-aws-cdk"&gt;AWS-centric nature of CDK&lt;/a&gt; and CloudFormation was becoming a limitation. It needed a more flexible and provider-agnostic solution that would allow it to deploy and manage infrastructure across a wide range of platforms.&lt;/p&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Feature&lt;/th&gt;
&lt;th&gt;AWS CDK&lt;/th&gt;
&lt;th&gt;Pulumi&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Multi-Cloud Support&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;❌ AWS-Only&lt;/td&gt;
&lt;td&gt;✅ AWS, Azure, GCP, On-Prem&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Debugging&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;❌ Hard due to CloudFormation&lt;/td&gt;
&lt;td&gt;✅ Real-time debugging&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Language Support&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;⚠️ TypeScript, Python&lt;/td&gt;
&lt;td&gt;✅ Any programming language&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Deployment Speed&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;❌ Slower due to CloudFormation&lt;/td&gt;
&lt;td&gt;✅ Faster direct execution&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Visibility&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;❌ Hard to trace errors&lt;/td&gt;
&lt;td&gt;✅ Clear deployment state&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Extensibility&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;⚠️ Limited to AWS ecosystem&lt;/td&gt;
&lt;td&gt;✅ Custom providers &amp;amp; workflows&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;State Management&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;❌ CloudFormation state file&lt;/td&gt;
&lt;td&gt;✅ Pulumi-managed state&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Secrets Management&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;❌ AWS Secrets Manager only&lt;/td&gt;
&lt;td&gt;✅ Cross-cloud secret support&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;h2 id="a-provider-agnostic-solution-discovering-pulumi"&gt;A Provider-agnostic Solution: Discovering Pulumi&lt;/h2&gt;
&lt;p&gt;It was during this time that the SST team discovered Pulumi, a modern IaC platform that takes a fundamentally different approach to infrastructure management. Instead of generating an intermediary format, Pulumi treats the infrastructure code as a first-class program executed directly during deployment.&lt;/p&gt;
&lt;p&gt;This paradigm shift had several important implications for SST and its users:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Visibility and Extensibility&lt;/strong&gt;: With Pulumi, the infrastructure code is the same code that is running during deployment, which means there is much greater visibility into the deployment process and the ability to extend or customize it as needed.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Multi-Cloud Capabilities&lt;/strong&gt;: Pulumi&amp;rsquo;s provider-agnostic approach allows SST&amp;rsquo;s team to easily work with a wide range of cloud and on-premises platforms, giving their users the flexibility to deploy their infrastructure wherever it makes the most sense for their application.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Simplified Mental Model&lt;/strong&gt;: For application developers, the Pulumi model of &amp;ldquo;your code is the deployment&amp;rdquo; aligns much more closely with their existing mental models and workflows, making it easier for them to adopt and work with IaC tools.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="transitioning-to-pulumi"&gt;Transitioning to Pulumi&lt;/h2&gt;
&lt;p&gt;Transitioning SST from CDK to Pulumi was not a trivial undertaking. Still, they knew it was a necessary step to truly fulfill their mission of empowering application developers with powerful infrastructure management capabilities.&lt;/p&gt;
&lt;p&gt;One key challenge they faced was re-implementing the higher-level components and abstractions they had built on top of CDK. These components were designed to simplify the infrastructure management experience for their users, and they wanted to ensure that they could provide a similar level of abstraction and ease of use with Pulumi.&lt;/p&gt;
&lt;p&gt;Additionally, they had to carefully consider how to handle the various edge cases and complex deployment scenarios their users encountered with the CDK-based version of SST. They wanted to ensure that the Pulumi-based version would not only match the functionality of the previous version but also improve upon it and address some of the limitations they had encountered.&lt;/p&gt;
&lt;h2 id="the-benefits-of-pulumi"&gt;The Benefits of Pulumi&lt;/h2&gt;
&lt;p&gt;As they worked through the transition to Pulumi, they realized the significant benefits that Pulumi offered to both the SST team as the framework developers and the users.&lt;/p&gt;
&lt;p&gt;&lt;img src="sst-with-pulumi-infrastructure-as-code-deployments.png" alt="A quote from the Founding Engineer at SST: &amp;ldquo;With Pulumi, the deployment process feels like a natural extension of writing code - it&amp;rsquo;s intuitive and powerful and capable of advanced things that traditional IaC tools can&amp;rsquo;t handle.&amp;rdquo;"&gt;&lt;/p&gt;
&lt;h3 id="improved-visibility-and-debugging"&gt;Improved Visibility and Debugging&lt;/h3&gt;
&lt;p&gt;One of Pulumi&amp;rsquo;s most immediate and tangible benefits was the &lt;a href="https://www.pulumi.com/product/pulumi-insights/"&gt;improved visibility and debugging capabilities&lt;/a&gt; it provided. With the infrastructure code being the same as the deployment code, they could easily trace issues back to the source and understand exactly what was happening during the deployment process.&lt;/p&gt;
&lt;p&gt;This starkly contrasted the CDK/CloudFormation approach, where the intermediary format (CloudFormation templates) often obscured the underlying logic and made it much more difficult to diagnose and resolve problems.&lt;/p&gt;
&lt;h3 id="extensibility-and-customization"&gt;Extensibility and Customization&lt;/h3&gt;
&lt;p&gt;Pulumi&amp;rsquo;s design also allowed the SST team to easily extend and customize the deployment process to meet the specific needs of their users. They could leverage Pulumi&amp;rsquo;s built-in extensibility features, such as custom providers and dynamic components, to integrate with a wide range of cloud and on-premises services and implement complex deployment workflows tailored to our users&amp;rsquo; requirements.&lt;/p&gt;
&lt;p&gt;This level of customization was much more challenging with the CDK/CloudFormation approach, where they often had to resort to hacky workarounds or custom Lambda functions to achieve the desired functionality.&lt;/p&gt;
&lt;h3 id="multi-cloud-capabilities"&gt;Multi-Cloud Capabilities&lt;/h3&gt;
&lt;p&gt;As mentioned earlier, one key driver for their transition to Pulumi was the need to support a wider range of cloud and on-premises platforms. With Pulumi&amp;rsquo;s provider-agnostic approach, the SST team was able to easily add support for new providers, allowing their users to deploy and manage infrastructure across a diverse set of environments.&lt;/p&gt;
&lt;p&gt;This flexibility has been particularly valuable for their users, who may have workloads or requirements that span multiple cloud providers or even on-premises infrastructure. With SST built on Pulumi, they can now manage all of their infrastructure through a single, consistent interface without having to juggle multiple tools or approaches.&lt;/p&gt;
&lt;h3 id="simplified-mental-model"&gt;Simplified Mental Model&lt;/h3&gt;
&lt;p&gt;One of Pulumi&amp;rsquo;s most significant benefits for SST users is the simplified mental model it provides. By treating the infrastructure code as a first-class program, Pulumi aligns much more closely with how application developers think and work.&lt;/p&gt;
&lt;p&gt;Instead of having to navigate the complexities of intermediary formats, deployment pipelines, and the separation between infrastructure code and deployment code, SST users can now focus on writing their infrastructure logic in the same programming languages they use for their application code. This makes it much easier for them to understand, maintain, and extend their infrastructure as their needs evolve.&lt;/p&gt;
&lt;div class="rounded-lg bg-violet-50 p-6 my-8"&gt;
&lt;p class="heading-4 m-0 mb-3 flex items-center gap-1.5"&gt;Build across any cloud with Pulumi&lt;/p&gt;
&lt;div class="body-base m-0 text-gray-950"&gt;Define your infrastructure in TypeScript, Python, Go, or C#, and deploy it across AWS, Azure, Google Cloud, and on-premises environments from one consistent workflow.&lt;/div&gt;
&lt;a href="https://app.pulumi.com/signup" data-track="blog-body-cta" class="btn btn-primary mt-4"&gt;
Get started
&lt;svg xmlns="http://www.w3.org/2000/svg" class="ph-icon ph-icon--regular size-4" fill="currentColor" aria-hidden="true" focusable="false"&gt;&lt;use href="https://www.pulumi.com/icons/sprite.70121449e0dde6f8c01ff68423fffaa0336ecc73c7bbc87506404126694ca58c.svg#p-arrow-right-regular"/&gt;&lt;/svg&gt;
&lt;/a&gt;
&lt;/div&gt;
&lt;h2 id="the-future-of-sst-with-pulumi"&gt;The Future of SST with Pulumi&lt;/h2&gt;
&lt;p&gt;With Pulumi&amp;rsquo;s foundation in place, they can now focus on further enhancing the developer experience and expanding the capabilities of their framework. Some of the key areas they are exploring include:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Deeper Integration with Application Frameworks&lt;/strong&gt;: By leveraging Pulumi&amp;rsquo;s flexibility, they can create even tighter integrations between SST and the application frameworks and libraries that their users rely on, making managing infrastructure seamless alongside their application code.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Expanded Provider Support&lt;/strong&gt;: the SST team will continue to add support for a wide range of cloud and on-premises providers, ensuring that their users can deploy and manage their infrastructure wherever it makes the most sense for their needs.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Improved Deployment Workflows&lt;/strong&gt;: Building on Pulumi&amp;rsquo;s extensibility, they can create &lt;a href="https://www.pulumi.com/docs/pulumi-cloud/deployments/"&gt;more advanced deployment workflows&lt;/a&gt; that address the specific needs of application developers, such as faster deployment times, better rollback capabilities, and more granular control over the deployment process.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Enhanced Observability and Monitoring&lt;/strong&gt;: By treating the infrastructure code as a first-class program, they can provide their users with &lt;a href="https://www.pulumi.com/product/pulumi-insights/"&gt;better visibility&lt;/a&gt; into the deployment process and more robust monitoring and observability capabilities, helping them to identify and resolve issues quickly.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;As the SST team continues to evolve with Pulumi at its core, they aim to deliver an even more powerful and user-friendly infrastructure management experience for developers. This will empower teams to focus on building great applications while effortlessly managing the underlying infrastructure.&lt;/p&gt;
&lt;h2 id="conclusion"&gt;Conclusion&lt;/h2&gt;
&lt;p&gt;If you&amp;rsquo;re interested in exploring Pulumi further, here are several ways to get involved:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Discover how Pulumi Crosswalk for AWS simplifies “day one” tasks in our &lt;a href="https://www.pulumi.com/docs/iac/clouds/aws/guides/"&gt;AWS guide&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Watch our on-demand workshop &lt;a href="https://www.pulumi.com/resources/getting-started-with-iac-pulumi-aws/"&gt;Getting Stated with Infrastructure as Code on AWS&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Register for one of our upcoming &lt;a href="https://www.pulumi.com/resources/#upcoming"&gt;Platform Engineering or DevOps workshops&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;But most importantly, &lt;a href="https://app.pulumi.com/signup"&gt;try Pulumi&lt;/a&gt; today!&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;h2 id="frequently-asked-questions"&gt;Frequently Asked Questions&lt;/h2&gt;
&lt;h3 id="what-is-sst"&gt;What is SST?&lt;/h3&gt;
&lt;p&gt;SST is a framework that makes building modern full-stack applications on your infrastructure easy.&lt;/p&gt;
&lt;h3 id="what-is-ssts-ion"&gt;What is SST&amp;rsquo;s Ion?&lt;/h3&gt;
&lt;p&gt;Ion is the code name for a new engine for deploying SST applications. The constructs (or components) are deployed using Pulumi instead of CDK and CloudFormation (CFN). Once Ion is stable, it will be released as SST v3.&lt;/p&gt;
&lt;h3 id="does-sst-use-mostly-terraform-or-pulumi"&gt;Does SST use mostly Terraform or Pulumi?&lt;/h3&gt;
&lt;p&gt;SST leverages Pulumi behind the scenes for its providers and deployment engine while also bridging Terraform providers through Pulumi.&lt;/p&gt;
&lt;h3 id="how-does-sst-make-money"&gt;How does SST make money?&lt;/h3&gt;
&lt;p&gt;SST (Serverless Stack) makes money primarily through its managed service, called SST Console. The Console is optional and includes a free tier. In short, SST primarily relies on SaaS (Software as a Service) revenue through its managed platform and potentially supplemental income streams like enterprise services and consulting.&lt;/p&gt;</description><author>Sara Huddleston</author><category>cloudformation</category><category>aws-cdk</category><category>case-studies</category><category>developer-experience</category></item><item><title>How Starburst Data Creates Infrastructure Automation Magic With Code</title><link>https://www.pulumi.com/blog/how-starburst-data-creates-infrastructure-automation-magic-with-code/</link><pubDate>Wed, 23 Aug 2023 00:00:00 +0000</pubDate><guid>https://www.pulumi.com/blog/how-starburst-data-creates-infrastructure-automation-magic-with-code/</guid><description>
&lt;img src="https://www.pulumi.com/images/generated/blog/how-starburst-data-creates-infrastructure-automation-magic-with-code/index.png" /&gt;
&lt;div class="note note-info"&gt;
&lt;div class="icon-and-line"&gt;
&lt;svg xmlns="http://www.w3.org/2000/svg" class="ph-icon ph-icon--fill" fill="currentColor" aria-hidden="true" focusable="false"&gt;&lt;use href="https://www.pulumi.com/icons/sprite.70121449e0dde6f8c01ff68423fffaa0336ecc73c7bbc87506404126694ca58c.svg#p-info-fill"/&gt;&lt;/svg&gt;
&lt;div class="line"&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div class="content"&gt;This blog post summarizes a presentation by Matt Stephenson at &lt;a href="https://www.pulumi.com/pulumi-up/"&gt;PulumiUP 2023&lt;/a&gt;.&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;&lt;a href="https://github.com/mattstep"&gt;Matt Stephenson&lt;/a&gt; is Senior Principal Software Engineer for &lt;a href="https://www.starburst.io"&gt;Starburst Data&lt;/a&gt; and a &lt;a href="https://www.pulumi.com/community/puluminaries/"&gt;Puluminary&lt;/a&gt; member. He’s deeply involved in the &lt;a href="https://www.pulumi.com/what-is/what-is-infrastructure-as-code/"&gt;Infrastructure as Code (IaC)&lt;/a&gt; space, having contributed to Ansible, been a core contributor to Apache jclouds, and has written many Terraform plugins. He leads infrastructure architecture at Starburst and originally introduced Pulumi to the company. Starburst provides a data lake analytics platform that’s powered by Trino - an open-source distributed SQL query engine designed for running fast analytic queries across large datasets in multiple data sources. At Starburst, Matt helped revamp and improve how the company manages its multi-cloud and cloud native infrastructure.&lt;/p&gt;
&lt;p&gt;&lt;div style="position: relative; padding-bottom: 56.25%; height: 0; overflow: hidden;"&gt;
&lt;iframe allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share; fullscreen" loading="eager" referrerpolicy="strict-origin-when-cross-origin" src="https://www.youtube.com/embed/t-oSFZuNqXQ?rel=0?autoplay=0&amp;amp;controls=1&amp;amp;end=0&amp;amp;loop=0&amp;amp;mute=0&amp;amp;start=0" style="position: absolute; top: 0; left: 0; width: 100%; height: 100%; border:0;" title="YouTube video"&gt;&lt;/iframe&gt;
&lt;/div&gt;
Watch Matt Stephenson&amp;rsquo;s full presentation with demos. 8:03 demo of CI/CD. 15:33 demo of infrastructure automation.&lt;/p&gt;
&lt;h2 id="technical-and-business-problems-to-solve"&gt;Technical and Business Problems to Solve&lt;/h2&gt;
&lt;p&gt;Starburst operates a managed Trino service that runs on Kubernetes clusters on multiple clouds. Their Kubernetes clusters needed frequent manual scaling based on workloads. Furthermore, upgrading Trino versions running on the clusters ran the risk of potential service disruptions for customers. The company had been using tools like &lt;a href="https://www.pulumi.com/docs/iac/comparisons/terraform/"&gt;Terraform&lt;/a&gt; for IaC, Argo CD for deploying Helm charts, Maven, Docker containers, and a Slack bot for infrastructure and deployments. Their CI/CD workflow was difficult to maintain because they needed to create wrappers for their previous IaC tooling, making it less approachable in CI/CD environments. The pipeline was tenuously bound together using GitHub Actions and a Slack bot, requiring specialized GHA runners, leading to a messy architecture.&lt;/p&gt;
&lt;h2 id="why-starburst-chose-pulumi"&gt;Why Starburst Chose Pulumi&lt;/h2&gt;
&lt;p&gt;Recognizing opportunities for improvement, Matt brought in Pulumi and its &lt;a href="https://www.pulumi.com/automation"&gt;Automation API&lt;/a&gt;. This unified Starburst&amp;rsquo;s software development and infrastructure management practices, especially when deploying and managing Trino clusters on &lt;a href="https://www.pulumi.com/kubernetes"&gt;Kubernetes&lt;/a&gt;. The top two reasons Matt chose Pulumi were:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Support for programming languages:&lt;/strong&gt; Pulumi supports the main languages used by Starburst&amp;rsquo;s developers, Java and TypeScript. This enables all engineers to write infrastructure code and promotes a cohesive application and infrastructure codebase.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Pulumi Automation API:&lt;/strong&gt; Automation API is a programmatic interface for the Pulumi CLI and Pulumi IaC engine, which enables Starburst engineers to build &lt;a href="https://github.com/pulumi/automation-api-examples"&gt;infrastructure automation&lt;/a&gt; into their applications and CI/CD processes, and orchestrate complex provisioning workflows.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="benefits-of-using-pulumi"&gt;Benefits of Using Pulumi&lt;/h2&gt;
&lt;p&gt;Adopting Pulumi and its Automation API provided several benefits that made Starburst&amp;rsquo;s engineers more efficient and productive, ultimately leading to faster and more reliable releases for Starburst&amp;rsquo;s customers. Matt summed up the benefits of Pulumi for Starburst’s engineers: &amp;ldquo;When I think about building an airplane, I think about precision and having the right tools for the job.&amp;rdquo; Pulumi, for Starburst, epitomized this precision and efficiency.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Increased deployment speeds by 3x for new customer releases:&lt;/strong&gt; Starburst engineers used the Pulumi Automation API to triple the deployment speed of multi-cloud Kubernetes clusters with blue-green deployments that complete within minutes. They did this by orchestrating blue-green updates across their data plane running on the clusters, ensuring zero customer downtime. They built intricate integrations between Pulumi and internal APIs that enabled them to seamlessly transition customers to new clusters. Now they can update their customers’ runtimes, including VPCs and Kubernetes clusters, twice a week.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Unified cluster and infrastructure management:&lt;/strong&gt; Rather than juggling multiple tools for managing Kubernetes and infrastructure, Starburst engineers use a single tool to manage over 50 &lt;a href="https://www.pulumi.com/templates/kubernetes/"&gt;Kubernetes clusters&lt;/a&gt; and &lt;a href="https://www.pulumi.com/templates/kubernetes-application/helm-chart/"&gt;deploy Helm charts&lt;/a&gt; into the clusters, spanning multiple regions. They also use Pulumi to manage SaaS platforms like Cloudflare, Confluent, and DataDog.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Consistent deployment lifecycles:&lt;/strong&gt; Using Pulumi’s &lt;a href="https://www.pulumi.com/docs/iac/packages-and-automation/continuous-delivery/github-actions/"&gt;integration with GitHub Actions&lt;/a&gt;, Starburst engineers built a streamlined CI/CD process where infrastructure and application code builds within the same pipelines with automated test environments. They accomplished this using Pulumi Automation API to abstract the underlying runtime environments, circumventing the need for additional layers and wrappers.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://www.pulumi.com/uploads/content/blog/how-starburst-data-creates-infrastructure-automation-magic-with-code/starburst-code.png" alt="Infrastructure automation code"&gt;&lt;/p&gt;
&lt;h2 id="try-pulumi-for-infrastructure-as-code-automation"&gt;Try Pulumi for Infrastructure as Code Automation&lt;/h2&gt;
&lt;p&gt;&lt;a href="https://app.pulumi.com/signup"&gt;Sign up for a free account&lt;/a&gt; to try deploying infrastructure on any cloud with &lt;a href="https://www.pulumi.com/docs/pulumi-cloud/deployments/"&gt;Pulumi Deployments&lt;/a&gt;, or &lt;a href="https://www.pulumi.com/resources/#upcoming"&gt;register for an upcoming workshop&lt;/a&gt; to learn more about how Pulumi can help you ship cloud infrastructure faster and more safely.&lt;/p&gt;
&lt;p&gt;&lt;a href="https://www.pulumi.com/case-studies/"&gt;Go to more case studies →&lt;/a&gt;&lt;/p&gt;</description><author>George Huang</author><category>case-studies</category><category>kubernetes</category><category>cloud-native</category><category>automation-api</category><category>community</category><category>pulumi-events</category></item><item><title>How a Bank Modernized Its Software Engineering With Infrastructure as Code Automation</title><link>https://www.pulumi.com/blog/how-a-bank-modernized-its-software-engineering-with-infrastructure-as-code-automation/</link><pubDate>Thu, 03 Aug 2023 00:00:00 +0000</pubDate><guid>https://www.pulumi.com/blog/how-a-bank-modernized-its-software-engineering-with-infrastructure-as-code-automation/</guid><description>
&lt;img src="https://www.pulumi.com/images/generated/blog/how-a-bank-modernized-its-software-engineering-with-infrastructure-as-code-automation/index.png" /&gt;
&lt;div class="note note-info"&gt;
&lt;div class="icon-and-line"&gt;
&lt;svg xmlns="http://www.w3.org/2000/svg" class="ph-icon ph-icon--fill" fill="currentColor" aria-hidden="true" focusable="false"&gt;&lt;use href="https://www.pulumi.com/icons/sprite.70121449e0dde6f8c01ff68423fffaa0336ecc73c7bbc87506404126694ca58c.svg#p-info-fill"/&gt;&lt;/svg&gt;
&lt;div class="line"&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div class="content"&gt;This blog post summarizes a presentation by Dennis Sauvé at &lt;a href="https://www.pulumi.com/pulumi-up/"&gt;PulumiUP 2023&lt;/a&gt;.&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;&lt;a href="https://www.watrust.com"&gt;Washington Trust Bank&lt;/a&gt;, the largest independently-owned full-service commercial bank in the Northwest, has served personal, private, commercial and wealth management clients throughout the region since 1902. It has assets exceeding $11 billion and currently has 42 branches and offices in Idaho, Oregon, and Washington.&lt;/p&gt;
&lt;p&gt;As an FDIC-governed financial institution, it is imperative for the bank to maintain secure, reliable, and compliant cloud resources to protect clients’ personal data. On the other hand, it also aimed to create more agile development teams as it modernized its software development and infrastructure. &lt;a href="https://github.com/dengsauve"&gt;Dennis Sauvé&lt;/a&gt;, the bank&amp;rsquo;s first DevOps Engineer, recognized &lt;a href="https://www.pulumi.com/what-is/what-is-infrastructure-as-code/"&gt;Infrastructure as Code (IaC)&lt;/a&gt; as the solution to these challenges.&lt;/p&gt;
&lt;p&gt;Embracing an Infrastructure as Code approach would allow them to automate building and deploying their cloud infrastructure, eliminate infrastructure provisioning as a bottleneck, and empower developers to self-service infrastructure and increase productivity.&lt;/p&gt;
&lt;iframe width="560" height="315" src="https://www.youtube.com/embed/Q63ZaX340M4" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" allowfullscreen&gt;&lt;/iframe&gt;
&lt;h2 id="background"&gt;Background&lt;/h2&gt;
&lt;p&gt;The main challenge was managing Azure infrastructure in an efficient and secure way that kept pace with the bank&amp;rsquo;s rapid growth. Previously, they ran on-premise infrastructure and deployed with BAT and Powershell scripts. Now, they had migrated to Azure and wanted to increase development speed through CI/CD for cloud infrastructure.&lt;/p&gt;
&lt;p&gt;In addition, cloud resources&amp;rsquo; security and reliability were paramount. They needed a way for the infrastructure and information security teams to work together to implement security best practices for infrastructure, including how to prevent insecure resources from being provisioned.&lt;/p&gt;
&lt;p&gt;The bank decided to adopt IaC to create reliable and rapid deployments while ensuring that its cloud infrastructure stayed compliant and secure.&lt;/p&gt;
&lt;h2 id="why-washington-trust-bank-chose-pulumi"&gt;Why Washington Trust Bank Chose Pulumi&lt;/h2&gt;
&lt;p&gt;The bank evaluated several options, including &lt;a href="https://www.pulumi.com/docs/iac/comparisons/terraform/"&gt;Terraform&lt;/a&gt; and Azure Bicep. However, Pulumi stood out due to its versatility, support for multiple clouds and &lt;a href="https://www.pulumi.com/blog/introducing-azure-native-v2/"&gt;native Azure support&lt;/a&gt;, and the ability to write IaC in the bank&amp;rsquo;s preferred language, TypeScript. The ease of using Pulumi with GitHub, its ability to be used in conjunction with Azure CLI, and its comprehensive &lt;a href="https://www.pulumi.com/docs/iac/packages-and-automation/continuous-delivery/"&gt;support for CI/CD&lt;/a&gt; through GitHub Actions were also compelling factors.&lt;/p&gt;
&lt;p&gt;Dennis praised Pulumi, saying, &amp;ldquo;&lt;em&gt;Pulumi was exactly the Swiss Army Knife versatility we were looking for. We&amp;rsquo;ve only uncovered more of what we love about Pulumi as our relationship has evolved.&lt;/em&gt;&amp;rdquo;&lt;/p&gt;
&lt;h2 id="benefits-of-using-pulumi"&gt;Benefits of Using Pulumi&lt;/h2&gt;
&lt;p&gt;Pulumi helped Washington Trust Bank improve efficiency by maintaining its infrastructure in code, promoting the security of its infrastructure, and accelerating development speeds. It automated deployment of web services for its development teams, data management tools for its business insights team, and orchestrated its entire hub-and-spoke cloud architecture.&lt;/p&gt;
&lt;h3 id="improved-development-speed-with-reusable-infrastructure-packages-and-cicd"&gt;Improved Development Speed with Reusable Infrastructure Packages and CI/CD&lt;/h3&gt;
&lt;p&gt;Pulumi&amp;rsquo;s automation capabilities played a transformational role. By freeing the infrastructure team from handling manual deployments, it could focus on improving developer productivity. The team created reusable and repeatable &lt;a href="https://www.pulumi.com/docs/concepts/resources/components/"&gt;infrastructure components&lt;/a&gt; built around strict IT security standards in the form of Frazure, an internal NPM package.&lt;/p&gt;
&lt;p&gt;Frazure allows the bank’s developers to easily provision out-of-the-box resources for cloud services and covers the necessary Azure resource groups, vnets, and other resources. The package encapsulates best practices, such as how resource groups and their virtual networks can be created, including subnet IP spaces, peerings to and from the hub virtual network, user-defined routes and more.&lt;/p&gt;
&lt;p&gt;To deploy, developers open a pull request which kicks off a &lt;a href="https://www.pulumi.com/docs/pulumi-cloud/deployments/ci-cd-integration-assistant/"&gt;CI/CD pipeline in GitHub Actions&lt;/a&gt; and provisions testing environments and tests. Once the PR is reviewed and approved, the changes are automatically deployed to staging and live environments. This automated process enabled the bank to accelerate the building, testing, and deployment of new applications, translating into rapid value delivery to their customers.&lt;/p&gt;
&lt;h3 id="safeguards-for-infrastructure"&gt;Safeguards for Infrastructure&lt;/h3&gt;
&lt;p&gt;Pulumi also gave the bank total confidence in being able to rapidly recover its cloud infrastructure in the case of a failure in Azure. The integration of Pulumi with GitHub Actions provided the team with a precise delta of changes to be made to the environment. Coupled with mandatory reviews from InfoSec and infrastructure, this significantly reduced the likelihood of deploying unapproved changes, thereby enhancing the reliability of their deployment processes.&lt;/p&gt;
&lt;h3 id="policy-as-code-guardrails-with-pulumi-crossguard"&gt;Policy as Code Guardrails with Pulumi CrossGuard&lt;/h3&gt;
&lt;p&gt;&lt;a href="https://www.pulumi.com/docs/using-pulumi/crossguard/"&gt;Pulumi CrossGuard&lt;/a&gt; adds an extra layer of security and control and is used in conjunction with Azure Policies, which are used for auditing purposes. CrossGuard prevents the deployment of undesired, insecure, or expensive resources during the preview and deployment stage, thus preventing developers from even reaching Azure to provision resources. Custom error messages give developers context on why their deployment was not allowed.&lt;/p&gt;
&lt;p&gt;&lt;a href="https://www.pulumi.com/docs/using-pulumi/crossguard/configuration/"&gt;Pulumi Cloud Policy Packs&lt;/a&gt; allow them to group and deploy many policies simultaneously. The Policy Packs prevent specified resources from being deployed into staging and live environments. For example, one policy requires all SQL databases to use TLS 1.2 by default and another ensures all storage buckets have public access disabled by default. These capabilities helped bolster the security of the bank&amp;rsquo;s cloud infrastructure.&lt;/p&gt;
&lt;h2 id="financial-services-cloud-modernization-with-pulumi"&gt;Financial services cloud modernization with Pulumi&lt;/h2&gt;
&lt;p&gt;The DevOps and development teams at Washington Trust Bank rely on Pulumi as a key tool in their cloud modernization, while maintaining high security and quality standards. Pulumi played a vital role in streamlining their cloud infrastructure management, enabling their developers to be more productive, and improving the security and reliability of its cloud infrastructure.&lt;/p&gt;
&lt;p&gt;&lt;a href="https://app.pulumi.com/signup"&gt;Sign up for a free account&lt;/a&gt; to try deploying infrastructure on any cloud, or &lt;a href="https://www.pulumi.com/resources/#upcoming"&gt;register for an upcoming workshop&lt;/a&gt; to learn more about how Pulumi can help you ship cloud infrastructure faster and more safely.&lt;/p&gt;
&lt;p&gt;&lt;a href="https://www.pulumi.com/case-studies/"&gt;Go to more case studies&lt;/a&gt;&lt;/p&gt;</description><author>George Huang</author><category>azure</category><category>fintech</category><category>case-studies</category><category>enterprise</category><category>crossguard</category><category>policy-as-code</category></item><item><title>Cloud engineering fuels the next chapter of startup innovation</title><link>https://www.pulumi.com/blog/cloud-engineering-fuels-startup-innovation/</link><pubDate>Thu, 07 Oct 2021 00:00:00 +0000</pubDate><guid>https://www.pulumi.com/blog/cloud-engineering-fuels-startup-innovation/</guid><description>
&lt;img src="https://www.pulumi.com/images/generated/blog/cloud-engineering-fuels-startup-innovation/index.png" /&gt;
&lt;p&gt;The story of how the cloud fuels startup innovation seems never ending. In the beginning, AWS birthed cloud computing with its first service, SQS, in 2004 and quickly released several additional services (like S3, EC2, and SimpleDB). From this innovation, startups flourished because they were able to build, experiment, and grow faster than before at much lower cost. Airbnb, Netflix, Zynga, and many more were born, and the rest is history.&lt;/p&gt;
&lt;p&gt;Today, a new generation of startups is flourishing because of the cloud, but this time with modern cloud architectures that are distributed, API-driven, and more resilient and scalable than ever. Today’s startups have to get to market even faster and rapidly innovate in order to delight customers and carve out market share. Most startups understand the benefits of adopting the modern cloud to help them achieve this goal. However, their ability to reap these benefits for competitive advantage depends on how well they can harness the modern cloud.&lt;/p&gt;
&lt;p&gt;Within the &lt;a href="https://www.pulumi.com/cloud-engineering/"&gt;cloud engineering&lt;/a&gt; community, we see several common patterns for harnessing the modern cloud. Some startups have teams of full-stack developers who need to deploy cloud infrastructure and applications safely and at high velocity. Others might have a few infrastructure or platform engineers who need to enable other developers to use cloud infrastructure easily on a self-serve basis. Many of these teams started off using domain-specific languages (DSLs) to manage infrastructure as code and quickly found that these languages were the limiting factor in achieving faster velocity. DSLs are cumbersome to use and don’t support the logic and expressiveness needed to build and manage modern architectures that are more complex in nature. DSLs are also a barrier to entry to most developers.&lt;/p&gt;
&lt;p&gt;In contrast, cloud engineering makes cloud infrastructure more accessible and easier to use for everyone with tried and true software engineering practices and tools. It embraces the reality that &lt;a href="https://www.pulumi.com/blog/future-of-cloud-engineering/"&gt;all software is now cloud software&lt;/a&gt;. A core practice is using a commonly used language like TypeScript, Python, Go, or C#. That’s one reason why more and more startups are choosing Pulumi to help them achieve competitive advantage through cloud infrastructure. It also doesn’t hurt that Pulumi was &lt;a href="https://insights.stackoverflow.com/survey/2021#top-paying-technologies-other-tools"&gt;rated the “Top Paying Technology” by developers&lt;/a&gt; in 2021.&lt;/p&gt;
&lt;p&gt;Cloud engineering is a central character in the next chapter of how the modern cloud fuels startup innovation. Read on for three mini-stories of cloud engineering in action with startups.&lt;/p&gt;
&lt;h2 id="panther-labs"&gt;Panther Labs&lt;/h2&gt;
&lt;p&gt;Panther Labs helps modern security teams build world-class detection and response pipelines using code and automation, developer-friendly workflows, and big data primitives. Its Platform Team is responsible for a large, complex serverless architecture on AWS. Because of the limitations of its legacy Infrastructure-as-Code (IaC) tool, the team was unable to manage and scale its cloud infrastructure with the speed and automation that the company needed to support its fast-growing business. After comparing different alternatives, Panther Labs decided to migrate to the Pulumi Cloud Engineering Platform. Pulumi increased the company’s deployment speeds by up to 10x, reduced the size of its infrastructure codebase by &amp;gt;50%, and enabled its developers to adopt cloud engineering best practices to deliver its cloud applications faster and more reliably.&lt;/p&gt;
&lt;p&gt;&lt;a href="https://www.pulumi.com/case-studies/panther-labs"&gt;&lt;img src="pulumi_v_cf.png" alt="Pulumi vs. DSL"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;h3 id="results"&gt;Results&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Infrastructure teardowns were twice as fast, fresh deployments were four times as fast, and simple changes were more than ten times as fast.&lt;/li&gt;
&lt;li&gt;The infrastructure codebase was reduced by more than 50%.&lt;/li&gt;
&lt;li&gt;Developers could use a programming language and existing software development practices that they already knew.&lt;/li&gt;
&lt;li&gt;The ability to create reusable components made it easy to replicate and share components that always followed cloud engineering best practices.&lt;/li&gt;
&lt;li&gt;Central visibility across hundreds of single-tenant customer deployments, including a history of when changes were made and what changed for each account.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;a href="https://www.pulumi.com/case-studies/panther-labs"&gt;Read the full case study→&lt;/a&gt;&lt;/p&gt;
&lt;h2 id="whylabs"&gt;WhyLabs&lt;/h2&gt;
&lt;p&gt;WhyLabs helps organizations run their AI applications with certainty by monitoring them for problems such as data drift and model degradation. Founded by alumni of AWS, the company began building their platform on AWS and used AWS-provided tools to manage their infrastructure. However, the WhyLabs team needed a platform that could handle the complexity of their modern cloud architectures and would set them up for success when they’re ready to adopt multi-cloud deployments. The team also wanted a platform that integrated with the modern development workflows used by WhyLabs’ developers, who have a software engineering-driven culture of tight collaboration and shared responsibility for infrastructure. By migrating to the Pulumi Cloud Engineering Platform, WhyLabs engineers can continuously and reliably ship new features faster than before for improved time-to-market. Pulumi enabled WhyLabs to adopt cloud engineering best practices out-of-the-box, including building infrastructure as code with general-purpose languages like TypeScript, versioning and reviewing infrastructure code through a code review process, and delivering infrastructure through its existing GitLab CI/CD pipeline using Pulumi’s integrations.&lt;/p&gt;
&lt;h3 id="results-1"&gt;Results&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Pulumi enabled WhyLabs engineers to continuously and reliably ship new features faster than before for improved time-to-market.&lt;/li&gt;
&lt;li&gt;Pulumi enabled WhyLabs to adopt standard programming languages (like TypeScript) to build infrastructure as code. It also allows them to use software engineering best practices like reusability and unit testing.&lt;/li&gt;
&lt;li&gt;Pulumi lowered the barrier to entry for developers to start working with infrastructure. A standard programming language means that every developer can quickly become involved in creating and maintaining the WhyLabs infrastructure.&lt;/li&gt;
&lt;li&gt;Pulumi enables WhyLabs to shift infrastructure left because testing and security controls are automated with Pulumi and GitLab integration. Peer reviews and accountability are built into the GitLab CI/CD pipeline.&lt;/li&gt;
&lt;li&gt;Pulumi’s integration with GitLab enables WhyLabs to deliver infrastructure through CI/CD pipelines just like with application code, which increases iteration frequency and accelerates time to market.&lt;/li&gt;
&lt;li&gt;Pulumi’s support for multiple cloud providers will help WhyLabs expand their platform in the future to meet customers’ needs.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;a href="https://www.pulumi.com/case-studies/whylabs"&gt;Read the full case study→&lt;/a&gt;&lt;/p&gt;
&lt;h2 id="fauna"&gt;Fauna&lt;/h2&gt;
&lt;p&gt;Fauna provides a flexible, developer-friendly, transactional database delivered as a secure and scalable cloud API with native GraphQL. It needed to provide a way for customers to use its databases while meeting data residency requirements, such as complying with GDPR or FIPS. This meant allowing customers to store data in specific geographies while maintaining low latency and high availability. To build this capability, Fauna’s engineers needed a repeatable, scalable, and efficient way to build, deploy, and manage databases on behalf of its customers. Every database is backed by a cluster of nodes across multiple regions and cloud providers. After evaluating CloudFormation and Terraform, Fauna found that these tools’ domain-specific languages and features would be insufficient for the project. Fauna chose Pulumi to build, deploy, and manage its multi-cloud infrastructure because Pulumi enabled cloud engineering best practices that met its requirements. This included the ability to use a familiar and powerful programming language like Python, integration with existing software development workflows and tools, and software engineering automation.&lt;/p&gt;
&lt;h3 id="results-2"&gt;Results&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Delivered its new multi-region, multi-cloud database feature by using familiar and existing software tools and practices that were enabled by Pulumi.&lt;/li&gt;
&lt;li&gt;Built and managed its complex cloud architecture more efficiently by using familiar languages like Python.&lt;/li&gt;
&lt;li&gt;Increased the reliability and quality of infrastructure using existing code review processes and running unit tests.&lt;/li&gt;
&lt;li&gt;Controlled access to its infrastructure using Pulumi’s SSO integration with its identity provider service.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;a href="https://web.archive.org/web/20250516064352/https://fauna.com/blog/building-faunas-gdpr-compliant-distributed-and-scalable-database"&gt;Read Fauna&amp;rsquo;s blog post→&lt;/a&gt;&lt;/p&gt;
&lt;h2 id="summary"&gt;Summary&lt;/h2&gt;
&lt;p&gt;Cloud engineering is enabling startups to build, deploy, and manage modern cloud infrastructure and applications faster and with more confidence. By applying standard software engineering languages, practices and tools to cloud infrastructure, startups can harness modern cloud architectures like containers or serverless to their full potential. To illustrate this, we shared three case studies of startups practicing cloud engineering. Pulumi’s Cloud Engineering Platform was built to enable any organization to adopt cloud engineering best practices out-of-the-box. If you’re starting your cloud engineering journey, try Pulumi for free today with this &lt;a href="https://www.pulumi.com/docs/get-started/"&gt;Getting Started guide&lt;/a&gt;.&lt;/p&gt;</description><author>George Huang</author><category>cloud-engineering</category><category>case-studies</category></item></channel></rss>