flashman
← All posts

Cron jobs in production: a pre-deploy checklist

Timezone, daylight saving, overlap, and idempotency—before your nightly job runs twice.

2026-06-12 · 6 min read · Rahul Chitturi

  • cron
  • devops

Cron expressions are compact and easy to get wrong. A job scheduled for midnight local time behaves differently across UTC servers, Kubernetes nodes, and developer laptops.

Before you ship

  • Confirm UTC vs local timezone in the scheduler
  • Preview next 10 run times including DST boundaries
  • Document the human meaning in comments
  • Make jobs idempotent (safe if run twice)
  • Alert on missed runs, not only failures

Kubernetes note

CronJob resources use the controller manager timezone unless you set spec.timeZone (supported in newer versions). Test in staging with the same cluster version.

Try these tools