← Zakázky

Full-Stack Python Developer needed to build an Isolated Bulk Email Marketing SaaS

Rozpočet: $350.0 FIXED / ⭐ 0.00 (0) Bangladesh

python, api, api-integration, celery, redis, postgresql, docker, docker-compose

Project Overview We are building a lightweight, high-performance, multi-tenant bulk email marketing platform from scratch. The system is designed to execute cold email outreach campaigns delivering 100,000 emails strictly within a fixed 6-hour daily time window (6:00 PM to 12:00 AM Bangladesh Time). The architecture must distribute the load dynamically across a rotating pool of client-owned sub-domains using Amazon SES via API. It requires strict data and runtime isolation using Docker containers so that multiple clients can run their infrastructure independently without interfering with each other's queues, bounce tracking, or sending reputations. This is an accelerated, milestone-driven project that must be fully built, tested, and ready for deployment within 7 days. Key Technical Components & Workflow 1. High-Speed Email Validator Engine & Database Saving Develop an efficient preprocessing script using pandas and dnspython to sanitize uploaded CSV/Excel lead files instantly. The script must check email syntax, domain health, and active MX Records to ensure the bounce rate stays strictly under 1%. Database Pool & Export Feature: * Once filtered, the system must allow the client to download the cleaned list as a CSV/Excel file via a single click ("Export Valid Leads"). Concurrently, all valid leads must be bulk-inserted into a permanent PostgreSQL database pool (verified_leads_pool). Duplicate records for the same client must be skipped dynamically (ON CONFLICT DO NOTHING). Clients must have the option to trigger new campaigns directly from this saved database pool. 2. AI Content Spinning & Batch Caching Integrate OpenAI API (gpt-4o-mini) to dynamically randomize content. To minimize API costs and latency during high-speed execution, the system must pre-generate up to 5,000 unique semantic variations of a single base offer/subject line before the campaign launches, caching them directly in PostgreSQL. 3. Dynamic Round-Robin Rotation, Throttling & Shuttling (The Core Engine) Configure Celery and Redis to handle background tasks asynchronously. Implement strict rate-limiting to evenly smooth out the delivery of 100,000 emails over 6 hours (averaging 4 to 5 emails per second). Implement a sequential round-robin algorithm that dynamically switches the sending identity across the client's pool of verified sub-domains (e.g., s1.domain.com, s2.domain.com) with every single outgoing request. 4. Multi-Tenant Docker Isolation & Real-Time Purging Deploy application instances via Docker-Compose on a single Linux VPS. Each client environment must be completely isolated (separate backend worker process, dedicated Redis queue queue-name, and independent database rows mapped via client_id). Integrate Amazon SNS (Simple Notification Service) webhooks to catch real-time bounces or spam complaints. The backend must immediately change the status of that lead to bounced or unsubscribed in the permanent database pool to exclude them automatically from future runs. 5. Minimalist Next.js User Dashboard Build a clean, single-page UI for clients to manage their campaigns. Features: * AWS SES API Credential management input fields. Verified Sending Sub-domains configuration manager. Lead File Upload Portal + Base Offer/Phone Number input field. Toggle option to either "Upload & Validate New List" or "Launch via Saved Verified Database Pool". Live progress dashboard showing real-time counters: Total Uploaded, Total Sent, and Failed/Bounced metrics. "Export Valid Leads" button. Tech Stack Requirements Backend: Python, FastAPI Task Queues: Celery, Redis Database: PostgreSQL (with proper indexing on the leads pool) Infrastructure & DevOps: Docker, Docker-Compose, Linux/Ubuntu VPS Administration, Git Cloud Services: Amazon SES (Simple Email Service), Amazon SNS (Simple Notification Service) Frontend: Next.js (React) or alternative clean, lightweight responsive JS framework Third-Party APIs: OpenAI API How to Apply Please begin your proposal with the phrase "ROBOTS CANNOT BLAST MAIL" to verify you have thoroughly reviewed the requirements. Applications without this phrase will be instantly rejected. In your proposal, briefly highlight: Your direct experience building asynchronous architectures with strict rate-limiting using Celery and Redis. How you plan to handle bulk database insertions for the valid email pool without blocking the main event loop. Your immediate availability to hit the ground running for this 15-day sprint.
Otevřít na Upwork