| Today we use For database, we use RDS/Dynamodb Redis for cache. Dynamodb is better in cases where we want to localize the latency of our regional lambdas. RDS for everything else like dashboard entity storage etc.. Cloudwatch prints logs, kinesis takes the log to s3 where it's transformed in batches with lambda then data is moved to Redshift.
Redshift for stats/reports. Converted whole ad network to Serverless.
Used Rust Lambda runtime for CPU intensive tasks. Using Go for the rest of the Lambdas. I love Go and Rust and optimizing just one Lambda at a time brought back the programme joy in my life Used Apex+Terrform to manage whole infra for the ad network. We managed to deploy Lambda in all AWS regions ensuring minium latency for the ad viewers. The thing which took over 50 (tech side only) person team, now takes 10 people to run the whole ad network. Network is doing 20M profit per year/9 billion clicks per day. It's my greatest achievement so far because we made it from scratch without any investor money. But one the other side, we'll have to shrink our team size next year as growth opportunity is limited and we want to optimize efficiency further. |
I'm currently planing to write a book about AWS. It should teach people how to build their MVPs without restricting themselves in the future.
Are you available for an interview in January?