3 ms·
This is a brilliant architecture. Everyone here talking about no email clients, IMAP and AWS restrictions is missing the point. Although you could use this as
by irae 5y ago
This is a brilliant architecture.
Everyone here talking about no email clients, IMAP and AWS restrictions is missing the point. Although you could use this as a personal account, or as a company. This fully automated system is a perfect ground layer to a number of applications with a very cleaver API.
Say you are a small startup, and you will need some email functionality? Give your web server access to writing to outbox and you can send email. Use the sender with + rules and you get replies with customerId, threadId etc. Need to show email interactions in your service UI? Subscribe to the notification channels. Need customer support platform, it is almost built-in.
If you don't see value in this solution, you probably never tried to setup infrastructure to receive email. In fact, at $work, I developed a very similar architecture and it is running flawlessly for 15 months or so. We just don't do all this git+lambda craziness, we just had already setup EC2 that we added some routes.
- StreamBright 5y agoThis is how we handle notification emails and some incoming emails as well. There are few gotchas only (using separate domains is one of those)
- danielvinson 5y agoAs somebody who has been an early engineer at many startups, I would never use this in almost any case because a managed solution is just better. If I can pay somebody else to do something hard with zero maintenance so I can focus on shipping a good product, I’m going to do that every time.
- hipjiveguy 5y ago200% - outsource managing until you're making so much money that you can afford to bring it home, and pay the difference for the scale
- pbreit 5y agoThe main reason managed is better is they spend a lot of energy on deliverability.
- irae 5y agoIt really depends on what you are doing. Even though I have a similar setup, we are still outsourcing customer support with a third party for now. But when you do need the data from emails, I would expect this solution to be a better choice. Fiddling with outsourced APIs has a lock-in factor as well as not guaranteeing time-save if you don't have someone on the team already familiar with the third party product. I've certainly burned myself excessive outsourcing as well.
- femto113 5y ago> Give your web server access to writing to outbox and you can send email. SES is already in the mix, so why not just use it directly to send emails from your web server?
- irae 5y agoTrue. Why not though? It really depends on your software choices. Security might be one. But with just writing to S3 you get to have the JSON stored as sent, and might be easier to write tests against, since in dev you can write the same JSON to FS and write some assertions... really up to whomever is implementing
- axelthegerman 5y agoGot to admit that I only looked at the diagram in the repo and instantly closed it. I know email is complicated, but not sure I'd call a couple dozen AWS services glued together "a brilliant architecture". Keeping servers running sucks but throwing together "serverless" services is not really a solution to build more robust software systems