SlideShare a Scribd company logo
managing scale with lean team leveraging
the power of docker and aws
About Postman
3+ million users
1.5+ million mau
30+ member team
Our Stack
27+ micro services
10+ mill peak req/hr
140+ gb in/day
sailsjs on nodejs
docker
managed by aws
feb 2017
the story of making
small big decisions
postman started 2014 ⇢ small team ⇢ frugal operations
early goal was to ship and validate and
spend less time on operations
we were already raking up 500k+ downloads of our
chrome app by listening to users and iterating
the sync service
enabling api collaboration ⇢ SailsJS
at that time, this was the best framework to
choose to go to market fastest
we used whatever minimum the framework
needed to get started: one server, mysql and
redis
we were trying to validate that collaborative api
development was a solution the world needs
time to choose
1.5+ mil users ⇢ steady service adoption (growing mau)
we knew we needed to make devops easier if we
can get any actual development done at all
walk the tightrope of solving short term problems
while following the long term vision
this meant, larger server, load balancer, constant
mysql and redis performance tweaking
on came tedious (and manual) deployment, traffic
spikes, hung processes for no apparent reason
beanstalk + docker
solved all pressing problems ⇢ abstraction to be flexible
choosing docker (even though we did not need it right away)
allowed us to build the things that we expected we might need
to (without actually building them at that time)
we needed to auto scale during load and at that time,
we felt aws could give us that quickly
application deployment, infrastructure creation, auto
scaling and auto healing all in one package
rds + elasticcache
no more resizing disks ⇢ no more tuning configurations
reliable and automated backups (and restore),
encryption of data communication and storage
and hassle free replication
there could be a million points why rds might appear
“limiting”, but we adopted our product development
mantra into devops as well and…
near zero downtime
hot reboot ⇢ live deployments ⇢ live rollback ⇢ alarms + auto healing
no need to reboot entire server,
just the docker image
build and deploy applications as a secondary
image and then swap
we were prototyping faster
than ever
fridays were back
developer prepares code and environment, then
ci tests code using centrally inherited image
ci tested image is orchestrated into production services by
beanstalk
POSTMAN STACK WAS BORN
simple stack works
common code repository structure
code + tests + beanstalk extensions + dockerfile
we inherited from our own docker base image and that
enabled us to control on base stack, easily permeate
stack changes into all micro-services and test using
production base image on CI
goal was to make our first micro-service a fully
portable concept with all info in code repository
we gave ourselves a
48 hour challenge
can you release a new production quality service?
soon we reached 2+ million users and added many more
services including api documentation service and api
monitoring service
nginx and beanstalk extensions on ec2
Docker
NodeJS + pm2
SailsJS + Hooks
orm + socket.io & express
Business Logic
elastic load
balancer
auto scaling group
and other AWS
resources
managed by
Beanstalk
in an onion shell
time to validate
10x traffic ⇢ 5+ live deployments/day ⇢ difficult to debug
centralised and auto-
instrumented logging
cloudwatch & elk with grafana ⇢ SailsJS hooks
easily added to all service via
beanstalk extensions and docker
root image
since we made all services on
SailsJS and as such one hook
works everywhere
auto-instrumented
monitoring
cloudwatch ⇢ beanstalk enhanced health checks ⇢
beanstalk extensions for custom metrics
with beanstalk extensions, one can customise just about
anything and we auto added all our alarms, instance CPU,
memory, disk and event-loop monitoring in no time
grafana did all the reporting for us
dogfooding
Use newman (Postman CLI) for API
testing on CI platforms
Use own monitoring service to
perform complex api health checks
Use own API documentation service
to collaborate micro-service development
up next
centralised service discovery ⇢ decentralised message bus
⇢ aws inspector + aws waf + aws shield
in short
Solve short-term problems while accounting for
long-term applications
Use containerisation or some other way to find a
common entry point and standardisation of all your
services
Don’t spend time solving for operational issues
that you might never face
@shamasis
getpostman.com

More Related Content

