Etsy CTO Chad Dickerson has been on a hiring tear as he has quadrupled his engineering staff. How does a much larger IT team stay nimble? Dickerson offers the following tips as the 5-year-old Etsy scales.
Dickerson (right), speaking at the Supernova conference at the University of Pennsylvania's Wharton School of business last week, has seen a little bit of everything in his career, which has featured stops at newspapers, Salon.com and Yahoo. He outlined the following IT management tips:
- Keep the speed as you scale. Dickerson has grown his engineering team from 18 people to 55 in eight months. The trick when you do that level of hiring is to be more like a startup not less. That means putting speed at the forefront of your corporate culture.
- Put processes in their place. Not every process is a good one. Dickerson notes that processes often become barriers to innovation. Just because one guy made a mistake 5 years ago doesn't mean you need an enduring process to prevent it. "Process has to be flexible," he said.
- Use IRC (or some equivalent). Dickerson said that everyone at Etsy uses Internet Relay Chat, one of the oldest Internet technologies. The entire company ranging from the CEO to the engineers and everyone in the middle is on IRC collaborating.
- Deploy often. "An engineer deploying code to the live site is easier than filling out health care forms," said Dickerson. "It's hard to get to that point." He added that Etsy uses a continuous deployment strategy and engineers deployed production code 190 times, 30 percent higher than June. "Granted some of these were bug fixes but to deploy quickly is important," he said.
- Encourage experiments. At Etsy, Dickerson tries to encourage engineer experiments. "An engineer at Etsy with minimal review---10 to 15 minutes with the CEO or CTO---can launch a live experiment," he said.
- Be transparent. Etsy maintains an engineering blog called Code as Craft. At the blog, the public can read about Etsy's deployments and the technologies it uses. The benefits? Outsiders have provided tips to Etsy on managing the MongoDB as well as help with other chores---such as resizing 135 million images in one pop.
- Embrace failure. "Everyone says this, but hardly anyone does it," said Dickerson. To embrace failure, Etsy gives an annual award to the engineer that broke the site in the most spectacular way. Dickerson said the award was inspired by Flickr engineers. Not so surprisingly, Etsy employs a lot of folks that used to work at Flickr.
- Use social media as a customer support channel. "Twitter is our phone number," said Dickerson. That said Etsy is also evaluating phone support options.
- Get dirty. At one of his former employers, Dickerson needed to have a meeting and wait six weeks to get new hardware. At Etsy, he puts servers on his Amex and if FedEx screws up the shipment, he rents a ZipCar to pick the systems up and drops them into the racks with an admin at the data center.
- You have to manage your capacity wherever it resides. Dickerson said if Etsy started today, it would probably start in the cloud. Instead, Etsy has its own infrastructure and is beginning to supplement with Amazon Web Services. The big point is that you still have to manage your capacity. "Even if you're in the cloud you still have a lot to do," said Dickerson. "If you're spinning up 2,000 virtual machines you're still looking at a lot of Unix prompts to make it happen."