Why managed services
CloudFront, API Gateway, Lambda, and S3 avoid long-running capacity for a bursty workload.
Case file / AWS serverless
A focused AWS workflow protects public submissions, validates image attachments, stores them privately, delivers email, and keeps failures visible to operators.

Project snapshot
The challenge
The workload was narrow, but public exposure made availability, abuse controls, attachment safety, and operator signals essential.
Architecture note
The drawing keeps the real AWS services visible; the notes explain the decisions around them.
Detailed system drawing

CloudFront, API Gateway, Lambda, and S3 avoid long-running capacity for a bursty workload.
The handler checks image type and size before writing to private S3 storage.
WAF and throttling protect the edge; Lambda validates content, attachments, and routing.
CloudWatch covers runtime, API, WAF, attachment, and email-delivery failures.
Infrastructure code, AWS resources, controls, alerts, and operating notes stay with the client.
Security and operations
CloudFront, WAF, and API throttling protect the request path.
Lambda sanitises fields, checks attachments, and controls recipients.
Validated images move into private S3 storage.
Managed secrets and scoped IAM limit service access.
Transactional email uses controlled sending-domain configuration.
CloudWatch routes failures to Slack and Microsoft Teams.
Results
Design risks avoided
The architecture avoids an open upload surface, hidden delivery failures, and an always-on server estate for a focused workload.
After handover
Ownership after handover
Your team keeps the infrastructure code, security controls, dashboards, alerts, and runbooks.
Schedule a platform call