VOOZH about

URL: https://thenewstack.io/platform-teams-automate-infrastructure-requirement-gathering/

⇱ Platform Teams: Automate Infrastructure Requirement Gathering - The New Stack


TNS
SUBSCRIBE
Join our community of software engineering leaders and aspirational developers. Always stay in-the-know by getting the most important news and exclusive content delivered fresh to your inbox to learn more about at-scale software development.
REQUIRED
It seems that you've previously unsubscribed from our newsletter in the past. Click the button below to open the re-subscribe form in a new tab. When you're done, simply close that tab and continue with this form to complete your subscription.
The New Stack does not sell your information or share it with unaffiliated third parties. By continuing, you agree to our Terms of Use and Privacy Policy.
Welcome and thank you for joining The New Stack community!
Please answer a few simple questions to help us deliver the news and resources you are interested in.
REQUIRED
REQUIRED
REQUIRED
REQUIRED
REQUIRED
Great to meet you!
Tell us a bit about your job so we can cover the topics you find most relevant.
REQUIRED
REQUIRED
REQUIRED
REQUIRED
REQUIRED
Welcome!

We’re so glad you’re here. You can expect all the best TNS content to arrive Monday through Friday to keep you on top of the news and at the top of your game.

What’s next?

Check your inbox for a confirmation email where you can adjust your preferences and even join additional groups.

Follow TNS on your favorite social media networks.

Become a TNS follower on LinkedIn.

Check out the latest featured and trending stories while you wait for your first TNS newsletter.

PREV
1 of 2
NEXT
VOXPOP
As a JavaScript developer, what non-React tools do you use most often?
Angular
0%
Astro
0%
Svelte
0%
Vue.js
0%
Other
0%
I only use React
0%
I don't use JavaScript
0%
Thanks for your opinion! Subscribe below to get the final results, published exclusively in our TNS Update newsletter:
NEW! Try Stackie AI
From clobbered drafts to real-time sync
Apr 14th 2026 10:00am, by David Moore
TypeScript 6.0 RC arrives as a bridge to a faster future
Mar 14th 2026 9:00am, by Darryl K. Taft
Mastra empowers web devs to build AI agents in TypeScript
Jan 28th 2026 11:00am, by Loraine Lawson
2024-07-16 13:06:03
Platform Teams: Automate Infrastructure Requirement Gathering
sponsor-nitric,sponsored-post-contributed,
DevOps / Infrastructure as Code / Platform Engineering

Platform Teams: Automate Infrastructure Requirement Gathering

By bridging the gap between dev and ops teams with automated resource specifications, you can create a more harmonious and efficient deployment process.
Jul 16th, 2024 1:06pm by Rak Siva
👁 Featued image for: Platform Teams: Automate Infrastructure Requirement Gathering
Image from GoodStudio on Shutterstock.
Nitric sponsored this post.

One of the most challenging issues in application development is the disconnect between development and operations teams. Communication challenges quite easily lead to misaligned expectations and broken deployments. One of the most mission-critical and brittle areas of communication between these two teams is infrastructure requirements, and it has seemed impossible to solve over the years.

But there’s now finally a solution to this communication gap: automation to streamline infrastructure requirement gathering.

Communication Challenges

Platform engineering teams frequently face the difficulty of gathering accurate requirements from development teams about their applications. Developers, often unaware of the specific infrastructure information needed, might provide incomplete or incorrect data.

And, of course, there’s the more drastic “throw it over the fence” scenario. Once developers are finished building application logic, they hand it over to the platform team to painstakingly figure out what infrastructure, configurations and permissions are needed to run it reliably, securely and efficiently in the cloud.

Poor communication of infrastructure requirements can lead to infrastructure drift, where the deployed infrastructure no longer matches the actual needs of the application. This drift causes applications to fail, leading to stressful deployment days, late-night troubleshooting sessions and the dreaded war rooms.

Infrastructure Drift and Its Consequences

Infrastructure drift occurs when the actual state of infrastructure deviates from the desired state defined in the Infrastructure as Code (IaC) scripts. Given the challenges with manual communication of infrastructure requirements, it’s no surprise that teams run into drift. Problems include:

  • Manual changes: Developers or operations teams might make manual changes to the infrastructure without updating the IaC scripts.
  • Inconsistent updates: Updates to the application might not be reflected in the infrastructure configuration.
  • Lack of communication: Developers might not communicate new requirements or changes effectively to the operations team.

The consequences of infrastructure drift are severe:

  • Deployment failures: Mismatched configurations can cause deployments to fail, leading to application downtime.
  • Increased stress: Operations teams often have to deal with last-minute fixes, leading to long hours and high stress levels.
  • Reduced trust: Frequent deployment issues erode trust between development and operations teams, making future deployments even more challenging.
  • Higher costs: Infrastructure drift incurs costs due to lost revenue from downtime, unnecessary expenses from misconfigured resources, increased labor costs for fixing issues and security vulnerabilities requiring remediation.

