Real-Time Processing
15-minute audit lag vs compliance → <5s pipeline, 1M+ req/min, ES search <100ms at billions of rows.
Public company context- Role
- Full Stack Cloud Developer
- Context
- Media / Analytics
- Duration
- 10 months
- Team
- 6 engineers + 1 cloud developer (me)
Tech stack
- ECS
- EKS
- Fargate
- Python
- Lambda
- S3
- ElasticSearch
- Redis
- Celery
Business problem and production context.
Business problem
Enterprise clients needed real-time activity tracking and audit logging across distributed microservices. Existing batch processing had 15-minute delays, failing compliance requirements for near-real-time visibility.
Architecture decision
Operated cloud-native microservices on ECS, EKS, and Fargate handling 1M+ requests/minute. Built audit logging with Lambda, S3, and ElasticSearch for real-time activity tracking. Implemented Celery task queues with Redis and SQS for background job processing.
The useful proof is the decision surface, not only the result number.
These are the parts of the work that show production judgment: ownership, constraints, rollback, cost, and observability.
Owned scope
- Event-processing architecture for high-throughput, low-latency data paths
- Backpressure, queue, and storage decisions around real-time query behavior
- Operational signals for lag, failures, and customer-impacting delay
Evidence artifacts
What would fail first?
Every project has constraints. The useful work is naming them early enough that rollback, cost, and ownership are designed before an incident.
Latency
The system needed fast query responses while ingesting and processing continuous event streams.
Throughput
Burst traffic required explicit handling of queue depth, consumers, and storage limits.
Debuggability
Operators needed to know whether delay came from ingestion, processing, or query serving.
Trade-offs accepted on purpose.
Production risks and how they were controlled.
Small steps, visible changes, fewer surprises.
- 01
Instrumented existing batch pipeline to identify bottlenecks. We discovered 15-minute processing delays came from hourly S3-to-Redshift ETL jobs.
- 02
Replaced batch ETL with streaming architecture: Lambda triggers on S3 events, pushing to ElasticSearch via Kinesis Data Firehose.
- 03
Deployed audit microservices on ECS Fargate with auto-scaling based on SQS queue depth, scaling from 3 to 50 tasks during peak hours.
- 04
Built real-time ElasticSearch dashboards for compliance teams: sub-second search across 2B+ audit log entries.
- 05
Implemented Celery task queues with Redis for background analytics jobs, keeping the hot path (real-time logging) isolated from cold path (report generation).
Before and after.
Rollback path
Processing changes needed replay-safe deployment and clear boundaries around idempotent writes.
Cost considerations
Cost control depended on matching retention, throughput, and query capacity to actual access patterns.
Observability notes
Useful signals were ingestion rate, processing lag, failed messages, query latency, and replay volume.
Related services
Have a similar production problem?
Send the current architecture, bill concern, deployment pain, or GenAI reliability issue. I will help you find the first real bottleneck.
Request the reliability audit