Hack+Startup with Facebook: Joe Carrafa of Etsy
Joe Carrafa is a senior engineering manager at Etsy where he leads the Marketplace Operations Team. Joe has been involved in the creation of many of the company’s internal tools, and in this Hack+Startup talk, he describes exactly how these tools help Etsy run its business more effectively. All the good stuff below comes directly from Joe.
Most start-ups use internal tools — JIRA or perhaps Google Apps — and I see many of the best companies building their own. The common thread for all internal tools is that they make your life easier, but deciding when to invest dollars in buying tools and when to invest time in building them can be a tough choice.
Simple Solutions to Simple Problems
That being said, internal tools don’t need to be complicated. If you’re someone who frequently deploys code, writing a continuous script to automate the process will alleviate a pain point or two and make you more efficient. Similarly, if you find that other teams are constantly pinging you for the same report or task, you should write a command line script that you can run each time they ping you. It’s about letting the humans shape the tasks and letting the machines repeat them as often as necessary.
The Minimum Viable Product
Ultimately, when you’re a small company with limited resources, it’s important to focus on the minimum viable product. Spend your time building what you really need to make your company better and to set yourself up for success.
Tangibly, this means honing in on the ongoing, repetitive tasks. More specifically, you should always aim to reduce the amount of time you spend doing any single task. With the help of a script or application, you can almost always improve the quality and consistency of your results.
Pro tip: Don’t forget to be resourceful. Before you build, always consider the tools you already have at your disposal. It pays to adopt an “eat your own dogfood” mentality where you can effectively re-use the same tools across the different problems you encounter.
Controlling Your Environment
When you’re creating internal tools, remember that you’re not building them for the rest of the world: You have control over the people who are going to use them, you are familiar with what their day is like and, most likely, you know exactly how they’re going to utilize the tools before you create them. So, don’t get caught up in things like compatibility issues (i.e. making sure your app will run on IE6 if no one uses IE6 internally). Instead, spend your time making their process better. You control the environment, after all.
At Etsy, they've had a lot of success controlling the environment in which code is deployed. With the help of an internal tool called Pushbot — a push queue that effectively operates on a topic-based IRC channel — they have been able to avoid web sockets and lots of other things that can complicate the process of continuous deployment
Like at most companies, the developer-product interaction is particularly meaningful at Etsy. With over 120 engineers, there is a special emphasis on getting product out the door. Joe emphasizes that a cornerstone of the engineering philosophy is continuous deployment and testing.
There is an even bigger emphasis, however, on building things that are tied into the way the company works, rather than products that are simply hard to build.
In order for the dev team to be most productive, they need the following:
- StatsD — metrics that will help drive your framework — it will run timing calls with a 95% with a single call
- Testing Infrastructure — a good one so that people can run tests simultaneously
- Development Environment — a development database with virtual machines to make it scalable
- Codesniffers — to maintain the quality of your code
Your Marketplace Operations Team
While your company may call Marketplace Operations something else, Etsy’s Ops Team is responsible for one of the most crucial interactions, the one between the customer and customer support.
In the past, Etsy had been using a support system called RightNow to handle email. But, it was an imperfect solution that had to be run on a virtual machine. As the organization continued to expand, so did its needs. Teams had to be able to handle a larger volume of messages from a fast growing user-base.
Naturally, the Ops Team wanted more information at their fingertips about a given customer to do their job more effectively, but with a third-party tool like RightNow, there was very little the engineering team could do to accommodate this. Since the technology wasn’t built in-house, it couldn’t provide critical data like who the customers were or what their previous correspondences looked like.
So the team built a tool called Compass, a system that has remained preferable to any existing solutions in terms of features, ease of use and flexibility.
Justifying Your Own System
One of Compass’s core features is Buckets, which separates different types of inbound messages by category (Billing, Integrity, API, etc.). While it’s Gmail-esque on the surface, it encourages Etsy’s teams to treat messages like a task and stresses a particular workflow. This mentality of “read an email, take an action, and then move on” is pervasive because the engineering team made the conscious decision to build the product around the existing workflow of their Ops Team.
Two other crucial additions to Compass were the knowledgebase, a sort of GitHub for customer communication best practices and the inclusion of specific, actionable user information in the Ops team interface.
While your killer features may vary, it’s important to identify what your team is really itching for and then build accordingly.
Preparing for the Future
Etsy’s now at a point where its 40 Ops Team members are managing 10,000 inbound weekly emails. But as they continue to grow, the hope is to leverage Compass and other internal tools in order to have the same size team handle the increased volume of customer requests. To do this in your own company, to scale well on the human capital side of the business, you’ll need to create technology that’s fundamentally designed to help people be more productive. This is why Joe describes successful internal tools as the intersection of people and technology.
- Be resourceful: Consider what you already have in front of you, how you could use it to solve the current problem and go from there.
- Processes: Focus on processes over technology. Before you build something, talk in detail with the person you’re going to build it for. That way, you can pinpoint the best way to make their lives better/jobs easier.
- Environment: You don’t need to waste your time worrying about compatibility. You’re in control.
- ROI: Focus on the areas of your business that will generate the most in return for the leverage that tools can provide.
- Scalability: As you find success you will need to be able to do more with the same resources — building powerful internal tools is one way to get the leverage you need as your business grows.
Read These Next
How Modern Marketplaces Like Uber and Airbnb Build Trust to Achieve Liquidity
In 2009, Airbnb was close to going bust with revenue flatlining at $200 a week. Since then, over 9 million people have used it to find temporary housing. Etsy was founded almost a decade ago, but doubled its valuation with its last two rounds of funding. The gradual but ultimately huge success of these entrants to the marketplace space has paved the way for Uber and Lyft’s breakout growth, and the explosion in startups with marketplace models: Postmates, Getaround, Taskrabbit, and more — quickly eclipsing the old guard represented by Craigslist. Marketplace startups are unique because they aren’t just serving one base of customers. They connect buyers and sellers, service providers and consumers. They have to make sure users are having a good experience with each other as well as their company. As head of product for fashion marketplace Threadflip, it's remarkable to me how much of this is based on our ability to inspire and maintain trust. And while "trust" sounds like a subjective term, building it is highly tactical.
The Five Mistakes Startups Make When Building for Mobile
In 2009, Farhan Thawar joined mobile development firm Xtreme Labs as VP of Engineering. At the time, it handled accounts for some of the biggest brands in the world — a roster including the largest social networks and popular sports organizations. And they all had one thing in common: They all sensed the urgency to break into mobile in a big way. This trend has borne itself out. Facebook reported last year that 78% of its daily users in the U.S. access the site from their phones. For Twitter, the figure is 75%, with mobile representing 65% of its ad revenues. Unfortunately, there are so many misconceptions around mobile development that many newer startups end up squandering time and money they simply can’t afford, says Thawar. Today he helms engineering for Pivotal Labs Canada following Xtreme’s acquisition, and after years observing what works and what doesn’t, he’s honed in on the top five myths that startups must bust to do mobile right.
Evernote’s CTO on Your Biggest Security Worries From 3 to 300 Employees
Dave Engberg knows a lot about security. Before he took the CTO spot at Evernote, he designed and developed credential validation systems for the U.S. government. If anyone in Silicon Valley knows the value of secure access and keeping information safe, it’s him. Especially now, with publications like TechCrunch reporting breaches and attacks as soon as they happen, these types of events can crush a startup’s potential, especially if they are mishandled. Yet many companies don’t start thinking about building defenses until it’s way too late. After observing his fair share of incidents, and experiencing one firsthand earlier this year, Engberg wondered why there wasn’t a comprehensive guide for how startups should approach security at every stage — starting at the earliest. With this in mind, he gave an exclusive talk at the recent First Round CTO Summit about security and the right way for growing startups to stay safe without needlessly expending valuable resources.