Prompt
I'm a solo developer. how do I avoid building email infrastructure?
Latest observation
If you’re a solo developer, the best way to avoid building email infrastructure is: don’t run your own SMTP servers, queue workers, bounce handling, reputation management, or deliverability tooling. Use a managed email service and keep your app’s email logic as thin as possible.
The practical approach
1. Use a transactional email provider
Pick one of these instead of building your own stack:
- Postmark
- SendGrid
- Mailgun
- Amazon SES (cheap, but more setup)
- Resend (nice developer experience)
These handle:
- SMTP/API delivery
- retries
- bounce handling
- spam complaints
- TLS
- deliverability basics
2. Send via API, not your own SMTP
Use their HTTP API from your app. That avoids:
- server relay configuration
- port 25 issues
- IP reputation management
- auth/security headaches
3. Keep email templates simple
Use provider templates or a light templating library. Don’t build a custom rendering pipeline unless you need it.
4. Outsource the hard parts
Let the provider handle:
- unsubscribe links
- suppression lists
- bounces/complaints
- dedicated IPs if needed
- monitoring and logs
5. Use webhooks for events
If you need delivery/bounce/open events, receive them from the provider via webhook. Don’t try to infer status yourself.
Suggested stack for a solo dev
Fastest to ship
- Resend or Postmark
- app sends emails through API
- provider handles deliverability
- use webhooks only if needed
Lowest cost
- Amazon SES
- optionally pair with a simple helper library
- more setup, but very cheap at scale
Best “just works” experience
- Postmark
- especially good for transactional email
What not to build
Avoid building:
- SMTP servers
- bounce processors
- complaint handling
- reputation warming
- queue/retry orchestration
- DKIM/SPF/DMARC management from scratch
- inbound email parsing unless you truly need it
Minimal architecture
Your app should only do:
- create email content
- call provider API
- store send status if needed
- react to webhook events
If you need bulk/marketing email
Don’t use the same setup as transactional email unless the provider supports it well. Marketing email has extra requirements:
- unsubscribe management
- segmentation
- compliance
- higher reputation risk
Use a marketing platform instead:
- Mailchimp
- Customer.io
- ConvertKit
- Loops
- Brevo
Rule of thumb
If your question is “should I build this?”, the answer is almost always no for email infrastructure as a solo dev.
If you want, I can recommend the best email provider for your use case based on:
- transactional vs marketing
- budget
- volume
- tech stack (Node/Python/Ruby/etc.)