> Stripe turns down candidates with outstanding engineering talent if they don’t fit with the team’s culture. Each candidate must pass the “Sunday test:” if this person were alone in the office on a Sunday would that make you more likely to come in and want to work with them?
Stripe's Sunday test and my Sunday test are slightly different: "Would you come into the office to hack on a Sunday even if the servers weren't on fire?"
If the answer is yes, you know you've got a burnout risk.
To be clear, the point of the Sunday test isn't so much "we want people to come in on Sundays". While many people (myself included) will come in on weekends, many people stick to a more standard 5-day schedule. The point is really just, is this the kind of person who makes you want to work with them? Do they make you more excited to work at Stripe? Would you go out of your way to be around them? If not, we shouldn't hire them.
Sure, that makes sense, and I agree that "likability" is a fantastic metric to include in a hiring decision. And maybe the atmosphere and connotation is a bit different if you ask me the Sunday Test in person during an interview.
All that to say, as a developer who has been burned one too many times by the "oh yes we have lives outside of work" story (not so much), the question itself put me off a little, and I'm wondering if there is a way to measure this likability factor without a scenario that may immediately ping the sixth sense of a developer with certain past experiences. Just wanted to throw that out there.
Could you expand on what specific qualities a high quality engineer would have to have that would you make you turn them down? Is it something obvious like they are rude/disrespectful, or something more intuitive and that you can't narrow down like just your overall feel of if you would like to be friends with them?
Yes, we have -- I talk about this a bit in the video (skip to 14:48). We care about building an environment where we all want to work. To some extent, we're making a bet that building a happy culture will ultimately lead to a higher-quality team and make Stripe more successful. It's a design decision, and while it's hard to tell what things would look like with a different design, we know we're far happier than we ever were working elsewhere.
What do you tell the people who don't pass the Sunday test?
It would be demoralizing to learn that you were technically good enough, but you're not hired because the team didn't think it would be cool to hang out with you.
I've gotten the "you're not a cultural fit" email dozens of times. I think its a function of the economy. If employers are turning away perfectly competent engineers because of something as silly as a "Sunday test", you know there is a huge surplus to talented Engineers in the talent pool.
No, I've bult dozens of projects by myself. Remember the Hacker News Karma Tracker that was made the front page a few weeks back? That was me. I wrote that in 2 weeks. I've also built a web framework, and a dozen python libraries. Trust me what I say that the majority of companies out there don't give a shit about programmer competency. They'd, on average, rather hire a clueless "cool bro" over someone like myself who knows how to get stuff done and has a track record of getting things done.
Knowing that you're not just out of school, your earlier comment makes me want to ask "what's wrong then?" I have about a dozen years experience as a "professional" software engineer. My experience, on both sides of the table, is that good engineering talent really is hard to find, and that those who posses it don't usually have trouble finding a job. Here in the bay area that's been especially true: I've never had just one job offer at a time. I've been "looking" here twice in the last 5 years and both times I had a dozen recruiters calling me, a half dozen phone screens, a handful of interviews and at least 2 offers. And along the way as much of the culling was done by me as it was by the prospective companies.
Look, I know I'm just talking in anecdotes. And I'm parsing a lot because I don't want to offend you. But if you have "dozens" or even just a lot of people telling you they can't hire you because you're not a good fit, that should be a red flag to you. Sure, some of the problem is probably some of the companies. But you could probably see results by taking ownership of part of the problem for yourself. What I mean is, it's easy for an engineer to just try to wash his hands of things like "networking" and "cultural fits" but a better way is to just treat it like any other engineering problem and optimize for it.
You don't have to worry about offending me. I'm the biggest asshole the universe has ever seen. I assure you that I can take more than what I regularly dish out.
My problems are two fold. First, I'm located in Ohio. If I were in NYC or San Francisco, it would be a different story. Secondly, I am very confident in my abilities, and I have a lot of integrity. "B player boses" are scared of people like me.
My biggest problem is that I'm not really capable of working at a company as an employee. I need to be either a CTO level person, or as part of a team where there is no "boss". A lot of companies claim that they are a true "collaborative environment", but rarely do companies ever actually operate this way. My first engineering job was on a team where there was no boss. Everyone was equal in terms of influence over the direction of the technology. I was a perfect fit there. I contributed more than anyone else at that job.
I think it boils down to the face that I care more about software than I do about the company. I care more about the quality of the software than I do about my boss's feelings. I care more about the software than I do about my own well being. I guess I could start caring less. I could just spend all day small talking with co-workers and generally not giving a shit like everyone else...
I'm from Ohio, too. And I started my career there. And as you know, it's not easy. I hope you're in Columbus or Cincinnati. I grew up in Toledo: Not exactly a tech hub :)
You should relocate. I can tell you this without a shred of reservation. I first went to a payment processing startup in Boca. Lots of money in South Florida, wonderful weather, quite a few more startups than you'd guess. Then to the bay area for a wider range of work.
If you're good, you will get flown out for interviews and given an offer with relocation. You should seriously consider this.
As for your other concerns, when I was younger, I was less of a collaborator and more of a "screw this, i'll do it myself, you'll see, it'll be great." And I'm talented, and often it was great, so i got by. But I eventually realized that for me, being more humble, reaching out more, it just makes life easier. And if you want to be humbled, go to where the best and brightest in your industry are.
If someone is competent and underrated, it seems particularly heuristic to conclude that something must be wrong with them. It's a self-fulfilling prophecy. Someone who can't get hired can't get hired because they weren't hired by others before.
There's a huge gap between "perfectly competent" at coding some crud screens and the sort of driven visionary that will build something on the scale of Stripe or Dropbox or Airbnb or id Tech or whatever. There's a mild surplus of the former and a drastic shortage of the latter. You don't worry about cultural fit for a true spectacular outlier talent, the culture will develop around him instead. You do for a perfectly competent average engineer because he can always be replaced with another.
It depends on the candidate. Ultimately the Sunday test is just a formalized test for "cultural fit", which most people understand as a reason for rejection. I think not passing our Sunday test really just means this person did not gel with our team, rather than necessarily having larger implications.
Referrals - Referrals tend to be a really fantastic way to bring people in and should be the first place you go. If you leverage each of your first ten hires’ networks, chances are you’ll meet some excellent candidates. When done right, internal and external referrals can scale your company pretty efficiently. Sit down and get your engineers to physically list out the best and smartest people they’ve ever worked with and then go after them with crazy intensity. As an added bonus, referral candidates might be easier to close because a friend’s recommendation goes a long way.
Does anyone here (besides Stripe) do this? Systematically meet with team members to get lists of recruiting targets? What does "go after them with crazy intensity" mean?
This is Stripe's most successful recruiting channel so I'd definitely like to understand it better!
I think it's very normal for startups to do this with the founders and with the first few hires. I've seen several startups where there's an internal wiki or google doc created from meetings with founders/early engineers, identifying roles and "who would you suggest for these roles, and who knows them/how". Same thing done for "key initial clients" and listing who you know at each, and vendors/BD partners/distributors.
(The sad thing is when this was then passed on to a clueless HR/recruiting drone later, and the people were spammed.)
At bigger companies I've seen "recommend 2 friends" and all the standard bonuses (it's hilarious how some places offer $500 referral bonus but will pay a recruiter $25k; OTOH I know someone at Palantir who ended up making more on his $10-15k referral bonuses than he did in salary. One interesting fact is that giving an outside referrer a $500-1500 item, like an iPad or MacBook Air, is a lot more effective than the same small amount of cash. But, real ($5-25k) amounts of cash work best.)
We did at Microsoft. Honestly, for very experienced and senior people in dev tools, "crazy intensity" were usually not needed. Great engineers tend to also have friends who are great engineers, who are being paid at/near the top of their current company, might have been there for the decade, and you might be the first person to contact them in a few years, since they also filter out all LinkedIn or blind recruiter mails.
YMMV outside of dev tools, of course. RoR folks are probably getting recruited for all sorts of random places, but there really aren't a lot of dev tools shops, particularly that are building large enough projects to challenge people (e.g. have their own compiler, as opposed to just IDE bits. No offense towards IDE bits intended).
I believe Patric Collison explains a little about this on this answer he gave on Quora:
Most of the people who work directly on the user-facing parts of Stripe have managed products before, and enjoy the process of figuring out how they should work and what they should do. Before Stripe, Saikat and Sheena built Mockingbird. Alex built Taskforce and a number of open source projects. Amber had a long list of products under her belt. Ross founded 280 North, built 280 Slides, and co-created the Cappuccino web framework. Ludwig single-handedly designed and built Observer, a real-time web analytics tool. Ben started Kickoff. (As it happens, many people who don’t work directly on the user-facing parts of Stripe also have similar experience.)
The company I worked for in the past, its founder was good friends with a CS college professor. And I'm told the founder asked the prof. if there were any particular students who were "relentlessly good", and then the founder would go full-force to get them.
I got to work with one of the guys who was hired this way... ohh boy was he something. The most important lesson I got out of that was there are students in B-tier schools that easily are more capable than A-tier schools any day of the week -- I suspect the reason the founder of the company took this approach was that you'd get workers who're extremely capable, but would accept a lower salary than MIT grads are expected to (because, yes, at some point I asked the guy how much he was making and I remember my jaw just dropped on the floor at how little the amount he said was).
This is exactly what I've done over the past several years with great results. I stayed in constant contact with my old college professor (we play a sport at the same club) at a school none of you have ever heard of in the Chicago suburbs. The top CS student(s) at small schools can have extremely high potential.
When you combine this with investing time in candidates via a good internship or apprenticeship program the results can be spectacular. When you are outside SV it doesn't take much to make your internship program stand out by letting your interns do full stack development on actual applications that ship.
You need to invest the time on training/mentoring/pairing to make it work though.
I think tiers are a bit silly. There are certainly a-tier schools like Stanford. That said, some very bright a-tier students I have met have nothing on b or c-tier school students that have a bit of life experience.
Not everyone can afford (or is willing to fork out the $$) places like Stanford.
"This year more than 3,400 of Stanford's 6,700 undergraduates [more than half] are receiving needs-based financial aid. Another 20 percent receive other types of financial aid from internal or external sources.
Stanford students from families with income below $60,000 pay no tuition, room or board. Those from families with incomes between $60,000 and $100,000 pay no tuition."
That may be true, but students at top schools still tend to come from more affluent backgrounds. Yes, there are "homeless to Harvard" stories out there, but generally speaking Harvard students were able to dedicate as much time as they wanted to school and extracurriculars and exploratory learning in high school because they weren't distracted by a difficult home life or forced to work just to help provide for their family.
I realize this isn't exactly what jmspring meant, but it is still true, in a certain sense, that not everyone can afford a top school. The difference is that the costs come before you even send out your applications.
Purdue, Duke, Vanderbilt and so on I would consider B-tier.
I went to a B-tier school. Interestingly, I recently learned that one of my smartest friends only applied to one school (Stanford) and got rejected, and afterward applied to the school I went to because it was only 10 miles away from where he lived.
While we're on the subject, one other thing --
There's a lot of Russians, Indians etc. who recently came here and have poor English, and so a lot of people just look past them. But a lot of them are the most persevering and focused folks you'll ever meet, and in my experiences they learn English quickly enough anyway (considering they got to America before they were 15 years old or so).
I like how you guys are arguing about A. vs B. when many of us went to schools that are in a tier so low that there aren't even enough letters to give the tier a letter-based rank. (Maybe that's why Unicode exists!)
Tiers are highly subjective. I know many will disagree with tiering. But Purdue is at the very least a tier below A. I'm speaking of undergrad.
We at least know it's not A tier (Harvard Princeton Stanford MIT, I think I'm missing a few). Or if you want to get even more resolution, it's not necessarily A- tier either (Berkeley, "lower" Ivies, etc.)
I worked with what i refer to as the "Croatian Coalition" at Lockheed Martin. DAMN smart people. One of my best friends is from this group and I am constantly bouncing ideas off him and seeking to find a way to work together again.
I would never underestimate the skills of anyone based on where they were from....
Also, don't overestimate the skills of someone either...
I come from a no-tier satellite school, and I applied to two different startups in the valley. I did research and different internships, and had a github portfolio. I made it to a 4th and final interview, where they unfortunately decided I wasn't a good fit. Point is, they'll definitely look at you if you show them a decent portfolio.
Not aimed at you specifically, but in no particular order...
* Fill out your profile
* List your interesting projects
* Have interesting projects
* Expect to be asked in a job interview, "so, what's your username on hacker news/stack overflow/whatever else" and post accordingly. (statements that are dumb in retrospect are fine; being an asshole all the time isn't).
Again, in no way aimed at you specifically; but I'm constantly reading comments about job search and thinking, "I wonder what he/she is all about", click on their profile and... nothing.
Imagine the way some men go after a woman they're convinced is the right one. Not the sleazy "PUA" idiots. The ones who will learn her likes and dislikes, then make a concerted effort to be interesting and interested, and carefully work to avoid any faux pas. When I've seen it done well, it was elegant engineering. Find out what they're like, what they make now, what motivates them, and any mutual friends beyond the person that told you about them. Then make sure your sales pitch is "an offer they can't refuse."
When done by someone who understands people, it looks easy.
We do (Big 4 team) - it's the only way I'll hire somebody for our team, if I have a say in it (which I normally do). I find it's FAR more effective than reading resumes sent in blindly.
We do bonus for new hires (a few $K), which helps get everybody more 'engaged' - but the main drive is to get to work with folks you respect on work you think is awesome. Our team is up to 8 new folks in the last year or so, and so far, everything has been working fantastic.
Google and Facebook both have entire teams devoted to collecting employee referrals for engineers and give bonuses to employees. I have worked with both of these teams and it is a really effective way to find people who already have the trust of someone you have on your team, which is basically the goal of interviews anyway.
The company I worked for did this, but I don't know how well formal referrals sessions performed versus referrals occurring in their natural habitat - pulling the best and brightest out of your old job is a natural inclination once you switch jobs. Also, if you were highly regarded by the people you work with, in the Valley they'll almost inevitably reach out to ask "how are things at X", so the high-quality referral traffic will happen regardless.
I've never somewhere that used that model aggressively, but at the startup I worked at during college, most of the engineering team was out of the personal networks of the founders and the head engineer. The founder expressed to me several times that he much preferred to hire people this way (and asked me to send him referrals even after I left).
It was free form. There wasn't much to it other than on staff recruiter got the names of your bros and then harassed them with email. It annoyed people, but only as much as any other non engineering thing annoyed people.
We were supposed to get bonuses but I don't think anyone did except the founder's girlfriend. We didn't actually get many people hired this way, so at least everyone was on the right track of only trying to hire those smarter than yourself.
It wasn't entirely pushing the burden on the employees. Each place had an ops guy or on-staff recruiter who just got the names from us and took it from there. I've not seen it done effectively first hand, but I've heard it's the way to go.
> How did it work? Was there a formal meeting? Did it annoy people?
Stripe making its workers write out a list of all the engineers they know seems a bit extreme -- I mean, generally you can just name the top 5 smartest people you know of without much thinking. That's how the company I worked for went about this. Interestingly, it made us talk to our friends, and let them know the company was looking for workers and to expect to hear from them soon, because 'I referred you to them'.
Maybe we should have an HN poll for "best engineering team", rather than each startup claiming to be one.
I for one would vote for typesafe. Or precog. Pound for pound, there's more value per developer in those two companies than anywhere else.
Despite the consensus that college has little value to hackers, Stripe team members come largely from Stanford, Harvard, MIT and other major universities. Is this and the fact that Stripe's products are highly regarded just a coincidence? Would it be the same team and products without the team members' Ivy league credentials?
I think the answer is no and no. The benefits of college education are widely underestimated.
To be fair, many of those Harvard and MIT people are dropouts. I think there's some signal in having graduated with a degree, especially from a well regarded university, but it isn't really something we specifically look for and it definitely isn't a requirement.
Or the benefits of self-discipline, academic excellence and selection bias before such individuals get into "Stanford, Harvard, MIT".
For your argument to work, you'd need to find someone who's below average, lacks passion and under achieves on a regular basis. Then they enter "Stanford, Harvard, MIT" and become a highly regarded passionate professional.
The truth is that most of people who enter top-notch institutions are so far ahead of averages on a bunch of levels, that you could pull a bunch of them out during freshmen year, and they would still do well.
A large number of people at Stripe (I want to say more than half, but that might be wrong) dropped out of college or didn't go at all. Given that a bigger portion of our peers outside Stripe do have college degrees, I think that suggests a different correlation entirely.
On my part, I dropped out of school almost immediately (I was an Econ student at Suffolk in Boston). I joined Stripe right after graduating from Hacker School batch.
College is not the only source of pre-determined differentiation.
The fact that you went to Hacker School is also indicative of superior financial position and accreditation. Hacker School is a very well known and respected program that is (anecdotally) incredibly hard to get into. Moreover, since it is in NYC and is effectively equivalent to a full-time job, doing it necessitates a large amount of savings or a really generous network.
Hacker School is about as close as a training program can get to emulating the inhibiting factors of "top colleges."
This blog post is doesn't quantify why they have been able to recruit well written by non-employee fan of Stripe. It is a puff piece that's fun to read, sort of like the content you'd read in People Magazine. For example, the author provides a chart the breaks down like this:
1) we hire mostlty through referrals, which includes intense stalking
2) we've had reasonable luck w/ people who approach us
3) most people we contact via LinkedIn don't get back to us
4) once we hired someone through a recruiter
Points one through four are unique to Stripe. If they were an unsexy company in the boonies, point one would be "we hire mostly through recruiters". Point for would be "we once literally found someone under a rock".
I really like their approach to referrals, in particular thinking of referrals as being limited to 'the best and smartest people [employees have] ever worked with'
A lot of companies completely miss the point of referrals. They say 'X% of our hires last year were referrals, so let's force everyone to blindly scrape their Linkedin networks and refer all of those people.' The highest quality referrals come when employees have actually worked with the people they're referring.
I'd say most people who would be in a position to work at stripe (eg. ~5% of the programming population in the bay) are probably already in enough demand such that they aren't compelled to work for drastically reduced or nonexistent wages.
I'm talking about the internships offered by many tech companies to college students, which are always paid (often very competitively). I'm a student, and have benefited from these myself, but I'd imagine that from an employer's perspective hosting interns is a relatively low-risk way to get to know some potential full-time candidates pretty well.
Unsubstantiated claims are unsubstantial. Really? your own employees are the best? And you say that all their friends are also really awesome too? And people that you and your employees like are also ideal? You've got to be shitting me!
You can't discount the fact that hiring people is often an emotional game (i.e. finding the right fit for my team). An employee referral is naturally going to be accepted by more of the decision makers in a company than a complete stranger who is starting from a position of lower trust.
Though, at the end of the day, if referrals work better for a company then that is where the focus should be placed.
'The Best' are expensive and are constantly being poached. You don't need 'The Best' because you're not doing anything particularly innovative - you want "the most effective' which is probably someone 'good' who, with the right resources, can effectively implement the already known solutions to the already known problems you're likely to face.
gdb - at 6:25, are you saying that you just happen to appear in people's towns when they are there, and schedule flights without telling them? Can't tell if I'm understanding incorrectly or if the audio is muffled and mishearing.
Not to sound flip, but does Stripe need to be building the best engineering team in the Valley? From an outsider's perspective it does not seem like are trying to solve that difficult a problem--marry Internet technology with credit card payment technology. In effect, they are just building glue, not anything new. However, let's assume they are building very good glue. That still begs the question can one attract the best to build the best team when the tasks at hand might not attract the most talented? The answer to that question, I'd like to know. My own company works on what I think are challenging engineering problems, but perhaps not as challenging or impactful as what Google, Prismatic, Factual, or SexyStartUpX are working on (just to name a few).
So my question is how do you attract talent and build great teams when you're not the prettiest girl at the dance?
We have a unique set of technical challenges. We care about availability and durability to extremes that most others don't have to, and as a result we often end up having to build systems in novel ways. Fraud requires defending against active, motivated attackers. Building product requires figuring out the best possible way for it to work and then making it exist in the world. All of these are problems which you can't solve by simply throwing more people at them -- you need to hire the best people you can find.