PPTX
Build and deployment with Jenkins and Code Deploy on AWS
PPTX
Integrate AWS CodeDeploy With Git And Deploy A Revision
PPTX
Pipelining DevOps with Jenkins and AWS
PPTX
Localize content Devops
PDF
AWS Code{Commit,Deploy,Pipeline} (June 2016)
PPTX
Code Deploy
PDF
04_Azure Kubernetes Service: Basic Practices for Developers_GAB2019
PPTX
DevOps, Microservices and Serverless Architecture
Build and deployment with Jenkins and Code Deploy on AWS
Integrate AWS CodeDeploy With Git And Deploy A Revision
Pipelining DevOps with Jenkins and AWS
Localize content Devops
AWS Code{Commit,Deploy,Pipeline} (June 2016)
Code Deploy
04_Azure Kubernetes Service: Basic Practices for Developers_GAB2019
DevOps, Microservices and Serverless Architecture

What's hot (6)

PDF
如何無痛上雲端? 以Elastic Beanstalk Java Container為例
PPTX
What's new in containers
PDF
AWS Container services
PPTX
Serverless everywhere
PDF
AWS Community Day - Andrew May - Running Containers in AWS
PPTX
What's better than Microservices? Serverless Microservices
如何無痛上雲端? 以Elastic Beanstalk Java Container為例
What's new in containers
AWS Container services
Serverless everywhere
AWS Community Day - Andrew May - Running Containers in AWS
What's better than Microservices? Serverless Microservices
Ad

Viewers also liked (20)

PPSX
How Postman adopted Docker
PPTX
40+ tips to use Postman more efficiently
PPTX
Postman Collection Format v2.0 (pre-draft)
PDF
Postman tests in jenkins
PPTX
Belajar Postman test runner
PPTX
PDF
API Code Generation
PDF
Understanding and testing restful web services
PPTX
Leveraging Amzon EC2 Container Services for Container Orchestration
PDF
AWS Cost Optimisation Made Easy
PDF
How to Automate API Testing
PPTX
OpenEBS - Containerized Storage for Containers
PPT
Presentatie GVNL tijdens Leisure & Sport Totaal, 2009.
PPTX
Authentication in Node.js
KEY
At Begin, URL Handling and REST
PPTX
Sensible API Testing
PDF
Supporting The Open Web - OSCON 2008
PPTX
Super powered API testing
PPTX
Api testing
PDF
Open Source in the Cloud Computing Era
How Postman adopted Docker
40+ tips to use Postman more efficiently
Postman Collection Format v2.0 (pre-draft)
Postman tests in jenkins
Belajar Postman test runner
API Code Generation
Understanding and testing restful web services
Leveraging Amzon EC2 Container Services for Container Orchestration
AWS Cost Optimisation Made Easy
How to Automate API Testing
OpenEBS - Containerized Storage for Containers
Presentatie GVNL tijdens Leisure & Sport Totaal, 2009.
Authentication in Node.js
At Begin, URL Handling and REST
Sensible API Testing
Supporting The Open Web - OSCON 2008
Super powered API testing
Api testing
Open Source in the Cloud Computing Era
Ad

Similar to The scaling story of Postman (20)

PPTX
Continuous Deployment with Amazon Web Services by Carlos Conde
PDF
Sean schofield & Richard Lister, Spree Commerce_ Fearless deployment @ Open C...
PDF
Docker in Production: How RightScale Delivers Cloud Applications
PDF
Dev Ops without the Ops
PPTX
Building a [micro]services platform on AWS
PDF
20141021 AWS Cloud Taekwon - Startup Best Practices on AWS
PPTX
A Connector, A Container and an API Walk into a Bar… Microservices Edition
PPTX
A Connector, A Container and an API Walk into a Bar… Microservices Edition
PDF
Be DevOps Ready
PDF
Containers, microservices and serverless for realists
PPTX
Deploying your web application with AWS ElasticBeanstalk
PDF
The "Holy Grail" of Dev/Ops
PDF
The Self-Service Developer - GOTOCon CPH
PPTX
Openstack Summit Tokyo 2015 - Building a private cloud to efficiently handle ...
PDF
Docker in Production at the Aurora Team
PDF
Build an app on aws for your first 10 million users (2)
PDF
Paasta: Application Delivery at Yelp
PDF
DevOps and AWS
PPTX
Docker for the enterprise
PDF
Infrastructure as Code
Continuous Deployment with Amazon Web Services by Carlos Conde
Sean schofield & Richard Lister, Spree Commerce_ Fearless deployment @ Open C...
Docker in Production: How RightScale Delivers Cloud Applications
Dev Ops without the Ops
Building a [micro]services platform on AWS
20141021 AWS Cloud Taekwon - Startup Best Practices on AWS
A Connector, A Container and an API Walk into a Bar… Microservices Edition
A Connector, A Container and an API Walk into a Bar… Microservices Edition
Be DevOps Ready
Containers, microservices and serverless for realists
Deploying your web application with AWS ElasticBeanstalk
The "Holy Grail" of Dev/Ops
The Self-Service Developer - GOTOCon CPH
Openstack Summit Tokyo 2015 - Building a private cloud to efficiently handle ...
Docker in Production at the Aurora Team
Build an app on aws for your first 10 million users (2)
Paasta: Application Delivery at Yelp
DevOps and AWS
Docker for the enterprise
Infrastructure as Code

