StackShareStackShare
Follow on
StackShare

Discover and share technology stacks from companies around the world.

Follow on

© 2025 StackShare. All rights reserved.

Product

  • Stacks
  • Tools
  • Feed

Company

  • About
  • Contact

Legal

  • Privacy Policy
  • Terms of Service
  1. Home
  2. Companies
  3. SparkPost
SparkPost logo

SparkPost

Verified

The World’s Fastest-Growing Email Delivery Service

www.sparkpost.com
48
Tools
5
Decisions
262
Followers

Tech Stack

Application & Data

23 tools

Amazon EMR logo
Amazon EMR
AWS Glue logo
AWS Glue
Amazon Redshift logo
Amazon Redshift
AngularJS logo
AngularJS
Amazon EC2 logo
Amazon EC2
Bootstrap logo
Bootstrap
NGINX logo
NGINX
C lang logo
C lang
Lua logo
Lua
Node.js logo
Node.js
Cassandra logo
Cassandra
ExpressJS logo
ExpressJS
HTML5 logo
HTML5
JavaScript logo
JavaScript
Dropbox logo
Dropbox
Redis logo
Redis
Google Drive logo
Google Drive
Amazon CloudFront logo
Amazon CloudFront
Redux logo
Redux
ES6 logo
ES6
Jekyll logo
Jekyll
Amazon S3 logo
Amazon S3
AWS Lambda logo
AWS Lambda

Utilities

8 tools

Amazon Kinesis Firehose logo
Amazon Kinesis Firehose
Algolia logo
Algolia
API Blueprint logo
API Blueprint
Google Analytics logo
Google Analytics
Slack logo
Slack
SparkPost logo
SparkPost
Postman logo
Postman
Amazon SQS logo
Amazon SQS

DevOps

13 tools

Babel logo
Babel
Bower logo
Bower
StatusPage.io logo
StatusPage.io
Jaeger logo
Jaeger
Ansible logo
Ansible
Jira logo
Jira
GitHub logo
GitHub
Grunt logo
Grunt
npm logo
npm
Sentry logo
Sentry
Webpack logo
Webpack
ESLint logo
ESLint
Bamboo logo
Bamboo

Business Tools

4 tools

D3.js logo
D3.js
Confluence logo
Confluence
React logo
React
Asana logo
Asana

Team Members

Chris McFadden
Chris McFaddenVP, Engineering
Jose Zamora
Jose ZamoraDeveloper Advocate

Engineering Blog

Stack Decisions

Chris McFadden
Chris McFadden

Apr 7, 2019

We send over 20 billion emails a month on behalf of our customers. As a result, we manage hundreds of millions of "suppression" records that track when an email address is invalid as well as when a user unsubscribes or flags an email as spam. This way we can help ensure our customers are only sending email that their recipients want, which boosts overall delivery rates and engagement. We need to support two primary use cases: (1) fast and reliable real-time lookup against the list when sending email and (2) allow customers to search, edit, and bulk upload/download their list via API and in the UI. A single enterprise customer's list can be well over 100 million. Over the years as the size of this data started small and has grown increasingly we have tried multiple things that didn't scale very well. In the recent past we used Amazon DynamoDB for the system of record as well as a cache in Amazon ElastiCache (Redis) for the fast lookups and Amazon CloudSearch for the search function. This architecture was overly complicated and expensive. We were able to eliminate the use of Redis, replacing it with direct lookups against DynamoDB, fronted with a stripped down Node.js API that performs consistently around 10ms. The new dynamic bursting of DynamoDB has helped ensure reliable and consistent performance for real-time lookups. We also moved off the clunky and expensive CloudSearch to Amazon Elasticsearch Service for the search functionality. Beyond the high price tag for CloudSearch it also had severe limits streaming updates from DynamoDB, which forced us to batch them - adding extra complexity and CX challenges. We love the fact that DynamoDB can stream directly to ElasticSearch and believe using these two technologies together will handle our scaling needs in an economical way for the foreseeable future.

473k views473k
Comments
Chris McFadden
Chris McFadden

Apr 7, 2019

We use nginx and OpenResty as our API proxy running on EC2 for auth, caching, and some rate limiting for our dozens of microservices. Since OpenResty support embedded Lua we were able to write a custom access module that calls out to our authentication service with the resource, method, and access token. If that succeeds then critical account info is passed down to the underlying microservice. This proxy approach keeps all authentication and authorization in one place and provides a unified CX for our API users. Nginx is fast and cheap to run though we are always exploring alternatives that are also economical. What do you use?

294k views294k
Comments
Chris McFadden
Chris McFadden

Apr 3, 2019

The recent move of our CI/CD tooling to AWS CodeBuild / AWS CodeDeploy (with GitHub ) as well as moving to Amazon EC2 Container Service / AWS Lambda for our deployment architecture for most of our services has helped us significantly reduce our deployment times while improving both feature velocity and overall reliability. In one extreme case, we got one service down from 90 minutes to a very reasonable 15 minutes. Container-based build and deployments have made so many things simpler and easier and the integration between the tools has been helpful. There is still some work to do on our service mesh & API proxy approach to further simplify our environment.

162k views162k
Comments
Chris McFadden
Chris McFadden

Apr 3, 2019

We migrated most of our APIs last year from using our self managed Cassandra cluster to a mix of Amazon DynamoDB and Amazon RDS for Aurora. This has reduced the operational overhead for our team and greatly improved the overall reliability of our service. The new dynamic capacity in DynamoDB has been super helpful for handling bursty traffic.

48k views48k
Comments
Chris McFadden
Chris McFadden

Dec 20, 2015

Send transactional or marketing email from your web apps. SparkPost provides all the deliverability, scalability and speed you expect from the world's leading email platform in an easily integrated, pay-as-you-go email delivery service. SparkPost

11.4k views11.4k
Comments