Email Service
Handles email composition, rendering, and delivery for transactional and marketing emails
Overview
The Email Service handles all email-related functionality, from template rendering to delivery tracking.
Key Responsibilities
- Render email templates with dynamic content
- Send transactional emails (notifications, invites)
- Send digest emails (daily/weekly summaries)
- Track email opens and clicks
- Handle bounce and complaint management
- Manage email unsubscribe preferences
Technical Details
Technology Stack:
- Runtime: Python 3.11
- Framework: FastAPI
- Email Provider: SendGrid
- Template Engine: Jinja2
- Queue: AWS SQS
- Database: PostgreSQL (delivery tracking)
Email Types:
- Transactional: Task assignments, mentions, invites
- Digest: Daily/weekly activity summaries
- Marketing: Product updates, feature announcements
- System: Password resets, security alerts
SLA:
- Email Delivery: < 30 seconds
- Template Rendering: < 100ms
- Delivery Rate: > 99%