I recently joined TaskRabbit as VP Engineering and the experience has reinforced lessons learned from prior startups about the importance of having a systematic way to recruit, retain and promote great engineers. One way to help recruit, retain, and promote more effectively is to identify and define a consistent set of behaviors that the company expects of engineers. I’m constantly amazed at how many companies fail to do this for their technical staff.
When it comes to defining explicit objectives or desired actions, it seems like many companies take the time to specify those kinds of expectations for marketing, sales, or product management team members. But when I ask engineers at other companies how they know if they’re doing a good job, I often hear answers like: “we’re generally supposed to kick ass and ship code” or “we just do what PM’s tell us to do.” IMHO, having a group of prodigious coders or friendly team-players on the engineering staff is a good start, but not sufficient. And leaving engineers with ambiguous or undefined company expectations borders on neglect!
I’d like to push more companies into defining clear, specific expectations for how they’ll assess engineers at all points in their career life-cycle — from being pitched as candidates, to being on-boarded as new hire, to getting rewarded as a high performer (or being counseled out). Ideally, the way a hiring manager describes an engineering role to a recruit should match the role expectations that the company places on that engineer once they’re on board. And the way promotions happen should further reinforce those behavioral expectations.
To give an example, here are the five behaviors that we expect all TaskRabbit Engineers to exhibit:
- Culture Fit — TaskRabbit is driven by a very lofty vision and company values. We take those really seriously and folks don’t tend to stick around at the company if they don’t visibly buy into the vision and values; even if they’re brilliant at their particular functional role.
- Craftsman — We want engineers to really understand the underlying mechanisms that their code relies on. The majority of TaskRabbit’s codebase is in the form of Ruby-on-Rails apps. Mature Rails developers will appreciate just how easy it is to get yourself into hot water by including gems without really understanding what dependencies those gems are creating under the hood… Whenever we can’t find a gem that does exactly what we want, in the way we want, we take pride in developing our own gems and contributing them back to the Rails community, e.g., makara, storehouse, sudo.js, and more.
- Goalie — We don’t have a QA team, so our Engineers are the first and only line of defense against bugs. We expect engineers to write their own feature tests and bugfixes, to deploy code only after integration and acceptance testing, and generally to think a lot about how code might break. That kind of goalie defense against bugs and regressions is an important part of an engineer’s job at TaskRabbit.
- MacGyver — Like the TV show character, given a tight set of timelines and resource constraints, we expect engineers to be able to successfully identify the minimum-viable development investment that will make a meaningful impact for users. This is really another way to say: we solve the classic Time-Quality-Features tradeoff by de-scoping/decomposing features. We explicitly are unwilling to compromise on time or quality (i.e., we deliver on a pre-set weekly sprint cycle and we hold the quality bar really high for ourselves). So, within a given sprint, we always focus on paring down to the smallest possible unit of customer value.
- Coach — TaskRabbit’s initial web and iOS apps came out of consulting engagements with Pivotal Labs, where we did a lot of pairing. Coaching and mentoring each other has become an important part of our engineering practices and we really value people who are willing to actively teach their colleagues and learn from each other through 1-on-1 pairing as well as All-Hands meetings. We specifically like to see engineers standing up in front of a crowd, talking about and demo’ing their work.
Every new recruit hears about these five expectations so they can make an educated decision about what they’re getting into at TaskRabbit. Our engineering team members talk to each other about their jobs using these terms. And these five behaviors are baked into our self-assessment and peer-reviews.
By enumerating these five desired behaviors and weaving them all through out TaskRabbit’s engineering practices, I’m trying to create a more consistent and reliable way to recruit, retain and promote an A+ team.
Feel free to borrow these if they’re helpful… YMMV, of course, with transplanting these expectations into your company’s particular culture. But I think the most fundamental point is to put some thought into defining a consistent set of behavioral expectations for your technical staff.
Thoughts? Comments? Let me know!
I like the “linkable assets model” in this SEJ post: http://www.searchenginejournal.com/effective-link-building-using-event-blogging/34104/
It’s a nice, structured way to think about how to get inbound links for your event blog (if you’re an event blogger and care about that kind of thing) :-)
I learned a hard lesson from working with a
bunch of rat bastards leading private equity firm, Silver Lake. I joined Skype after the company was spun out of eBay by SilverLake in deal valued at $2.7B and was recruited to help accelerate the pace of product development and make the Skype app more web-oriented. I was at the company for just over a year in a product management role and felt like my team accomplished some important things along the way, including reduction of software development cycles from months down to 2-weeks and delivery of a whole new advertising revenue stream to the company. It was a fun and challenging job, involving tons of international travel and I met some amazing people along the way.
Now despite the fact that Skype has a Palo Alto office and kind of seems like it would fit right in with Silicon Valley tech companies, it turns out that the employment terms for a Silver Lake company are *very* different from what most Valley high-tech employees are used to. Here are three important things to watch out for if you’re thinking about joining a company that is being managed by a private equity firm or if your company gets taken over by a PE bank.
1. Lawyer Up
(image credit: http://weheartit.com/entry/5625871)
The most important lesson I learned from Skype was that compensation and stock policies in PE-owned firms can be very heavily tilted in the owners’ favor and against the employees. Skype employees have 5-year vesting of stock options, for example, not the usual 4 year schedule that most Valley firms have. Even worse, Skype’s stock option agreement had special clauses that the Board had slipped in that gives them the right to “repurchase” any vested shares for anyone who leaves the company voluntarily or is terminated with cause — effectively taking “vested” shares and making them worthless. Here’s a nice letter I got from the Associate General Counsel of Skype that points out exactly how my stock options have “no financial value.” (see lee.pdf). Gee, thanks.
Now, I’ve seen my share of legal documents for tech companies. I’ve worked in Valley tech companies for over 15 years, have founded startups, done VC financings, and invested in companies. None of that prepared me for the kinds of legal shenanigans that the PE guys at Silver Lake pulled because I had never come across those kinds of terms before, let alone the fact that these clauses were hidden as one-liners in otherwise pretty standard-looking documents. (see Stock Option Grant Agreement for Kuo-Yee Lee – signed)
So my first point of advice to anyone considering working for a PE-lead firm is to LAWYER UP — it’ll be worth your while to get an attorney to carefully review all employment documents so that you know what you’re really getting into.
2. The Bobs
Working with Silver Lake was my first opportunity to witness up-close-and-personal how a PE firm does its business of restructuring a company that they’ve just taken over. And it was breath-taking. The firm inserted itself into every level of the company. At one point in my tenure at Skype, Silver Lake had representatives or consultants on the Board, in C-level executive roles, in technical leadership and operating roles, and all the way on thru the organization to the person actually running our software deployment schedule… So Silver Lake put its fingers really deeply into Skype’s pie and they started rearranging things.
You can agree or disagree with the practice of re-organization, but I personally had never been part of a restructuring that ran so deep in a company. During the year I was at Skype, the company:
- lost a CEO
- hired and fired a CTO
- hired and fired a CFO
- gained a CEO, CMO, CIO, and CDO
- created an entirely new product development org structure
- eliminated every Project Manager role
- fired, re-interviewed, and re-hired Product Managers
- created a two new business units
- combined two business units into one
- dissolved one business unit
- opened a new office and hired several hundred people
- the list goes on…
3. It Ain’t Over ’til It’s Over
Even if an employee of a PE-owned company has avoided the legal beartraps and weathered the re-org’ing, they’re still not safe. Even as Skypers were celebrating the huge potential of the Microsoft deal, the PE bankers were sharpening their knives and plotting which employees to fire in order to maximize profits and minimize payouts to non-owners. Seriously, how greedy do you need to be to make $5B and still try to screw the people who made that value possible? I mean, Silver Lake is trying to hyper-optimize their returns to the point that they’re trying to deny employee payouts that amount to less than 0.3% of the returns that they’ll get from the deal. Srsly. Really?
So, just be warned: Silicon Valley startup folks may think we’ve had hard dealings with venture capitalists… But in my opinion, VC greed pales in comparison to the level of greed exhibited by the Silver Lake private equity firm.
And there you have it, my top three lessons learned from being raked over the coals by a PE firm.
Have your own story? Leave a link or comment below!
Three UGC UX principles that I’m working towards in my products:
1) Fast — sub-200 millisecond response time to any user input
2) Assistive — give users something to react to; rather than forcing them to generate their own novel content
3) Learning — system improves with every user click or action
What are your top three?