Like all of today’s tech titans, Twitter Inc (NYSE:TWTR) has had its share of growing pains. When you’re experiencing the growth that Twitter was enjoying for a few years, you literally cannot buy enough IT infrastructure to meet demand no matter what kind of money and manpower you throw around… and the fact that Twitter crashed during almost every major event for the first three years of its existence is testament to this fact.
Twitter a model of stability today
Its unreliable early days notwithstanding, Twitter Inc (NYSE:TWTR) has emerged as a model of stability over the last couple of years. As many of us already suspected, this hasn’t just “happened” — Twitter’s evolution into an enviably stable platform capable of handling hundreds of thousands of tweets a minute is the result of a thoughtfully designed organizational structure as much as the huge sums they’ve spent on IT infrastructure.
Small team approach
Twitter Inc (NYSE:TWTR) platform engineering vice president Raffi Krikorian gave a presentation recently in which he discussed the ways Twitter’s organizational structure tackles software development, and how this approach has led to innovations.
Krikorian emphasized the importance of using compact, five-to-seven-person teams that are dedicated to specific areas of the site. These teams operate largely autonomously, and are encouraged – even expected – to both define the scope of the problem and potential solutions.
The main role of management is to keep everyone is focused on the overall goal — making Twitter Inc (NYSE:TWTR) stay up and functioning 100 percent of the time.
Incremental change is best
At a recent industry conference, Twitter software engineer Jeremy Cloud explained the “three-step rules” of avoiding downtime. “Step one: Make the smallest possible change. Step two: Verify that it works, and tweak as necessary. Step three: Return to step one.”
In other words, stay away from across-the-board overhauls that are more likely to create significant problems. Other Twitter Inc (NYSE:TWTR) software engineering secrets include always testing in advance on “canary servers,” and running a test on a small percentage of Twitter’s user base before a full roll out. There are no guarantees in software engineering, but following the “three-step rule” is likely to help you avoid downtime.