Recently uploaded (20)

PDF
Agricultural_Statistics_at_a_Glance_2022_0.pdf
PDF
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
PDF
Chapter 3 Spatial Domain Image Processing.pdf
PDF
Encapsulation theory and applications.pdf
PDF
Diabetes mellitus diagnosis method based random forest with bat algorithm
PPTX
20250228 LYD VKU AI Blended-Learning.pptx
PDF
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
PPTX
Effective Security Operations Center (SOC) A Modern, Strategic, and Threat-In...
PDF
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
PDF
KodekX | Application Modernization Development
PDF
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
PDF
Per capita expenditure prediction using model stacking based on satellite ima...
PPTX
Understanding_Digital_Forensics_Presentation.pptx
PDF
cuic standard and advanced reporting.pdf
PDF
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
PDF
Modernizing your data center with Dell and AMD
PPTX
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
PDF
CIFDAQ's Market Insight: SEC Turns Pro Crypto
PDF
Advanced methodologies resolving dimensionality complications for autism neur...
PDF
Building Integrated photovoltaic BIPV_UPV.pdf
Agricultural_Statistics_at_a_Glance_2022_0.pdf
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
Chapter 3 Spatial Domain Image Processing.pdf
Encapsulation theory and applications.pdf
Diabetes mellitus diagnosis method based random forest with bat algorithm
20250228 LYD VKU AI Blended-Learning.pptx
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
Effective Security Operations Center (SOC) A Modern, Strategic, and Threat-In...
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
KodekX | Application Modernization Development
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
Per capita expenditure prediction using model stacking based on satellite ima...
Understanding_Digital_Forensics_Presentation.pptx
cuic standard and advanced reporting.pdf
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
Modernizing your data center with Dell and AMD
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
CIFDAQ's Market Insight: SEC Turns Pro Crypto
Advanced methodologies resolving dimensionality complications for autism neur...
Building Integrated photovoltaic BIPV_UPV.pdf

