Python Automation for Scheduled Tasks
Budget: $30 – $50 USD
I’m building a scheduling system in Python that automatically handles three recurring jobs for my organization: daily data backups, timely email notifications, and routine report generation. Each of these tasks must run without manual intervention, triggered by precise schedules and backed by robust logging and error-handling.
The scripts will interact with my local machines, several cloud services (AWS S3 and Gmail API, for example), and a handful of third-party REST APIs that supply the source data for our reports. I’m comfortable providing access keys and test endpoints once we kick off.
Core expectations
• Clean, well-documented Python 3 code that can be dropped into a virtualenv and started with a single command.
• Use of reliable scheduling tooling—APScheduler, Celery with a message broker, or another proven approach you recommend.
• Configuration files or environment variables so I can tweak run times, API keys, and storage paths without touching the code.
• Comprehensive logging with clear failure alerts (email or Slack is fine).
• A short README outlining setup, dependency installation (pip/Poetry), and recovery steps.
Acceptance criteria
1. Backups reach both a local directory and my designated S3 bucket, retaining at least seven daily versions.
2. Email notifications are sent exactly on schedule, with a retry strategy in case of transient SMTP issues.
3. Report generation pulls fresh data from the external APIs, compiles it to PDF or CSV, and stores the result locally and in the cloud.
4. All three jobs survive a service or system reboot by restarting automatically.
If you have a track record of building similar automation and can start soon, let’s talk.
The scripts will interact with my local machines, several cloud services (AWS S3 and Gmail API, for example), and a handful of third-party REST APIs that supply the source data for our reports. I’m comfortable providing access keys and test endpoints once we kick off.
Core expectations
• Clean, well-documented Python 3 code that can be dropped into a virtualenv and started with a single command.
• Use of reliable scheduling tooling—APScheduler, Celery with a message broker, or another proven approach you recommend.
• Configuration files or environment variables so I can tweak run times, API keys, and storage paths without touching the code.
• Comprehensive logging with clear failure alerts (email or Slack is fine).
• A short README outlining setup, dependency installation (pip/Poetry), and recovery steps.
Acceptance criteria
1. Backups reach both a local directory and my designated S3 bucket, retaining at least seven daily versions.
2. Email notifications are sent exactly on schedule, with a retry strategy in case of transient SMTP issues.
3. Report generation pulls fresh data from the external APIs, compiles it to PDF or CSV, and stores the result locally and in the cloud.
4. All three jobs survive a service or system reboot by restarting automatically.
If you have a track record of building similar automation and can start soon, let’s talk.
Related categories:
Python
Linux
Software Architecture
Amazon Web Services
API
Automation
Data Backup
Celery