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, 20171Nov 2, 20171
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, 20172Jun 24, 20172
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, 20171Feb 26, 20171
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, 20151Aug 27, 20151
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