Reusable Terraform modules for your infrastructure components -- each module encapsulating a logical infrastructure unit with a clean input/output interface that serves dev, staging, and production environments with different variable values rather than copy-pasted configuration blocks that diverge as each environment evolves differently. VPC and networking module: multi-AZ VPC with public and private subnets, NAT gateway configuration for private subnet egress, security group baseline (no inbound from 0.0.0.0/0 to any port on any resource except load balancer ports 80 and 443), VPC flow logs to S3 for network traffic audit. EKS cluster module: managed node groups with configurable instance type and autoscaling bounds, IRSA (IAM Roles for Service Accounts) setup so pod-level AWS permissions use short-lived federated credentials rather than access keys, cluster logging to CloudWatch for API server and audit log streams. RDS and Aurora module: Multi-AZ deployment for production, single-AZ for dev/staging to reduce cost, automated backups with configurable retention period (7 days dev, 30 days production), Performance Insights enabled, deletion protection enabled on production and explicitly disabled on dev/staging. S3 and CloudFront module: bucket policy blocking all public access by default, versioning enabled, lifecycle rules for intelligent tiering on objects older than 90 days, CloudFront distribution with OAC (Origin Access Control) for private S3 origin. IAM roles and policies module: least-privilege role definitions with specific resource ARNs rather than wildcard resources, permission boundaries on roles that can be assumed by applications, and an automated policy checker using aws-iam-access-analyzer that flags overly-permissive policies during plan. HCL linting with tflint and security scanning with Checkov in the CI pipeline to catch common misconfigurations (unencrypted EBS volumes, public S3 buckets, unrestricted security groups) before apply.