Cron Job Scheduler API
A cron job scheduling service with job definition, scheduling, execution tracking, retry policies, and concurrent job limits. Supports cron expressions, one-time jobs, job dependencies, and executi...
Target user
DevOps engineers who schedule recurring tasks
Problem
Applications need a reliable job scheduler with cron expressions, retries, and dependencies without relying on OS cron or complex workflow engines.
Requirements
- Define jobs with cron expressions
- Schedule and execute jobs reliably
- Track execution history and status
- Retry failed jobs with backoff
- Manage job dependencies and ordering
Core technologies
Go, Gin, PostgreSQL
Completion criteria
A job scheduler with cron expressions, execution tracking, retries, dependencies, and alerting.
Optional extensions
- Add job prioritization
- Implement distributed execution
- Add job timeout handling
- Support dynamic job params
Project phases
Phase 1: Phase 1: Job Definition
Tasks: Set up Go Gin project, Build job data model, Implement cron expression parsing, Create job CRUD API
Phase 2: Phase 2: Scheduling and Execution
Tasks: Implement job scheduler loop, Add execution tracking, Build retry with backoff, Create concurrent job limits
Phase 3: Phase 3: Dependencies and Monitoring
Tasks: Implement job dependencies, Add execution logs, Create alerting for failures, Build admin dashboard