🏗️ ArchitectureBy Neel VoraDecember 6, 20252 min read

The Background Jobs System I Built and Why I Removed It

CronVercelAutomationCleanup JobsAnalytics

By Neel Vora

This post walks through how I built background Jobs System I Built and Why I Removed It, and where it fits in the rest of my work.

Large government platforms with heavy traffic taught me that anything slow needs to run in the background - patterns I now apply to AI workloads.

At one point I needed a way to run recurring maintenance tasks for my portfolio.

Examples included:

  • Cleaning old analytics events
  • Generating scheduled summaries
  • Running health checks
  • Resetting temporary RAG data

So I designed a small background job system using Vercel cron.

The cron setup

I created endpoints like:

  • /api/jobs/daily
  • /api/jobs/hourly

Each one ran logic that used Supabase to clean or update certain records.

Vercel supports cron through its dashboard. It worked well until deployment conflicts began showing up.

Why I removed it

My site is very active during development, and the cron system triggered at the wrong times during builds.

The main issues were:

  • Conflicts during redeploys
  • Delayed builds caused by pending cron invocations
  • No need for long term scheduled automation yet

The takeaway

The architecture is sound. The timing was not.

I plan to reintroduce a more robust background job system later using something like Fly.io machines or Supabase functions.

Keep exploring

From here you can:

  • Visit /neel-vora for more background about me and my work.
  • Browse more posts on the blog.

Thanks for reading! If you found this useful, check out my other posts or explore the live demos in my AI Lab.

More Posts