Big poopies, little data; tracking diaper changes with IoT ButtonWhen Miles was a newborn our pediatrician regularly asked us how many times he’s been gong potty per-day. It turns out when you’re sleep…Nov 2, 2017A response icon1Nov 2, 2017A response icon1
Processing Kinesis Streams w/ AWS Lambda and GolangUsing Kinesis Streams as a trigger for AWS Lambda has made it easier than ever to process real-time event data. The days of managing…Jun 24, 2017A response icon2Jun 24, 2017A response icon2
Tracing gRPC calls in Golang with Google StackdriverGoogle Cloud Platform recently released Stackdriver Trace which helps highlight and debug performance bottlenecks within our software. The…Feb 26, 2017A response icon1Feb 26, 2017A response icon1
Ruby based ETL pipeline with Iron.io and RedshiftAs the data requirements of our Business Intelligence team grow we’ve been leveraging Iron.io’s IronWorker as our go-to platform for…Jan 6, 2017Jan 6, 2017
Interservice communication with Redis and Sidekiq remote workersAs our infrastructure continues to grow (and we continue to extract core services) we’re consistently having to sync data between…Jan 6, 2017Jan 6, 2017
How to stub external services in testsRequests to external services during test runs can cause several issues:Jan 5, 2017Jan 5, 2017
NSQ service discovery with DNS recordsNsqd is typically launched with a list of IP addresses pointing to each of the nsqlookupd nodes.Jan 24, 2016Jan 24, 2016
gRPC metadata for Client / Server contextWhen we need to pass metadata between services the gRPC metadata package can be used pass key-value pairs in the context.Aug 27, 2015A response icon1Aug 27, 2015A response icon1
Email failover with MultiSMTPEmail is a critical part of our business and we rely on it heavily to deliver notifications to both our customers and Hotel partners.May 16, 2014May 16, 2014
Scale Rails with Varnish HTTP caching layerAn HTTP caching layer can be used to dramatically speed up requests to our web applications. We’ll walk through setting up a Ruby on Rails…Nov 16, 2013Nov 16, 2013