Design a tagging and cost allocation strategy for a company running many teams on AWS.
What the interviewer wants to hear
- Small mandatory tag set: owner or team, environment, application, cost center
- Enforce with IaC defaults, tag policies and SCPs or Config rules
- Account structure per team or environment as the primary cost boundary
- Activate cost allocation tags and build per-team reports and budgets
- Handle shared costs and untagged spend with a showback model
Model answer
I start with accounts, because separate AWS accounts per team and environment are the cleanest cost boundary and need no tagging discipline. Inside accounts I define a short mandatory tag set, such as team, application, environment and cost-center, with fixed allowed values. I enforce it in several places: Terraform default_tags in the provider so every resource gets them, AWS Organizations tag policies for consistent values, and Config rules or CI policy checks to flag untagged resources. Those tags are activated as cost allocation tags so Cost Explorer and the Cost and Usage Report can break spend down. Each team gets budgets and anomaly alerts on its own spend. Shared costs like networking or support are split by an agreed formula in a showback report, and we track the percentage of untagged spend as a metric to drive it down.
Can you answer it under time pressure?
Take a timed medium round and get scored on every answer.
More medium Cloud Engineer questions
- Design a secure three-tier web application on AWS (or your preferred cloud). Walk through the network and services.
- How do you manage Terraform state and multiple environments (dev, staging, prod) safely?
- A team stores customer documents in an S3 bucket. How would you secure it?
- An instance in a private subnet cannot reach the internet to install packages. How do you troubleshoot it?
- How would you plan the migration of an on-premises application to the cloud?
- Describe how you would build a CI/CD pipeline for Terraform changes across dev, staging and production.
- A team wants to move a service onto your Kubernetes cluster. What do you check before calling it production ready?
- You are on call and p99 latency for a cloud API jumps from 200 ms to 3 seconds. Walk through how you investigate and handle it.
- How do you manage application secrets such as database passwords and API keys in a cloud environment?