Introduction to Architecting Systems for Scale

April 4, 2011 Designing a system which scales to a high number of requests isn't critical for most applications, but you'll never know that it was important until after the fact, so it's worth putting some thought into ensuring your architecture can grow with your success.

Filed under architecturescalabilityredundancy

Developing Service Oriented Architectures

June 2, 2014 Having spent the last four years rolling out a handful of service oriented architectures, some lessons are finally coming together, and this is an attempt at documenting them.

Filed under architecture

Digg v4's Architecture and Development Processes

August 20, 2012 Digg's fourth version isn't running anymore, but was an interesting system to work on. This article describes the system architecture, as well as the context behind those choices, and will hopefully be an interesting read for those scaling engineering teams and systems.

Filed under diggarchitecture

Overview of Single vs. Multi Server Architecture

February 16, 2009 I've been thinking a bit more about all the various deployment options for Django, and more specifically how the variety of options can be a bit bewildering for those who haven't setup a server before. Here is a picture-assisted guide to the distinctions between single and multi server architectures.

Filed under apachearchitecturenginx

Building a Software Deployment Pipeline

March 31, 2014 One of the fundamental pieces of infrastructure for an effective software engineering team is their deployment pipeline. Here we cover a fairly basic but effective pipeline for deploying code.

Filed under architecturesoftware-engineeringdeployment

Configuration Driven Behavior

November 25, 2012 As the SocialCode engineering team pursues building technical leverage, one of the ideas we've been exercising is configuration driven behavior. This post discusses what configuration driven behavior entails, and why we think it's a useful idea.

Filed under architecturesoftware-engineering

Building Technical Leverage

November 4, 2012 The aim of a development group is to build business value. Building technical leverage is the focus on increasing the business value a development group delivers over time.

Filed under software-engineeringarchitecture

Braindump on Load Generation

December 19, 2016 As I'm starting to spend more time on load generation and load testing, I did some research for related papers and typed up notes afterwards.

Filed under architectureload testingbraindump

Thoughts on Envoy's Design

September 18, 2016 Lyft recently released Envoy, a nice load balancing and routing tool, and I wanted to write up some early thoughts about it's design and architecture.

Filed under architecture

QoS, Cost & Quotas

September 11, 2016 Rolling out cost accounting is often viewed as unimportant and unexciting work, but I think it's infact a critical reliability project.

Filed under architecturescaling

Designing My Future Home

December 29, 2007 Isn't it one of the great dreams of humans to design and build your own home? Well. I had a few ideas this morning and decided to put together a sketch.

Filed under architecture