Client

NDA Protected Technology Client

The Automation Trick That Cut Our Client’s AWS Bill Overnight

Many businesses unknowingly overspend on cloud infrastructure because development servers continue running long after they are needed. By introducing automated shutdown schedules and smart tagging within Amazon Web Services, we helped our client eliminate idle compute costs, significantly reduce monthly AWS spending, and gain full visibility into resource usage, all without impacting performance or productivity.

Case Study Section

Business Challenge

Our client was running multiple development workloads on Amazon EC2 that remained powered on overnight and throughout weekends despite being actively used during business hours. The absence of a formal shutdown process created a silent cost leak, while development systems lacked the cost governance and visibility already present in production environments.

Technology Used

Amazon Web Services Amazon EC2 AWS Lambda Python Amazon EventBridge Amazon CloudWatch IAM Smart Tagging

Blueprint

The solution combined smart tagging, controlled IAM permissions, and scheduled serverless automation to stop development EC2 instances after business hours. AWS Lambda scanned for running instances with defined tags, Amazon EventBridge triggered the function daily, and Amazon CloudWatch recorded activity, while IAM conditions protected production environments from unintended shutdowns.

```
web

Cost Optimization & Monitoring

Key Outcomes

  • Reduced development compute costs
  • No disruption to developer workflows
  • Zero impact on production systems
  • Improved visibility into resource usage
  • Stronger governance through structured tagging
  • Reduced idle compute time
  • Clear drop in AWS monthly spend in the first billing cycle

Customer Profile

Our client was running multiple development workloads on Amazon EC2. These instances were actively used during business hours but remained powered on overnight and throughout weekends. Production environments were well-managed, while development systems lacked cost governance and visibility. The objective was to reduce unnecessary compute spend, protect production workloads, and avoid disrupting developer productivity.

The Challenges

The client faced several issues related to development infrastructure usage:

  • No formal shutdown process: Developers logged off at the end of the day, but the infrastructure continued running 24/7.
  • Idle runtime: Development servers consumed billable compute hours even when no one was using them.
  • Silent cost leak: More than half of the monthly compute cost came from off-hours usage that provided zero business value.
  • Limited development cost governance: Production environments were well-managed, but development systems lacked cost governance and visibility.
  • Production protection: Any automation needed to target specific development workloads while keeping production completely untouched.
  • Developer productivity: The cost-saving approach needed to avoid disrupting developer workflows.

Why Bobcares?

The solution focused on eliminating idle runtime through smart tagging, controlled permissions, and scheduled automation rather than changing the existing architecture.

  • Smart Tagging: Development instances were clearly labelled using defined tags.
  • Controlled Permissions: IAM conditions restricted which instances could be stopped.
  • Scheduled Automation: Amazon EventBridge triggered the automation daily.
  • Serverless Automation: AWS Lambda provided the automated shutdown function.
  • Monitoring: Amazon CloudWatch recorded activity for auditability and monitoring.

What We Delivered

We designed a secure, automated solution based on three principles: Smart Tagging, Controlled Permissions, and Scheduled Automation.

  • Implemented a standardized tagging strategy for development instances.
  • Applied
    Environment = development
    .
  • Applied
    Project = zomato
    .
  • Deployed a lightweight AWS Lambda function written in Python.
  • Configured the function to scan for running EC2 instances with the defined tags.
  • Configured the function to stop the tagged instances after business hours.
  • Configured Amazon EventBridge to trigger the function daily.
  • Recorded all activity logs in Amazon CloudWatch.
  • Restricted the Lambda execution role using IAM conditions.
  • Ensured that only instances with the specified tags could be stopped.
  • Kept production environments completely untouched.

The Results

The impact was immediate. Development instances no longer ran overnight or on weekends, significantly reducing idle compute time. In the first billing cycle itself, the client saw a clear drop in their AWS monthly spend.

  • Development instance runtime:
    Before: Running overnight and throughout weekends.
    After: Stopped outside working hours.
  • Off-hours compute usage:
    Before: Billable usage during idle periods.
    After: Reduced idle compute time.
  • AWS monthly spend:
    Before: More than half of compute cost came from off-hours usage.
    After: Clear reduction in monthly AWS spend.
  • Developer workflow:
    Before: Required protection from infrastructure changes.
    After: No disruption.
  • Production systems:
    Before: Required to remain untouched.
    After: Zero impact.
  • Resource visibility:
    Before: Limited visibility into development systems.
    After: Improved visibility.
  • Cost governance:
    Before: Limited cost tracking.
    After: Structured tagging and stronger governance.

System Architecture

The automation used Amazon EC2, AWS Lambda, Amazon EventBridge, Amazon CloudWatch, and IAM.

Development instances were standardized with the tags

Environment = development
and
Project = zomato
. AWS Lambda, written in Python, automatically scanned for running EC2 instances with the defined tags and stopped them after business hours.

Amazon EventBridge was configured to trigger the function daily, while Amazon CloudWatch recorded all activity for auditability and monitoring. The Lambda execution role was restricted using IAM conditions so that only instances with the specified tags could be stopped, ensuring production environments were never at risk.

The Business Impact

The automation addressed unnecessary development compute usage without affecting performance or productivity.

  • Reduced development compute costs
  • Reduced idle compute time
  • No disruption to developer workflows
  • Zero impact on production systems
  • Improved visibility into resource usage
  • Stronger governance through structured tagging
  • More predictable and optimized development spending

Ongoing Collaboration

The solution established automated control over development infrastructure through scheduled shutdowns, tagging, permissions, and monitoring.

  • Automated shutdown of defined development instances after business hours
  • Daily execution through Amazon EventBridge
  • Activity logging through Amazon CloudWatch
  • Controlled instance access through IAM conditions
  • Structured tagging for targeted workload automation

Conclusion

Cloud cost optimization does not always require major architectural changes. Often, the fastest savings come from eliminating waste.

By combining smart tagging, secure IAM controls, and scheduled serverless automation, our client transformed uncontrolled development spending into a predictable and optimized cost model almost overnight.The real automation trick wasn’t complexity. It was disciplined resource management and intelligent control.