AWS for Thnkrr: A Beginner's Guide
10 October 2026. A reference for anyone at Thnkrr. No AWS or technical knowledge needed.
What this document is for
Thnkrr is a professional network for high-school students, a bit like LinkedIn for teenagers. Students build a profile, connect with classmates, post about what they've done, and get advice from mentors (university students). Teachers and school staff use it too. We're starting with a pilot: a trial with a few US schools, beginning with about 20 students and growing to about 1,000.
Thnkrr will run on Amazon Web Services (AWS), Amazon's business of renting out computers, storage and software over the internet. AWS sells over 200 products, with short names like EC2 (Elastic Compute Cloud), S3 (Simple Storage Service) and RDS (Relational Database Service) that mean little to most people.
This document explains, in plain words:
- What each job behind Thnkrr is, and which AWS product will do it.
- What other AWS products could do the same job, what they cost, and when we'd use one.
- What other companies do, from small startups to LinkedIn, and what we can learn from them.
Nothing is running on AWS yet. The app is built and tested on our own laptops. This document describes the launch plan: the setup we'll create on AWS before the first students join.
Contents
- The one-minute version
- Words you'll see
- What AWS is, in two minutes
- How Thnkrr will run on AWS
- How a social network grows
- Why we skip most of AWS
- The jobs, one by one (20 short sections, plus products Amazon is closing)
- Lessons from other companies
- The whole list of AWS products
- Sources
1. The one-minute version
- The launch setup is small and simple on purpose: one rented computer runs Thnkrr, one database stores everything, and Amazon's file storage holds photos and videos.
- It will cost about $66 a month at the start and about $103 a month at 1,000 students. Amazon has given us about $5,000 of free credit through its startup programme: enough for about 6 years at the starting cost, or about 4 years at 1,000 students, if it doesn't expire first (checking its expiry date is one of the launch steps).
- Most of AWS's 200+ products are for much bigger companies. Section 6 explains why we skip them, and each job section says at what size one would start to make sense.
- The biggest companies started like this too. Instagram once ran on a handful of rented computers with three engineers. LinkedIn started as a single program.
- Safety comes first at every size: a person on our safety team reviews every photo and video before anyone else sees it. An AI (artificial intelligence) model checks all writing first and passes anything it isn't sure about to a person.
2. Words you'll see
| Word | What it means |
|---|---|
| The app | Thnkrr itself: the program that runs everything students see and do. Students reach it through a web browser on their phone or laptop |
| Server | A computer that runs the app all day and night. We rent ours from Amazon |
| Database | Where all accounts, posts and messages are stored, organised so any record can be found in a split second |
| Storage | Space for files, like photos and videos |
| MB, GB and TB | Megabyte, gigabyte and terabyte: sizes of data. A phone photo is about 3 MB; 1 GB holds about 300 photos; 1 TB is 1,000 GB |
| Region | An area where Amazon has several data centres. Ours is in Virginia, USA |
| Data centre | A building full of computers. A region has several, miles apart, so one fire or power cut can't take them all out |
| Managed | Amazon looks after it (repairs, routine updates, backups). We pay a little more and do less |
| Pay per use | You pay only when something happens, like a photo being checked |
| Backup | A saved copy we can go back to if data is lost or damaged |
| Outage | A time when a service stops working. "Downtime" means the same |
| Cache | A small, very fast copy of popular data, so the database isn't asked the same thing again and again |
| Queue | A to-do list of slow jobs (like converting a video) that small background programs, called workers, work through |
| Firewall | A filter that inspects incoming traffic and blocks requests that match known attack patterns |
| AI model | An artificial intelligence program, trained on huge amounts of text or images, that can judge new ones, for example "does this post contain bullying?" |
| Encryption | Scrambling data so only someone with the right key can read it |
"Copy" means different things, so this document always says which:
- a second running copy of the app: if one breaks or is being updated, the other keeps working;
- a standby database: a live twin of the database that takes over if the main one fails;
- a backup: a saved snapshot for going back in time.
3. What AWS is, in two minutes
Think of AWS as renting instead of buying. A company used to buy its own computers, put them in a cold room, and hire people to fix them. With AWS, you rent exactly what you need, by the hour, and Amazon owns and repairs the machines.
Three things make it useful for us:
- You pay only for what you use. Thnkrr's whole setup will cost about as much a month as a phone plan. If we grow, we rent more; if we shrink, we rent less.
- Amazon does the boring, risky work. Replacing broken disks, keeping copies of data in more than one data centre, installing security fixes.
- It can grow with us. The same company that will run our one small computer also runs Netflix and Airbnb. We won't outgrow it.
About the credits. Amazon's startup programme gave us about $5,000 of AWS credit. It has an expiry date we still need to check. It's separate from AWS's "free tier", a small extra allowance (up to $200) that every new account gets.
About the names. Most AWS products have short names like those above. The first time each appears, this document gives its full name and says what it does, so you never need to remember the codes.
Why Virginia? Every region has outages now and then (Lesson 3). We chose Amazon's Virginia region because it's closest to our first schools around Pittsburgh, has every product we need, and checks pictures fastest.
4. How Thnkrr will run on AWS
Here's what will happen when a student posts a photo, and which AWS product does each step.
- The student types
thnkrr.com. Route 53, Amazon's internet address book, tells their phone which computer to talk to. - The pages load quickly from CloudFront, a network of computers around the world that keep copies of our pages close to every user.
- The student signs in. The app, running on one rented computer (EC2), checks their password against our database (RDS).
- They upload a photo. It goes into a private, locked folder in Amazon's file storage (S3), where only our safety team can see it.
- The photo and its caption are checked by machines:
- Amazon's picture check (Rekognition) looks for things like nudity or violence;
- an AI model (run by Bedrock) reads the caption for bullying, phone numbers, self-harm and similar;
- it will also be compared against official lists of known child-abuse images, once the organisations that keep them approve us (section 7.6).
- A person on our safety team reviews it. Nothing goes live until they approve it.
- Once approved, classmates can see it, and they get an email from Amazon's email service (SES, Simple Email Service).
In the background:
- CloudTrail records every action anyone takes in our AWS account;
- GuardDuty watches for signs of a break-in;
- WAF (Web Application Firewall) blocks known attack patterns;
- AWS Backup keeps locked copies of the database;
- CloudWatch sends an alarm to a phone if anything breaks.
What it will cost each month:
| What | AWS product | Start (20 students) | 1,000 students, after a year of uploads |
|---|---|---|---|
| The computer running the app | EC2 | $31 | $31 |
| The database | RDS | $14 | $14 |
| Storing photos and videos, and sending them out | S3 and CloudFront | under $1 | $14 |
| AI check on writing | Bedrock | under $1 | $15 |
| Picture check | Rekognition | under $1 | $6 |
| Watching for break-ins | GuardDuty | about $10 | about $10 |
| Firewall | WAF | $8 | $8 |
| Alarms, address book, email | CloudWatch, Route 53, SES | $3 | $5 |
| Backups, staff logins, records of every action | Several | free | free |
| Total | about $66 | about $103 |
Two of these are estimates. GuardDuty will cost between about $5 and $13; its first month is free and shows the real figure. Storage grows every month because nothing is deleted yet.
5. How a social network grows
The right setup depends on size. What's sensible for 1,000 students would be reckless for 10 million, and what's needed for 10 million would waste money at 1,000.
| Size | Members | What the setup looks like |
|---|---|---|
| Pilot (our launch) | 20 to 1,000 | One computer, one database; a person reviews every photo, video and unclear post |
| Growing | 10,000 to 100,000 | Two or three computers, a standby database, a cache |
| Large | 1 to 10 million | Hundreds of computers, the database split across many machines, a team for each area |
| LinkedIn's size | About 1 billion | Its own buildings full of computers, and tools it built itself |
In the job sections, "Growing" and "Large" refer to these sizes.
6. Why we skip most of AWS
Almost every AWS product we don't use falls into one of three groups:
- It has a minimum price even when nobody uses it. Amazon's recommendation engine costs at least about $389 a month, a dedicated search engine at least $350, and one networking product (NAT Gateway, short for Network Address Translation Gateway, section 7.17) about $33 before it does anything. The first two each cost several times our whole setup.
- It solves a problem we don't have yet. A standby database, a cache or a second copy of the app all matter once thousands of people use Thnkrr at once. With 20 to 1,000 students, one computer and one database are plenty.
- Every extra product is one more thing to set up, watch and pay for. Each is a new way for something to break. Big companies have teams for this; we have a few people.
When we reach a size where a product makes sense, its job section says so.
7. The jobs, one by one
Each section explains one job behind Thnkrr: what it is, what we'll use, the other AWS options and their prices, and, where useful, what bigger companies do.
Reading the tables: "Price" is what Amazon charges. Where Amazon charges per use (per GB, per minute, per million), the column also gives what that would cost us, where we know.
7.1 The computer that runs the app
What this is. The app has to run all the time: answering every tap and click, running the safety team's review list, converting videos. It needs a computer that never switches off.
What we'll use. One rented computer from EC2 (Amazon's computer rental). It has 2 processors (the parts that do the work) and 4 GB of memory, about as powerful as a good laptop. It costs about $31 a month, including its hard drive and a fixed internet address that never changes. It uses Amazon's own chip (called Graviton), which costs less for the same work.
Other AWS options:
| Option | In plain words | Price | When we'd use it |
|---|---|---|---|
| Lightsail | A simpler computer rental with storage and internet traffic bundled into one fixed price; less powerful and harder to connect to other AWS products | $24 a month | Not for us: too limited as we grow |
| Fargate | Runs the app packed in a "container" (the app plus everything it needs, sealed together); Amazon manages the computers underneath | about $58 a month for the same power as our computer | Growing: when we want two running copies |
| Auto Scaling | Watches how busy our computers are and adds or removes identical ones automatically | free (you pay for the computers) | Once we have two or more computers |
| Lambda | Runs a small piece of code only when triggered (at a set time, or when a file arrives) and charges per run; each run stops after 15 minutes | 20¢ per million runs (pennies for us) | Small side jobs, like a nightly export |
| EKS (Elastic Kubernetes Service) | Amazon-run Kubernetes, the industry-standard system for spreading hundreds of programs across many computers and restarting any that fail | $73 a month, plus the computers | Large: needs a dedicated team |
| Savings Plans | Promise to rent for 1 to 3 years, and pay 30 to 60% less for the computer itself ($25 of the $31) | saves about $7 to $15 a month | When our free credit runs out |
Outside AWS: DigitalOcean rents the same size of computer for about $24 a month.
How bigger companies do it. LinkedIn began as one program, like ours. At about 100 million members it became unstable, so in 2011 the company stopped building new features for two months and split the program into many smaller ones. Splitting only makes sense with many engineers, so each small program has an owner.
7.2 The database
What this is. The database is the app's memory: every account, post, message, review decision and safety case. It must never lose anything, and must find any record in a fraction of a second.
What we'll use. RDS, Amazon's managed database service, running Postgres (the most popular free database software). A small one costs about $14 a month. Amazon handles repairs, daily backups and small updates. Big version upgrades, roughly once a year, are ours to schedule. Because Postgres is free software, we could move to another company without rewriting anything.
Other AWS options:
| Option | In plain words | Price | When we'd use it |
|---|---|---|---|
| Standby database ("Multi-AZ", short for Multi-Availability Zone, Amazon's term for a data centre) | A live, constantly updated twin in a second data centre; takes over automatically in 1 to 2 minutes if the main one fails | doubles the cost (+$14 a month) | When schools pay and expect no downtime |
| Read copy | A live, read-only twin that answers look-ups (searches, profile views), leaving the main database free to save new data | +$14 a month | Growing: when the database gets busy |
| Aurora | Amazon's re-engineered Postgres: faster, keeps six copies of the data across three data centres, and switches to a standby more quickly | from $57 a month | Large: when the database is what slows everything down |
| DynamoDB | A different kind of database that finds things by a single key, like a giant dictionary: very fast at any size, but can't combine data the way Postgres can ("posts by my classmates") | per use: 63¢ per million saves | Large: billions of chat messages |
| Neptune | A "graph" database that stores people and the links between them, built for questions like "friends of friends of friends" | from $68 a month | Large: deep connection searches |
Watch out: if we skip a big upgrade for too long, Amazon automatically charges an "old version" fee of about $146 a month on our database, ten times its normal price. Upgrading on time avoids it.
Outside AWS: Supabase (from $25 a month) also runs Postgres.
How bigger companies do it. Instagram, Pinterest, Figma and Notion all ran on one ordinary database for years. When it finally got too big, they split their data across many machines, for example one group of customers per machine. LinkedIn eventually built its own database, called Espresso. Lesson 2 has more.
7.3 Speeding things up (the cache)
What this is. Some things are asked for thousands of times: a popular profile, the number of unread messages. Instead of asking the database every time, apps keep a copy in very fast memory: a cache. It's like keeping your most-used things on your desk instead of in a cupboard.
What we'll use. Nothing separate. The database keeps popular data in its own memory, and that's enough at our size.
Other AWS options:
| Option | In plain words | Price | When we'd use it |
|---|---|---|---|
| ElastiCache | Keeps frequently used data in memory (far faster than disk), shared by every copy of the app; holds copies only, since a restart can wipe it | from $6 a month | Growing: when we run two copies of the app |
| MemoryDB | Like ElastiCache, but saves everything safely, so it can be the only place some data lives | from $25 a month | For live counters, like a leaderboard |
How bigger companies do it. Facebook's cache answers billions of requests a second. The hard part isn't speed; it's keeping copies correct when the original changes. Almost every growing social network adds a cache before anything else.
7.4 Storing photos and videos
What this is. Every uploaded photo and video must be stored safely: private until a reviewer approves it, and kept for years.
What we'll use. S3, Amazon's file storage. It keeps every file on many disks in several data centres, so files are practically never lost. Under $1 a month at the start, about $14 at 1,000 students after a year, because nothing is deleted yet.
S3 can also lock a file so nobody, not even us, can delete it before a set date. We'll use that for records we must keep when a safety case is open, for example for the police.
Cheaper shelves for older files. Like moving old boxes from the living room to the attic, S3 can move files nobody opens any more to cheaper storage:
| Shelf | Price per GB a month | The catch | Good for |
|---|---|---|---|
| Standard (what we'll use) | 2.3¢ | None | New photos and videos |
| Infrequent Access | 1.25¢ | A small fee each time a file is opened | Photos older than a few months |
| Glacier | 0.4¢ | Paid for at least 3 months, even if deleted sooner | Archives we rarely open |
| Glacier Deep Archive | 0.1¢ | Takes hours to get a file back | Records kept for years |
We'll start moving older files once the founder decides how long we keep things.
Outside AWS: Backblaze B2 is one of the cheapest storage companies; we plan to keep a second copy of our backups there.
How bigger companies do it. Facebook built its own photo storage in 2010 to hold 260 billion photos. Dropbox moved its files off Amazon onto its own machines and reported saving about $75 million over two years. Both only make sense at enormous size; everyone else rents.
7.5 Our web address, and getting pages to phones quickly
What this is. Two related jobs:
thnkrr.commust point to the right computers, with the padlock that shows a secure connection;- a phone in Pittsburgh shouldn't wait for a computer in Virginia every time it loads a photo, so a delivery network keeps copies of our pages, photos and videos in hundreds of places worldwide.
What we'll use.
- Route 53, Amazon's internet address book, for
thnkrr.com: about $1 a month. - ACM (AWS Certificate Manager) for the padlock certificate that proves the site is really ours: free.
- CloudFront, Amazon's delivery network: the first 1 TB a month is free, which covers us. Our website's own files sit in S3 and go out through CloudFront.
CloudFront can also be told to forget a file instantly. We'll use that when a photo is taken down. Our safety rules give us 2 hours to remove some images, such as private photos shared without permission.
Other AWS options:
| Option | In plain words | Price | When we'd use it |
|---|---|---|---|
| CloudFront fixed-price plan | One fixed monthly price, with a firewall and address book included | $15 a month per website | When traffic passes the free amount. We'll run two websites (thnkrr.com, and media.thnkrr.com for photos and videos), so it would cost $30, against about $9 for our firewall and address book today |
| Amplify Hosting | Builds the website from our code each time it changes and hosts it, with a preview copy of every change | 15¢ per GB sent (about twice CloudFront's price) | For websites that need building on every visit; ours doesn't |
Outside AWS: Cloudflare, a popular rival delivery network, is free to start.
How bigger companies do it. Netflix built its own delivery network, placing its machines inside internet providers' buildings, because sending video is its biggest cost.
7.6 Checking content and keeping students safe
What this is. Every post, photo and video must be checked for bullying, sexual content, contact details, self-harm and child abuse. Machines help; a person decides.
What we'll use:
| What's checked | How | About a month at 1,000 students |
|---|---|---|
| Writing (posts, comments, messages) | An AI model, run on Amazon's Bedrock service, reads each one | $15 |
| Photos | Amazon's picture check, Rekognition, flags worrying photos, then a person always reviews them | $6 |
| Videos | The speech is turned into text and checked like a post (section 7.7), then a person always watches them | nothing extra |
Who decides:
- Photos and videos: a person reviews every one before anyone else sees it. The picture check only puts worrying ones at the top of the list; it never approves anything.
- Writing: the AI lets through writing it's confident is fine and holds back writing it's confident is harmful. Anything it isn't sure about goes to a person, and so does anything about self-harm, so a person can respond with care.
- If the AI is ever unavailable, all writing waits for a person. Nothing goes out unchecked.
Our firm rule on AI: the AI model runs inside our own Amazon account, and Amazon is set not to save anything it reads. Students' writing is never sent to an outside AI company.
Known child-abuse material is checked a different way. Child-safety organisations keep lists of "fingerprints" of known abuse images and videos, and each upload is compared against them. This catches only material already on a list, so human review still matters. Each organisation only shares its list with platforms it has approved, so the founder has to apply to each one. Our app is ready to connect to the lists; which ones we connect is decided before launch.
| List | Cost | Checks |
|---|---|---|
| NCMEC (National Center for Missing & Exploited Children, the US child-safety centre) | Free; we must apply | Photos |
| Microsoft PhotoDNA | Free; we must apply | Photos |
| Google CSAI Match (CSAI: Child Sexual Abuse Imagery) | Free; we must apply | Videos |
| Project Arachnid (Canada) | Free | Photos and videos |
| IWF (Internet Watch Foundation, UK) | Paid membership, about £5,000 a year and up | Photos |
Other AWS options:
| Option | In plain words | Price | When we'd use it |
|---|---|---|---|
| Bedrock Guardrails | Adjustable filters that block harmful topics or personal information going into or coming out of an AI model | 15¢ per 1,000 messages | If we add a feature where AI writes to students |
| Comprehend | Amazon's language-analysis service; its toxicity check scores text for insults, threats and harassment, but can't follow our own rules | 1¢ per 10,000 characters | Not needed: our AI model follows our rules and understands context better |
| Textract | Reads printed and handwritten text, forms and tables from scanned pages and photos of documents | $1.50 per 1,000 pages | If police or courts send us many documents (like court orders) to process |
Outside AWS: WebPurify supplies human reviewers at 2¢ an image. Thorn sells tools that spot new abuse material, at about $30,000 a year.
How bigger companies do it. Meta works with over 15,000 human reviewers, while its AI removes most harmful posts before anyone reports them. Roblox built an AI that spots signs of grooming in chats, and in 2025 gave it away free to other companies. Small platforms have people decide and machines sort the list; huge platforms have machines decide obvious cases and people handle the hard ones.
7.7 Video
What this is. Phones record video in many formats. Each uploaded video is converted so it plays everywhere. The reviewer gets a cover image and a sheet of still frames, and the speech is turned into text so it can be checked like a post.
What we'll use. Two free programs running on our rented computer: ffmpeg converts the video and Whisper writes down the speech. Nothing extra to pay. A person watches every video before it goes live.
Other AWS options:
| Option | In plain words | Price | When we'd use it |
|---|---|---|---|
| MediaConvert | Converts uploaded videos into the formats and sizes every phone can play, on Amazon's computers instead of ours | about 1¢ per minute of video | When videos start slowing our computer down |
| Transcribe | Turns speech in audio or video into written text, more accurately than Whisper, and can flag abusive speech | 0.6¢ per minute | If reviewers spend hours a day on video |
| Rekognition Video | Checks a video for nudity, violence and similar, frame by frame, and reports where in the video it found them | 10¢ per minute | Not planned: a person watches every video anyway |
| IVS (Interactive Video Service) | Broadcasts live video to many viewers at once, like Twitch (which Amazon owns) | from 20¢ an hour | If we ever add live events |
Outside AWS: Mux handles video from upload to playback, but keeps the videos on its side, which makes leaving harder.
How bigger companies do it. Video is the most expensive thing any network handles. Large companies convert videos on separate computers, so a burst of uploads never slows down the rest of the app.
7.8 Email, texts and notifications
What this is. Sending consent emails to parents, sign-in codes, alerts to our staff, and "someone messaged you" notices.
What we'll use.
- SES, Amazon's email service, for emails to students, parents and teachers: about 50¢ a month at 1,000 students.
- SNS (Simple Notification Service), which sends one message to many places at once, for our staff alarms by email and text: nearly free.
Other AWS options:
| Option | In plain words | Price | When we'd use it |
|---|---|---|---|
| End User Messaging | Sends text messages (SMS, Short Message Service) and pop-up notifications to phone apps | about 1¢ per US text, plus $1 a month for a phone number | If we add sign-in by text, or a phone app |
How bigger companies do it. At large size, notifications become their own system: it decides what's worth sending, bundles messages into daily summaries, and respects quiet hours. The challenge becomes not annoying people, rather than cost.
7.9 Signing in
What this is. Letting students, mentors and teachers sign in safely, and letting our own staff sign in to AWS.
What we'll use.
- For students, mentors and teachers: our own sign-in, already built into the app. It knows our special rules: parental consent, school email checks, suspended accounts.
- For our staff: each person gets their own AWS login with a code from their phone (two-step login), through IAM Identity Center (IAM: Identity and Access Management), which is free.
Other AWS options:
| Option | In plain words | Price | When we'd use it |
|---|---|---|---|
| Cognito | Amazon's ready-made sign-up and sign-in system: login pages, password resets, two-step login, and "sign in with Google or Microsoft" | free for 10,000 users a month, then about 1¢ each | Maybe, if schools want "sign in with your school account" at large size |
How bigger companies do it. Sign-in becomes a whole security team: spotting stolen passwords, logins from unusual places, and fake accounts.
7.10 Search
What this is. Finding a person by name, even misspelt, filtering by school and interests, and never showing anyone the searcher isn't allowed to see.
What we'll use. Search built into our database. We tested it with a million made-up profiles: names come back in a few thousandths of a second. Free.
Other AWS options:
| Option | In plain words | Price | When we'd use it |
|---|---|---|---|
| OpenSearch | A separate search engine (Amazon's version of Elasticsearch) that keeps its own copy of the data, built for huge collections and finely tuned ranking | $350 to $735 a month | Large: millions of profiles |
| "Meaning" search (Bedrock plus our database) | An AI model turns each post into numbers that describe its meaning, so a search for "building robots" also finds posts about "robotics" | pennies a month | When we want smarter search of posts |
How bigger companies do it. LinkedIn built its own search engine in 2014. In 2025 the grocery app Instacart went the other way: it moved its search off a separate engine and back into its database, because keeping two copies of the data in step caused problems. Databases can do more than people think.
7.11 Background work
What this is. Some work is too slow to make a student wait: converting a video, sending 100 emails, nightly clean-ups. The app puts these jobs on a queue, a to-do list that small background programs (workers) work through.
What we'll use. A free queue that lives inside our database. One less thing to run.
Other AWS options:
| Option | In plain words | Price | When we'd use it |
|---|---|---|---|
| SQS (Simple Queue Service) | Amazon's job queue: holds jobs safely until a worker on any computer picks them up, and retries ones that fail | 40¢ per million jobs (pennies for us) | Growing: when workers move to separate computers |
| EventBridge | Starts a job on a schedule (every night at 2 am) or when something happens in another Amazon product (a file arrives) | $1 per million | When we connect Amazon products together |
| Step Functions | Chains several steps into one process, with waiting and retries, drawn as a flowchart; charged per step | 2.5¢ per 1,000 steps | Long processes; can get expensive (Lesson 1) |
| MSK (Managed Streaming for Apache Kafka) | A running record of everything that happens in the app (a post, a like, a sign-in), which many systems can read | from about $87 a month | Large: many systems need the same information |
How bigger companies do it. Around 2010, LinkedIn found every system was building its own pipe to every other system, a growing tangle. So it built Kafka: one central stream of events that every system writes to and reads from. Kafka is now used almost everywhere; Netflix and Uber each pass about a trillion events a day through it.
7.12 Suggestions and "people you may know"
What this is. Suggesting classmates to connect with, mentors to follow, and posts worth seeing.
What we'll use. Simple rules in the database: same school, shared interests, friends of friends. Free.
Other AWS options:
| Option | In plain words | Price | When we'd use it |
|---|---|---|---|
| Personalize | Learns from what members click, follow and like, and recommends people or posts; needs a lot of activity to be useful | at least about $389 a month | Large: millions of users |
| SageMaker | Tools for data scientists to train their own AI models on our data and run them | from about $41 a month | Large: with a data science team |
How bigger companies do it. LinkedIn built its own database for "people you may know", holding about 270 billion connections. After moving to it, LinkedIn could serve 150 times more suggestions a second. The lesson for us: store connections neatly from day one, so they're easy to move later.
7.13 Reports and analytics
What this is. Answering questions like "how many students posted this week, by school?" without slowing down the app, and keeping old records searchable for legal requests.
What we'll use. Simple counts from the database.
Other AWS options:
| Option | In plain words | Price | When we'd use it |
|---|---|---|---|
| Athena | Runs database-style questions directly on old records saved as files in S3, without loading them back into the database | $5 per TB searched (a fraction of a cent for us) | Soon, for archived records |
| QuickSight | Builds charts and dashboards from our data, for people who don't write code | $3 a month per viewer | When the team or schools want dashboards |
| Redshift | A "data warehouse": a separate database built only for reports over huge amounts of data | from about $90 a month | Large: with a data team |
How bigger companies do it. LinkedIn built its own reporting database, which powers features like counting who viewed your profile across a billion members.
7.14 Knowing when something breaks
What this is. When something goes wrong we need to know fast, know what broke, and have someone woken up if it's serious.
What we'll use.
- CloudWatch keeps the app's logs (a diary of everything it does) and sends alarms to a phone and an email.
- A Route 53 health check visits the site every 30 seconds from outside our computer and raises the alarm if it doesn't answer.
CloudWatch costs about $1 to $3 a month, and the health check $1.50. Both are Amazon products, so we also plan a free second check run by a company other than Amazon. That way we'd still hear about it if Amazon itself had problems.
Other AWS options:
| Option | In plain words | Price | When we'd use it |
|---|---|---|---|
| X-Ray | Traces one request as it passes through every part of the system, showing where time was spent or where it failed | $5 per million requests traced | Growing: once the app is several programs |
| Synthetics | A scripted robot that signs in and clicks through key pages on a schedule, and alarms if any step fails | about $10 a month | Not needed while the simple check works |
How bigger companies do it. In 2017, an Amazon outage stopped Amazon's own status page from updating, because the page was stored on the very thing that broke. In 2021, Slack's dashboards went down at the same moment as Slack. Your alarm system must not depend on the thing it watches.
7.15 Security
What this is. Blocking attacks, spotting break-ins early, and protecting what we know about children.
What we'll use:
| Protection | What it does | Price |
|---|---|---|
| WAF (Web Application Firewall) | Checks every incoming request and blocks common attack patterns, such as attempts to break into the database through a form | about $8 a month |
| Shield Standard | Absorbs floods of fake traffic meant to knock the site over | free |
| GuardDuty | Watches for signs of a break-in and raises an alarm | about $5 to $13 a month |
| CloudTrail | Records every action anyone takes in our AWS account | free |
GuardDuty spots things like our passwords being used from another country, our computer contacting known criminal addresses, or someone switching off CloudTrail's records. It only warns; a person has to act.
Other AWS options:
| Option | In plain words | Price | When we'd use it |
|---|---|---|---|
| Inspector | Compares the software installed on our computer against lists of known security holes, and tells us what to update | about $1.30 a month | Soon: cheap, and schools may ask |
| Security Hub | Checks our AWS settings against security best practice and gathers every security warning in one place | about $4 a month | When a school or insurer asks for proof |
| Config | Keeps a history of every change to our AWS settings (who changed what, and when) and flags changes that break our rules | a few dollars a month | When we need to show auditors our history |
| Macie | Scans stored files for personal information (names, ID numbers) and reports where it is | $1 per GB checked | Not needed: we know what we store |
| Shield Advanced | Extra protection and an expert team during big attacks | $3,000 a month | Very large, high-profile sites |
How bigger companies do it. Large companies run a security team around the clock. The first steps are the same as ours: two-step logins, no shared passwords, a record of every action, and alarms that reach a person.
7.16 Accounts, permissions and passwords
What this is. Deciding who can do what in our AWS account, and keeping passwords and keys safe.
What we'll use:
- The account owner's login (the one created when the account was opened, which can do anything) is locked away with two-step login and never used day to day.
- Each person gets their own, more limited login through IAM Identity Center (free).
- One account-wide setting stops Amazon using our data to improve its AI products, set through AWS Organizations (free).
- Our computer gets a built-in permission (Amazon calls it a "role"), so no Amazon password ever has to be stored on it.
- Passwords the app needs, like the database password, are kept in a protected file on our computer, with a copy in Parameter Store, Amazon's free settings store, so a replacement computer can fetch them.
- Engineers reach the computer through Session Manager: typing commands in a browser window, with Amazon checking who they are. The computer has no other way in, and every session is recorded. Free.
Other AWS options:
| Option | In plain words | Price | When we'd use it |
|---|---|---|---|
| Secrets Manager | Stores passwords and changes them automatically | 40¢ a month per password | When several computers share passwords |
| KMS (Key Management Service) | Encryption keys we create and control: we decide who can use them, and can switch them off | $1 a month per key | If a school requires it |
| Control Tower | Sets up several AWS accounts (for example, testing and real use) with safety rules and central record-keeping already in place | a few dollars a month | When we add a test copy of Thnkrr |
7.17 The private network
What this is. Our computer and database sit on a private network, so only the right things can talk to each other. The database accepts only our app. The app accepts visitors only through CloudFront.
What we'll use. Amazon's standard private network (VPC, Virtual Private Cloud), free.
Two costs to watch out for:
- NAT Gateway, a common surprise on small AWS bills. Some setups hide their computers completely from the internet (no "public address" anyone can reach them on). NAT Gateway lets those hidden computers still reach out to the internet. It costs about $33 a month before any use. Our computer is reachable only through CloudFront and a firewall, so we don't need it.
- Data leaving Amazon for the internet costs 9¢ per GB, except through CloudFront's free amount. That's why everything goes out through CloudFront.
How bigger companies do it. When Facebook bought Instagram, the two companies' private networks used clashing addresses, and Instagram had to rebuild its network before it could move. Small choices early can matter years later.
7.18 Backups
What this is. Never losing data: undoing mistakes, surviving a broken database, and even surviving losing our whole AWS account.
What we'll use:
- Daily database backups kept for 35 days, which can rewind the database to any minute: free at our size.
- An extra backup before every change to how the database is organised.
- A monthly backup kept for 7 years in a locked vault nobody can empty early, through AWS Backup: a few dollars a month.
- A practice restore every three months, to prove the backups work.
- A copy at a different company (Backblaze B2), so losing our Amazon account wouldn't lose our data.
Other AWS options:
| Option | In plain words | Price | When we'd use it |
|---|---|---|---|
| Copies in a second region | Backups also stored in another part of the country | storage plus copying fees | If a school or law requires it |
| Elastic Disaster Recovery | Keeps an up-to-date copy of a whole computer in another region, ready to switch on within minutes | about $20 a month per computer | When recovering in minutes really matters |
How bigger companies do it. Netflix runs a tool called Chaos Monkey that switches off its own computers during working hours, to prove the site survives. The rule everyone follows: a backup you've never restored is not a backup.
7.19 Building and releasing new versions
What this is. Testing every change automatically, then putting the new version live without breaking anything.
What we'll use.
- GitHub, where our code lives, runs the automatic tests on every change.
- A short set of commands (a "deploy script") puts each new version on our computer without taking the site down.
- CloudFormation, free, sets up parts of our AWS account from written instructions instead of clicks, so they can be rebuilt exactly.
Other AWS options: Amazon's own build tools (CodeBuild, CodePipeline) make sense mainly for teams that do everything inside AWS. Three of Amazon's older code tools have closed to new customers since 2024.
How bigger companies do it. LinkedIn tries every new version on a small slice of real users for 30 minutes, and compares it with the old one before everyone gets it. This is called a canary, after the birds miners took underground as an early warning.
7.20 Keeping the bill under control
What this is. Never getting a surprise bill.
What we'll use. Budgets emails us when the month's spending passes $80, and again at $95. Before we reach 1,000 students, we'll raise these to $120 and $140, so they don't go off every month. Cost Anomaly Detection warns about unusual spending. Both are free.
Paying less later: promising to rent for 1 or 3 years (Savings Plans) cuts costs by 30 to 60%. It isn't worth it while free credit pays the bill.
How bigger companies do it. Big companies sign multi-year deals. Pinterest has committed $4 billion to AWS through 2031. Snap committed $2 billion to Google and $1 billion to AWS. The discount comes from the promise.
7.21 Products Amazon is closing
So nobody plans around them:
| Product | What's happening |
|---|---|
| App Runner (runs apps for you) | No new customers since 30 April 2026 |
| Pinpoint (texts and campaigns) | Ends 30 October 2026; its texting continues as End User Messaging (section 7.8) |
| Kendra (document search) | No new customers since 30 July 2026 |
| CodeCommit, Cloud9, CodeCatalyst (code tools) | Closed to new customers in 2024 and 2025 |
| Elastic Transcoder (video) | Ended November 2025; replaced by MediaConvert |
8. Lessons from other companies
Real stories, mostly from the companies' own engineering blogs and outage reports, grouped by what they teach. Some are told in more detail in the job sections above.
Lesson 1: Keep it simple until a real problem forces a change.
- Segment (2018): split its product into 50+ small programs, then found three engineers spent most of their time keeping them running. It merged them back into one.
- Amazon's Prime Video team (2023): rebuilt one internal monitoring tool, made from many small pieces that Amazon charged for at every single step, as one simple program, and cut its cost by over 90%.
- Instagram and LinkedIn (sections 7.1 and 7.2): both grew huge before splitting anything.
For us: one computer and one program is the right choice at launch, not a shortcut.
Lesson 2: One database lasts a long time, and when it doesn't, change it slowly.
- Figma (2024): its database workload grew 100 times in four years before it had to split it. The split took nine months, with no disruption for customers.
- Notion (2021 and 2023): split its database by customer workspace, then split it again two years later, both times without taking the site down.
- Discord (2015 to 2022): its storage for chat messages broke at 100 million messages, then again at trillions. Each time it copied, compared, then switched.
For us: if we ever split, the natural unit is the school.
Lesson 3: Outages happen, even at Amazon.
- Amazon's Virginia region, where we'll be, had major outages in 2011, 2017, 2021, 2023 and 2025.
- In 2017, an engineer's typo took Amazon's file storage down for hours.
- In October 2025, a hidden fault in one of Amazon's internal systems caused problems for about 14 hours.
For us: keep a backup at a second company, keep a second alarm check outside Amazon, and accept that a few hours of outage a year is possible at our size.
Lesson 4: Practise for failure.
- Netflix (section 7.18) switches off its own computers on purpose.
- GitHub (2018): an automatic switch-over that had never been properly tested turned a 43-second network problem into 24 hours of disruption.
For us: the practice restore every three months.
Lesson 5: Child safety is shared work, and on by default.
- Microsoft's PhotoDNA (2009) and free tools from Meta (2019 and 2022) let any platform check for known abuse material without building it themselves.
- Discord (2023) switched on safety features for teenagers by default.
- Yubo (2022), a social app for teenagers, checked every user's age.
For us: use the shared tools, have a person look at every photo, video and unclear case, and make safety the default.
Lesson 6: Big moves take years, even for giants.
- LinkedIn planned in 2019 to move onto Microsoft's cloud (Microsoft owns LinkedIn), and paused the move in 2022.
- 37signals, the makers of Basecamp, left AWS for their own computers and expect to save over $10 million in five years. But they had a steady business and engineers to look after the machines.
For us: use tools we could leave if we had to (free database software, standard file storage), and don't plan a move we don't need.
9. The whole list of AWS products
Every AWS product in this document. When: Launch (part of the launch plan), Later (when we grow), No (not expected).
| Job | AWS product | What it does | When | Price |
|---|---|---|---|---|
| Running the app | EC2 | Rents us a computer | Launch | $31 a month |
| Running the app | Lightsail | Simple fixed-price computer | No | $24 a month |
| Running the app | Fargate | Runs the app in containers on computers Amazon manages | Later | about $58 a month per copy |
| Running the app | Auto Scaling | Adds computers when busy | Later | free, plus the computers |
| Running the app | Lambda | Runs small code when triggered, charged per run | Later | pennies |
| Running the app | EKS | Amazon-run Kubernetes for hundreds of programs | No | $73 a month, plus computers |
| Running the app | Savings Plans | Discount for renting 1 to 3 years | Later | saves 30 to 60% |
| Database | RDS (Postgres) | Our database | Launch | $14 a month |
| Database | Standby database (Multi-AZ) | Live twin in another data centre | Later | +$14 a month |
| Database | Read copy | Handles look-ups | Later | +$14 a month |
| Database | Aurora | Amazon's faster Postgres | Later | from $57 a month |
| Database | DynamoDB | Key-based database, fast at any size | No | per use |
| Database | Neptune | Graph database for connections between people | No | from $68 a month |
| Cache | ElastiCache | Shared in-memory copy of popular data | Later | from $6 a month |
| Cache | MemoryDB | Memory store that survives restarts | No | from $25 a month |
| Files | S3 | File storage, with locks | Launch | under $1 to $14 a month |
| Files | S3 Glacier | Cheap storage for old files | Later | 0.1¢ to 0.4¢ per GB a month |
| Web address | Route 53 | Internet address book | Launch | about $1 a month |
| Monitoring | Route 53 health check | Checks from outside that the site answers | Launch | $1.50 a month |
| Web address | ACM | Padlock certificates | Launch | free |
| Delivery | CloudFront | Sends pages and photos worldwide | Launch | free at our size |
| Delivery | Amplify Hosting | Builds and hosts websites | No | 15¢ per GB sent |
| Safety | Bedrock | Runs our AI writing check | Launch | $15 a month at 1,000 students |
| Safety | Rekognition | Picture check | Launch | $6 a month at 1,000 students |
| Safety | Bedrock Guardrails | Safety filters for AI features | Later | 15¢ per 1,000 messages |
| Safety | Comprehend | Older language check | No | 1¢ per 10,000 characters |
| Safety | Textract | Reads scanned documents | Later | $1.50 per 1,000 pages |
| Video | MediaConvert | Converts videos | Later | 1¢ per minute |
| Video | Transcribe | Speech to text | Later | 0.6¢ per minute |
| Video | Rekognition Video | Checks every video frame | No | 10¢ per minute |
| Video | IVS | Live streaming | No | from 20¢ an hour |
| Messages | SES | Sends email | Launch | under $1 a month |
| Messages | SNS | Sends staff alarms | Launch | nearly free |
| Messages | End User Messaging | Texts and phone-app notifications | Later | 1¢ per text |
| Sign-in | IAM Identity Center | Staff logins | Launch | free |
| Sign-in | Cognito | Ready-made sign-in pages | No | free for 10,000 users |
| Search | OpenSearch | Separate search engine | Later | from $350 a month |
| Background work | SQS | Job to-do list | Later | 40¢ per million jobs |
| Background work | EventBridge | Scheduled and triggered jobs | Later | $1 per million |
| Background work | Step Functions | Flowchart jobs | No | 2.5¢ per 1,000 steps |
| Background work | MSK (Kafka) | Shared event stream | No | from $87 a month |
| Suggestions | Personalize | Ready-made recommendations | No | from $389 a month |
| Suggestions | SageMaker | Build our own AI models | No | from $41 a month |
| Reports | Athena | Searches archived files | Later | $5 per TB searched |
| Reports | QuickSight | Dashboards | Later | $3 a month per viewer |
| Reports | Redshift | Data warehouse | No | from $90 a month |
| Monitoring | CloudWatch | Logs and alarms | Launch | $1 to $3 a month |
| Monitoring | X-Ray | Follows one click through the system | Later | $5 per million |
| Monitoring | Synthetics | Robot that clicks through the site | No | about $10 a month |
| Security | WAF | Firewall | Launch | about $8 a month |
| Security | Shield Standard | Absorbs fake-traffic floods | Launch | free |
| Security | GuardDuty | Break-in alarms | Launch | $5 to $13 a month |
| Security | CloudTrail | Records every action | Launch | free |
| Security | Inspector | Finds weak spots in software | Later | about $1.30 a month |
| Security | Security Hub | Security scorecard | Later | about $4 a month |
| Security | Config | Records every setup change | Later | a few dollars a month |
| Security | Macie | Finds personal data in files | No | $1 per GB checked |
| Security | Shield Advanced | Premium attack protection | No | $3,000 a month |
| Accounts | IAM, Organizations | Who can do what; account-wide rules | Launch | free |
| Accounts | Parameter Store | Stores settings and passwords | Launch | free |
| Accounts | Session Manager | Safe way into our computer | Launch | free |
| Accounts | Secrets Manager | Changes passwords automatically | Later | 40¢ a month per password |
| Accounts | KMS | Encryption keys we control | Later | $1 a month per key |
| Accounts | Control Tower | Separate test and real accounts | Later | a few dollars a month |
| Network | VPC | Private network | Launch | free |
| Network | NAT Gateway | Lets hidden computers reach the internet | No | about $33 a month |
| Backups | RDS backups | Rewinds the database to any minute | Launch | free |
| Backups | AWS Backup | Locked long-term backups | Launch | a few dollars a month |
| Backups | Elastic Disaster Recovery | Standby computer in another region | No | about $20 a month |
| Releasing | CloudFormation | Sets up AWS from written instructions | Launch | free |
| Releasing | CodeBuild, CodePipeline | Amazon's build tools | No | per minute |
| Bill | Budgets, Cost Anomaly Detection | Spending alarms | Launch | free |
10. Sources
All AWS prices are for Amazon's US East (N. Virginia) region, read from Amazon's own pricing pages on 9 and 10 October 2026. More detail is in the production and supplier research notes in the same folder.
AWS prices
- EC2: https://aws.amazon.com/ec2/pricing/on-demand/
- Lightsail: https://aws.amazon.com/lightsail/pricing/
- Fargate: https://aws.amazon.com/fargate/pricing/
- Lambda: https://aws.amazon.com/lambda/pricing/
- EKS: https://aws.amazon.com/eks/pricing/
- Savings Plans: https://aws.amazon.com/savingsplans/compute-pricing/
- RDS for PostgreSQL: https://aws.amazon.com/rds/postgresql/pricing/
- RDS "old version" fee: https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/extended-support.html
- Aurora: https://aws.amazon.com/rds/aurora/pricing/
- DynamoDB: https://aws.amazon.com/dynamodb/pricing/on-demand/
- Neptune: https://aws.amazon.com/neptune/pricing/
- ElastiCache: https://aws.amazon.com/elasticache/pricing/
- MemoryDB: https://aws.amazon.com/memorydb/pricing/
- S3: https://aws.amazon.com/s3/pricing/
- Route 53: https://aws.amazon.com/route53/pricing/
- ACM: https://aws.amazon.com/certificate-manager/pricing/
- CloudFront: https://aws.amazon.com/cloudfront/pricing/
- Amplify: https://aws.amazon.com/amplify/pricing/
- Bedrock and Guardrails: https://aws.amazon.com/bedrock/pricing/
- Rekognition: https://aws.amazon.com/rekognition/pricing/
- Comprehend: https://aws.amazon.com/comprehend/pricing/
- Textract: https://aws.amazon.com/textract/pricing/
- MediaConvert: https://aws.amazon.com/mediaconvert/pricing/
- Transcribe: https://aws.amazon.com/transcribe/pricing/
- IVS: https://aws.amazon.com/ivs/pricing/
- SES: https://aws.amazon.com/ses/pricing/
- SNS: https://aws.amazon.com/sns/pricing/
- End User Messaging: https://aws.amazon.com/end-user-messaging/pricing/
- Cognito: https://aws.amazon.com/cognito/pricing/
- OpenSearch: https://aws.amazon.com/opensearch-service/pricing/
- SQS: https://aws.amazon.com/sqs/pricing/
- EventBridge: https://aws.amazon.com/eventbridge/pricing/
- Step Functions: https://aws.amazon.com/step-functions/pricing/
- MSK: https://aws.amazon.com/msk/pricing/
- Personalize: https://aws.amazon.com/personalize/pricing/
- SageMaker: https://aws.amazon.com/sagemaker/ai/pricing/
- Athena: https://aws.amazon.com/athena/pricing/
- QuickSight: https://aws.amazon.com/quicksight/pricing/
- Redshift: https://aws.amazon.com/redshift/pricing/
- CloudWatch (including Synthetics): https://aws.amazon.com/cloudwatch/pricing/
- X-Ray: https://aws.amazon.com/xray/pricing/
- WAF: https://aws.amazon.com/waf/pricing/
- Shield: https://aws.amazon.com/shield/pricing/
- GuardDuty: https://aws.amazon.com/guardduty/pricing/
- CloudTrail: https://aws.amazon.com/cloudtrail/pricing/
- Inspector: https://aws.amazon.com/inspector/pricing/
- Security Hub: https://aws.amazon.com/security-hub/pricing/
- Config: https://aws.amazon.com/config/pricing/
- Macie: https://aws.amazon.com/macie/pricing/
- Secrets Manager: https://aws.amazon.com/secrets-manager/pricing/
- KMS: https://aws.amazon.com/kms/pricing/
- Parameter Store and Session Manager: https://aws.amazon.com/systems-manager/pricing/
- Control Tower: https://aws.amazon.com/controltower/pricing/
- NAT Gateway and data transfer: https://aws.amazon.com/vpc/pricing/
- AWS Backup: https://aws.amazon.com/backup/pricing/
- Elastic Disaster Recovery: https://aws.amazon.com/disaster-recovery/pricing/
- CloudFormation: https://aws.amazon.com/cloudformation/pricing/
- CodeBuild: https://aws.amazon.com/codebuild/pricing/
- Budgets: https://aws.amazon.com/aws-cost-management/aws-budgets/pricing/
- AWS free tier for new accounts: https://aws.amazon.com/free/
- App Runner closure: https://aws.amazon.com/apprunner/
- Pinpoint closure: https://docs.aws.amazon.com/pinpoint/latest/userguide/migrate.html
- Kendra closure: https://docs.aws.amazon.com/kendra/latest/dg/kendra-availability-change.html
Other companies' prices
- DigitalOcean: https://www.digitalocean.com/pricing
- Supabase: https://supabase.com/pricing
- Backblaze B2: https://www.backblaze.com/cloud-storage/pricing
- Cloudflare: https://www.cloudflare.com/plans/network-cdn/
- Mux: https://www.mux.com/pricing
- Google's child-safety tools: https://protectingchildren.google/tools-for-partners/
- Meta's free matching tools: https://github.com/facebook/ThreatExchange
Company stories
- LinkedIn's history: https://engineering.linkedin.com/architecture/brief-history-scaling-linkedin
- LinkedIn and Kafka: https://engineering.linkedin.com/distributed-systems/log-what-every-software-engineer-should-know-about-real-time-datas-unifying
- LinkedIn's database, Espresso: https://engineering.linkedin.com/blog/2017/08/migrating-from-oracle-to-espresso
- LinkedIn's search engine: https://engineering.linkedin.com/search/did-you-mean-galene
- LinkedIn's "people you may know": https://www.linkedin.com/blog/engineering/graph-systems/how-liquid-connects-everything-so-our-members-can-do-anything
- LinkedIn's traffic tests: https://engineering.linkedin.com/blog/2017/05/trafficshift--load-testing-at-scale
- LinkedIn's paused cloud move: press coverage of CNBC's report of 14 December 2023
- Instagram: https://instagram-engineering.com/what-powers-instagram-hundreds-of-instances-dozens-of-technologies-adf2e22da2ad
- Instagram's move to Facebook: https://instagram-engineering.com/migrating-from-aws-to-fb-86b16f6766e2
- Figma: https://www.figma.com/blog/how-figmas-databases-team-lived-to-tell-the-scale/
- Notion: https://www.notion.com/blog/sharding-postgres-at-notion
- Discord: https://discord.com/blog/how-discord-stores-trillions-of-messages
- Instacart: https://tech.instacart.com/how-instacart-built-a-modern-search-infrastructure-on-postgres-c528fa601d54
- Segment: https://www.twilio.com/en-us/blog/developers/best-practices/goodbye-microservices
- Prime Video (news coverage; the original post was removed): https://www.infoq.com/news/2023/05/prime-ec2-ecs-saves-costs/
- GitHub's 2018 outage: https://github.blog/2018-10-30-oct21-post-incident-analysis/
- Amazon's outage reports: https://aws.amazon.com/message/41926/ (2017) and https://aws.amazon.com/message/101925/ (2025)
- Slack's 2021 outage: https://slack.engineering/slacks-outage-on-january-4th-2021/
- Netflix's Chaos Monkey: https://techblog.netflix.com/2011/07/netflix-simian-army.html
- Facebook's cache: https://www.usenix.org/node/172909
- Facebook's photo storage: https://www.usenix.org/conference/osdi10/finding-needle-haystack-facebooks-photo-storage
- Dropbox's savings: Dropbox's stock market filing (Form S-1, February 2018)
- 37signals: https://world.hey.com/dhh/our-cloud-exit-savings-will-now-top-ten-million-over-five-years-c7d9b5bd
- Meta's free matching tool: https://about.fb.com/news/2022/12/meta-launches-new-content-moderation-tool/
- Roblox's grooming detection: https://corp.roblox.com/newsroom/2025/08/open-sourcing-roblox-sentinel-preemptive-risk-detection
- Meta's review teams: https://transparency.meta.com/enforcement/detecting-violations/
- Discord's teen safety: https://discord.com/safety/safer-place-for-teens