The scaling story of Postman

  • 1. managing scale with lean team leveraging the power of docker and aws
  • 2. About Postman 3+ million users 1.5+ million mau 30+ member team
  • 3. Our Stack 27+ micro services 10+ mill peak req/hr 140+ gb in/day sailsjs on nodejs docker managed by aws feb 2017
  • 4. the story of making small big decisions postman started 2014 ⇢ small team ⇢ frugal operations early goal was to ship and validate and spend less time on operations we were already raking up 500k+ downloads of our chrome app by listening to users and iterating
  • 5. the sync service enabling api collaboration ⇢ SailsJS at that time, this was the best framework to choose to go to market fastest we used whatever minimum the framework needed to get started: one server, mysql and redis we were trying to validate that collaborative api development was a solution the world needs
  • 6. time to choose 1.5+ mil users ⇢ steady service adoption (growing mau) we knew we needed to make devops easier if we can get any actual development done at all walk the tightrope of solving short term problems while following the long term vision this meant, larger server, load balancer, constant mysql and redis performance tweaking on came tedious (and manual) deployment, traffic spikes, hung processes for no apparent reason
  • 7. beanstalk + docker solved all pressing problems ⇢ abstraction to be flexible choosing docker (even though we did not need it right away) allowed us to build the things that we expected we might need to (without actually building them at that time) we needed to auto scale during load and at that time, we felt aws could give us that quickly application deployment, infrastructure creation, auto scaling and auto healing all in one package
  • 8. rds + elasticcache no more resizing disks ⇢ no more tuning configurations reliable and automated backups (and restore), encryption of data communication and storage and hassle free replication there could be a million points why rds might appear “limiting”, but we adopted our product development mantra into devops as well and…
  • 9. near zero downtime hot reboot ⇢ live deployments ⇢ live rollback ⇢ alarms + auto healing no need to reboot entire server, just the docker image build and deploy applications as a secondary image and then swap we were prototyping faster than ever fridays were back
  • 10. developer prepares code and environment, then ci tests code using centrally inherited image ci tested image is orchestrated into production services by beanstalk POSTMAN STACK WAS BORN
  • 11. simple stack works common code repository structure code + tests + beanstalk extensions + dockerfile we inherited from our own docker base image and that enabled us to control on base stack, easily permeate stack changes into all micro-services and test using production base image on CI goal was to make our first micro-service a fully portable concept with all info in code repository
  • 12. we gave ourselves a 48 hour challenge can you release a new production quality service? soon we reached 2+ million users and added many more services including api documentation service and api monitoring service
  • 13. nginx and beanstalk extensions on ec2 Docker NodeJS + pm2 SailsJS + Hooks orm + socket.io & express Business Logic elastic load balancer auto scaling group and other AWS resources managed by Beanstalk in an onion shell
  • 14. time to validate 10x traffic ⇢ 5+ live deployments/day ⇢ difficult to debug
  • 15. centralised and auto- instrumented logging cloudwatch & elk with grafana ⇢ SailsJS hooks easily added to all service via beanstalk extensions and docker root image since we made all services on SailsJS and as such one hook works everywhere
  • 16. auto-instrumented monitoring cloudwatch ⇢ beanstalk enhanced health checks ⇢ beanstalk extensions for custom metrics with beanstalk extensions, one can customise just about anything and we auto added all our alarms, instance CPU, memory, disk and event-loop monitoring in no time grafana did all the reporting for us
  • 17. dogfooding Use newman (Postman CLI) for API testing on CI platforms Use own monitoring service to perform complex api health checks Use own API documentation service to collaborate micro-service development
  • 18. up next centralised service discovery ⇢ decentralised message bus ⇢ aws inspector + aws waf + aws shield
  • 19. in short Solve short-term problems while accounting for long-term applications Use containerisation or some other way to find a common entry point and standardisation of all your services Don’t spend time solving for operational issues that you might never face

Editor's Notes

  • #2: speak slowly dont digress pause before slides watch the time
  • #3: Postman is an API Development tool helping build apis collaborate on api development continuously test and publish APIs 3+ million users 1.5+ million mau 30+ member team
  • #4: 27+ micro services 10+ mill peak req/hr 140+ gb in/day sailsjs on nodejs in docker and managed by aws chrome + native apps in major os we will outline the decisions we took to get here from ops perspective
  • #5: started 2014, 500k+ app installs small team focus and iterate create value + save operational costs
  • #6: chose the tech we knew best developed ops around only what we needed to go live
  • #7: we needed to switch cloud provider to speed our dev and improve service quality we could have lost focus and over-engineered
  • #8: goal was to have a resource formation + … beanstalk + docker one stop solution for problem at hand docker abstracted us enough to reduce risk (if we had to switch again) choosing docker was for the long haul (though it was very early)
  • #9: rds took care of horizontal and vertical scaling security performance elasticcache
  • #10: {{go fast}} all goodies with minimal effort
  • #11: {{go fast}} one service working, we now needed to replicate thus we standardised our stack
  • #12: common repo structure ensured replicability standard code + tests = less managing/onboarding as team grew
  • #13: {{go fast}}
  • #14: at heart: our business logic as MVCS sails js with common hooks + orm + socket.io + express (all from sails) NodeJS and pm2 docker nginx + beanstalk extensions on ec2 autoscaled and load balanced accessing RDS and elastic cache orchestrated by beanstalk
  • #15: {{go fast}}
  • #16: beanstalk extensions to install log and metric collection grafana to visualise sails js hooks to auto-implement standard logging for all services
  • #17: {{go fast}} beanstalk enhanced health beanstalk extensions for custom metrics
  • #18: {{go fast}} monitoring documentation testing
  • #19: {{go fast}} centralised service discovery (use something or build one) a decentralised message bus for intra-service transactional comm (already built a decentralised session service ~ sails hooks allowed us to have a part of one service in every other) new aws offerings inspector for pen test while in production use web application firewall aws shield
  • #20: summary use docker or some other common entry + ops standardisation (avoid complex ops until you need) be practical and not utopian build operations accounting product+people and not only standards+technology solve short-term, account long term