The solution to these infrastructure drift issues, which stem from the challenges in communicating infrastructure requirements, lies in automation. Let me introduce the concept of a resource specification that can automatically communicate runtime application requirements to the operations team.

The Solution: Automated Resource Specifications

Imagine a system where the required infrastructure resources are inferred directly from the application code. This system would generate a resource specification that acts as live documentation, detailing the runtime requirements of the application. This specification could then be used to automate the provisioning of infrastructure, ensuring that the deployed resources match the application’s needs precisely.

Imagine also that while infrastructure requirements are inferred from application code, operations teams still retain control over critical decisions. They select the cloud provider, services and security configurations for each resource, allowing them to apply their expertise and enforce best practices. This ensures that the infrastructure remains robust and compliant with organizational standards, combining automation with expert oversight.

This is the crux of the new concept of Infrastructure from Code (IfC), which builds upon Infrastructure as Code (IaC). What it means is that IfC frameworks like Nitric can provide the solution operations teams have been looking for: real-time, detailed specifications of the resources and permissions the application needs.

An Example of Automated Resource Specification

Here’s an example of how resource specifications can be generated from application code. This application runs on a daily schedule and publishes an updated event which includes a URL.

From this code snippet, the Nitric framework gathers the following information:

  1. Bucket resource:
    • ID: reports
    • Config: Default setup.
  2. Topic resource:
    • ID: updated
    • Config: Default setup.
  3. Scheduled task resource:
    • ID: process-reports
    • Config: Target service `hello-world_services-hello` with a cadence of every five days.
  4. Policy resource:
    • ID: eccfffd7a5e31407be6f7a5663665df4
    • Config: Policy allowing read and write actions on the reports bucket for the `hello-world_services-hello` service.
  5. Policy resource:
    • ID: 74e4fa18c1527363767c00582b792ed9
    • Config: Policy allowing custom action 200 on the updated topic for the `hello-world_services-hello` service.
  6. Service resource:
    • ID: `hello-world_services-hello`
    • Config: Service with an image `hello-world_services-hello`, one worker and an environment variable `NITRIC_BETA_PROVIDERS` set to true.

This information is compiled into a resource specification, ensuring that all necessary resources are provisioned accurately and consistently.

Note: The IDs are auto-generated to uniquely identify resources.

Automatically Applying Resource Specifications

Generating the resource specification automatically solves a huge portion of the communication and drift issues I discussed above. But platform teams can further benefit from automatic application of those specifications to the IaC modules they’ve created. Frameworks like Nitric, which I used for the example above, also automatically compose deployment scripts for the platform team.

Using the resource specification, each component is mapped to the corresponding IaC modules. For instance, if the application specifies a bucket resource and the target cloud provider is AWS, the system will use a Terraform module to provision a schedule handler:

This automated mapping ensures that the deployed infrastructure remains in sync with the application’s requirements, preventing drift and reducing the likelihood of deployment failures.

No More ‘Throwing Over the Fence’

By bridging the gap between development and operations teams with automated resource specifications, it’s possible to create a more harmonious and efficient deployment process. This approach not only reduces the risk of infrastructure drift and deployment failures but also fosters better communication and trust between teams. Embracing this method can lead to more reliable, stress-free deployments and a more resilient infrastructure.

  1. Consistency: Automated resource specifications ensure that the deployed infrastructure matches the application’s needs, reducing the risk of drift.
  2. Efficiency: By automating the generation and provisioning of resources, deployment times are shortened, and the need for manual intervention is minimized.
  3. Reduced stress: Operations teams can trust that the infrastructure will be provisioned correctly, leading to smoother deployments and fewer late-night troubleshooting sessions.
  4. Improved communication: Developers don’t need to worry about specifying infrastructure requirements manually; the system takes care of it, ensuring accurate communication of needs.

Learn more about this approach by checking out what we’re building with the open source Nitric framework. We’d love your feedback, ideas and contributions to help automate the most tedious parts of platform engineering.

Nitric is the cloud-aware framework that enhances developer productivity and ops confidence, uniting backend and infrastructure code to build and ship cloud apps fast. Devs build your application, Platform determines the right infrastructure and Nitric automates provisioning that works for both.
Learn More
The latest from Nitric
Hear more from our sponsor
TRENDING STORIES
Rak Siva, vice president of engineering at Team Nitric, is deeply committed to elevating the experience for software developers. With a rich 15-year tenure in the software industry, he began his engineering journey immersed in the exhilarating challenges of the...
Read more from Rak Siva
Nitric sponsored this post.
SHARE THIS STORY
TRENDING STORIES
SHARE THIS STORY
TRENDING STORIES
TNS DAILY NEWSLETTER Receive a free roundup of the most recent TNS articles in your inbox each day.
The New Stack does not sell your information or share it with unaffiliated third parties. By continuing, you agree to our Terms of Use and Privacy Policy.