Airbnb managed the complexity of splitting a monolith, which the company called Monorail, by phasing the migration, comparing Monorail functionality with that of the new services. They would take 1% of the load in new world, and compared the results down both paths. They progressively increased the load towards the services, until comparison is clean against 100% of load.


Test-driven development is addictive, it works like Facebook and checking your email. It takes a very little effort to get a tiny endorphin kick. Red, and tap-tap-tap, green again. "I'm good!".


Reusing a connection avoids the overhead of making a DNS lookup, establishing a connection, and performing an SSL handshake. However, not all HTTP clients, including the default client of Node.js, enable HTTP Keep-Alive.


If you’ve heard about quantum computers, you might get the itch to start working on something in the field. What is quantum computing? How do you get started?


When time pressure from managers drives coders to write poor-quality code, some people think the responsible party is the managers. I say it’s the coders. Here’s why I think so.


Scaling is by mitosis. Teams split apart into smaller teams that completely own a service. EC2 started as one two pizza team.


Project management doesn't have to sound like a foreign language with this handy list of terms to reference.