I built Statementory to review UCAS personal statements with AI. Score out of 100, line-by-line annotations, rewrites, improvement plan. The kind of feedback a good teacher gives you, available at 2am the night before the deadline.

Here's what I learned building it solo.

Everything flows from one constraint: the AI takes 5 minutes

Claude processing a full personal statement and generating structured feedback takes 5 to 10 minutes. Vercel serverless functions timeout at 10 to 60 seconds depending on your plan. So the obvious approach — hit the AI API directly from a route handler — was never going to work.

The solution was separating the job from the request. The API route triggers a background job and returns immediately. The job runs on a separate worker for as long as it needs. The user gets an email when it's done.