4 ms·
We won't hire a junior with five years of experience
- ungreased0675 2y agoI’d love to see how this works out, because my rule of thumb is to not hire for potential. In my experience, including “potential” in the decision matrix is just a way of laundering bias and makes the process less objective. My managers must be able to answer why they’re hiring one person over another. If it’s too subjective, we might as well save time, skip the charades, and pick randomly.
- palata 2y agoIMHO it is random anyway. At least to some extent: you can check that the candidate seems somewhat competent (i.e. filter out all those who just cannot write code). But finding the one who would be the best fit for the position? No chance at all. I believe a big mistake is to focus on the technical skillset for hiring. And then you risk ending up with a team of supposedly "all stars" (which is often debatable) that hate each other, can't stop arguing or just create a toxic atmosphere. What I would do is try to find, among the candidates that seem competent enough, a good colleague. Someone with whom I will enjoy working. I am convinced that a team of friends will beat an individual jerk in the long run. It's great to have a team of superstars, but if they care more about their stock options than about your shitty product (really, who is proud of optimising Facebook's ad revenue? They must be there for the money), then maybe you are just building a company that will waste a lot of potential on a failed metaverse, or a failed VR headset, or a failed TikTok competitor.
- ungreased0675 2y agoAbsolutely agree with hiring competent enough people. Most companies that want 10x engineers don’t even have the infrastructure and processes in place to make use of one.
- palata 2y agoWow, that sounds like a toxic mentality. First, interviewing is notoriously hard and random. I feel like in sport, when they scout, they can look at young players doing pretty much exactly what they will be doing for the rest of their career. Baseball won't dramatically change during the course of their career. Software engineering feels more like your next baseball game may require swimming, or sailing, or the ball may be replaced with cards. And it's not like you observe your "rookies" doing exactly what you think you need now: you observe them in an environment where they excel at passing exams. Second, I wouldn't be proud to strive to mimic a system that is very, very far from perfect. In sport, if you're not in the very few players who get very rich or in the pretty limited amount of players who can make a living out of it, you pretty much have to find another job and practice your sport in your free time. Even if you are excellent. A company recruiting "the best of the best" must fundamentally lack humility: do they think that they themselves are the very best in the world? As in, not only they must be excellent, but they must be at the very top of the excellent people in the world. If not, why would this exceptional rookie go work for them? I don't want to work with superstars, I want to work with nice humans that are competent for their job, have a healthy work/life balance and care about doing something that matters, and doing it right. If you so openly look for someone who either wants to feel special or earn a lot of money, you risk ending up recruiting someone like "Big Balls". And I surely don't want to work with them, or for you.
- braza 2y ago> Whereas a programmer who's either straight out of school or fresh off their first internship or short-stint job is essentially all potential. So you draw their line on the basis of just a few early dots, but the line can be steep. > It's not that different from something like the NFL scouting combine. Teams fight to find the promise of The Next All-Star. These rookies won't have the experience that someone who's already played in the league for years would have, but they have the potential to be the best. Someone who's already played for several seasons will have shown what they have and be weighed accordingly. I know that DHH is good at programming, but I am sure he has never scouted in collective sports and/or knows the difference between programming and seeing potential in sports. Since I have been on both sides, I have a few words on why his assertions do not hold water. At the time that you do scouting, yes, you might want to have the promising QB/WR on your team, but those guys do not have what developers have, which is, for the lack of a better name, "skills transitivity" between their positions. A QB that has some characteristics like strategic thinking and skills to read defenses (like Peyton Manning), precision for long-distance throws (like Tom Brady), or being a dual-threat plus pocket mobility (like Russell Wilson) but it's very unlikely that with those skill sets, you'll become a great wide receiver or even a Tight End/Wide Receiver. As a developer, yes, one can optimize the process to have the most stellar coder, but by the force of their craft, the more time they have, the more their skills enhance transitivity to other parts of the same craft. And the good thing is that, contrary to the promising QB, over time if his not the stellar player, his skills won't make him able to transition to other parts of the team. In concrete terms, a developer that learned in their years 1-2 to work with TypeScript, in the years 3-4 worked with Java, and in the year 5 started to touch Docker will have a way more skill set and transitivity than someone picked out of the college that you do not know for sure how their learning will affect their skills transitivity. And another flaw in the argument, maybe a minor one: stellar potential most of the time needs to find stellar environments and conditions to thrive. The NFL teams know so much about it at terms of fundamental level that even when the worst team of the previous season generally selects the 1st pick QBs in the draft, they know that if the conditions does not change, in a few years that stellar talent will go somewhere else.
- Lindaporche5 2y ago[flagged]