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. Twilio SendGrid
Twilio SendGrid

Twilio SendGrid

Denver, COsendgrid.com

Twilio SendGrid is a digital communication platform that enables businesses to engage with their customers via email reliably, effectively and at scale.

82tools
3decisions
3798followers
OverviewTech Stack82Dev Feed

Tech Stack

View all 82
Stack by Layer
AI3
Application & Data33
Utilities19
DevOps17
Business Tools10
AI
3 tools (4%)
Application & Data
33 tools (40%)
Utilities
19 tools (23%)
DevOps
17 tools (21%)
Business Tools
10 tools (12%)

AI

3
NumPyPandasJupyter

Application & Data

33
PerlRailsVagrantRiakCloudFlareAmazon CloudFrontAmazon EC2HerokuDockerHAProxyMySQLNGINXRedisMemcachedTorbitBoxSoftLayerGolangRubyPythonSplunkPostCSSHBaseApache SparkAmazon AthenaBackbone.jsAmazon EMRApache HiveSinatraMarathoncephHadoopApache Mesos

Utilities

19
250okConsulStoplightSidekiqRabbitMQZuoraSwiftypeGoodDataConcurHipChatGoogle AnalyticsAmazon SQSAmazon SNSSolrAmazon ElastiCacheZookeeperElasticsearchTwilio SendGridKafka

DevOps

17
LayerVaultSensuJenkinsGraphiteStatsDPackerChefNew RelicJiraAirbrakeGitHubWebpackBabelESLintPagerDutyGrafanaBuildkite

Business Tools

10
Perfect AudienceConfluenceSnapEngageBalsamiqHubSpotGet SatisfactionSalesforce Sales CloudZendeskG SuiteReact

Latest from Engineering

View all
Seth Ammons
Seth Ammons

Principal Software Developer at Twilio SendGrid

Sep 13, 2018

Needs advice

When we've gone through code reviews (every code and config change goes through a code review) and feel good about the level of automated testing (no one can sign off on their own code's functionality; a quality assurance engineer or other developer has to verify functionality), we merge our changes via a bot that interacts with GitHub (the bot maintains our versions and change logs). After Buildkite has a green build and our binary is shipped to our repo servers, we are good to roll out deploys to our data centers and to keep pushing the needle on the performance of our system.

#Languages #DataStores #Databases #InMemoryDatabases

48k views48k
Comments
Seth Ammons
Seth Ammons

Principal Software Developer at Twilio SendGrid

Sep 13, 2018

Needs advice

In addition to our fancy Docker setup, we have captured and sanitized production logs for the behavior of our legacy Perl MTA, and we can test that the log output from the new Go version behaves the same way as the old version. These tests are set up to allow us to switch between the legacy and new version of the MTA and ensure that both systems behave in a legacy-compatible way. Not only can we ensure that we operate against a variety of issues we've seen over time from inboxes, but we know that the newest version of our MTA continues to cover all the same expected behaviors of the legacy version. #CodeCollaborationVersionControl #ContinuousIntegration

106k views106k
Comments
Seth Ammons
Seth Ammons

Principal Software Developer at Twilio SendGrid

Sep 13, 2018

Needs advice

For the unit-integration layer that tests transactional emails, we leverage Docker. Our incoming edge is when the upstream service is finished processing a message and hands it to us for delivery, and then our outgoing edge is actually communicating with someone's inbox. We don't actually want to set up a bunch of receiving MTAs and such, but we still need to test behavior at that layer. Our solution is still a work in progress, but it gets the lion's share of use cases covered so we can confidently refactor and push new features and know we did not break anything.

This Docker setup leverages DNSMasq for setting up MX and A records and ensures they point to running mock inbox sinks. These inboxes are configured from a base image with multiple options. We can specify that the sink's TLS certificate is expired or improperly set up, we can have them respond slowly or with given errors at different SMTP conversation parts. We can ensure that we are backing off and deferring email if the inbox provider says to do so. This detailed faking of the outside world allows us to automate all kinds of outside behavior and ensure that our services behave as expected.

We develop locally in Docker, as we just went into. Our docker-compose file spins up containers with fancy DNS settings and all our dependencies, allowing us to test the MTA against a variety of MX and TLS settings, alongside a variety of potential inbox responses and behaviors. Everyone uses their editor of choice and we often pair up on more complex tasks to prevent siloed system understanding.

#VirtualMachinePlatformsContainers #BuildTestDeploy

8.97k views8.97k
Comments

Tools Owned

Twilio SendGrid
Twilio SendGrid
Verified
7,680 followers11,099 stacks
Threads
Threads
Verified
24 followers16 stacks

Team on StackShare

2
Sean Kilgore
Seth Ammons