Crowdtap Stack“small is beautiful.”
What is Crowdtap?
-Fun diverse team
What makes us a fun place to work?
-Sense of startup urgency without going crazy
-Small, autonomous “tracks”
What makes us a fun place to work?
…And some parties don’t hurt
What makes us a fun place to work?
-small is better than LARGE
Rigorous test coverage - thoughtbot DNA
Now show me the stack...
Core Beliefs
-MongoDB - (TokuMX)-ElasticSearch-Angular-RabbitMQ-Redis-EC2-S3/Cloudfront
And you may ask yourself- well, how did we get here?
Core Technologies
One small rails app
5 Year Evolution - Late 2009
One BIG rails app - tough to manage.
Evolution - 2010,2011
Rails → Rails API Data Layersmall front end apps
History and Evolution - Early 2012
“If you hit the Amazon.com gateway page, the application calls more than 100 services to collect data and construct the page for you.”— Werner Vogels, CTO, Amazon.com, 2006
SOA - A system composed of several loosely coupled applications, each existing in isolation with it’s own database
But it wasn’t enough… SOA Time
-“Scalable dev team”
-Separate tests-Separate deployments-Separate owners
-(Damage control)
Benefits of SOA
Promiscuous - Application level pub-sub
History and Evolution - Late 2012
+ =
-Heterogenous replication
-Remote observers. The ability to observe remote model changesher.
-Publish virtual attributes
Promiscuous (benefits)
-Sniper - targeting engine
-Paparazzi - Stalks your social networks
-Iris - Email
Small Backend Apps - Early 2013
-“Dynamic Assets Poller”2 minute deploys
-Poll commit hash from s3-Perform lookup for that bucket
Front End Deployer - Late 2013
SpineJS → AngularJS
Evolution - 2014
...And then back to this
-More Angular-More ElasticSearch-More Mobile
Late 2014, 2015??
“Making great products is only possible when complex technology can be presented in a simple, beautiful and complete form.”
Smaller, more modular, makes lives easier...
….Q/A
To conclude