This is a great point. The more senior someone is, the more often their answer should end up, 'it depends'. Evangelists often end up not following the standards set in an existing project causing all sorts of maintenance issues later. They also often to seem to always be arguing for rewrites because it doesn't fit their opinionated view of the world.
Here at the General 1950s Engineering Corporation, we hire clean-shaven men who did well in college, are dedicated breadwinners for their family, and killed at least five enemies in the war.
Two things:
1) I graduated from college nearly 30 years ago. How is what I did in the 90s a predictor of what I'll do for you today
2) It could be "Her" academic record. Just saying.
Thats what the remainder of the next 30 years of history are for.
> 2) It could be "Her" academic record. Just saying.
It can be "His". Just saying.
2) English is not my main language, hard to explain, but we use the masculine form when we refer to "the candidate" (which is a masculine noun). Sometimes I do a bad job at translating my thoughts into English and I get to sound like that.
The last two of those don’t strike me as particularly theoretical.
Wow, you actually ask for their transcript? I don't think I've run across this after my first job (an internship), thank god. The main issue with this, of course, is that people are generally much more motivated by pay than by grades and foisted requirements, so you're going to get a very noisy signal from this.
What is the distinction? Surely a "internally motivated" person would be driven to learn regardless of grades.
Anyway, I'm fairly certain nobody will ever work for you out of simply "internal motivation".
There are also people at his small company who spend every weekend building race cars just for fun. They have barns full of engines and tools (I'm jealous of how much space they can afford out in the rural areas!). The reason that they are such good engineers is that they find it fun. They do it in their spare time for fun. They find solving these kind of problems fun. So when they go to work during the week, they're having fun which makes them really good at what they do.
My friend said it to me before that "you can't beat someone who does it for fun" and that's just about for everything. If you look at the best hedge fund managers, sure they had more money than I did to get started. But they also find it fun to do (what I think is) the drudgery of learning the space that they're working in.
So back to grades...if you find someone with good grades who sounds like they worked for the good grades, that's fine, they're a hard worker and you probably won't go wrong with them. But if you find someone with good grades who just was having fun solving problems and happened to get good grades, then you have a real winner. And I think you need to just talk to people and see what they say. You can tell the "grinds" from the others.
I'm also careful to keep in mind that lots of it is luck: having interest (finding it fun), talent (also being good at it), and value (someone willing to pay for it) doesn't make you a better person, it just makes you good at the one thing that someone wants. For example, the things that I find fun are related so solving certain kinds of mathematical problems with software. I was able to find a company that needs that, but there are very small number of places that need what I love. If I had to work for Big Software Co, I'd be ok at it, but wouldn't be a 10x developer. I guess I'm just saying that luck plays a lot into it.
People who excel academically (in my experience) often have a rough transition to the working world because the feedback loop is so different from what they’ve trained themselves to be successful at. They go from 9 weeks of studying to being declared excellent and moving on to something else and repeating the process to a lot more ambiguity in both feedback and outcome.
I’ve gotten to the point where I don’t even consider education (either as a plus or minus) anymore.
But I guess your comment about people who spend 9 weeks studying is exactly the people I'm not looking for. People who talk about how hard school was because they were "studying" all the time are the people who are working for the grade, not just doing stuff they love.
I know that talent and interest are not evenly distributed in the population. And if you actually are good at something you're interested in it's also vanishingly rare that it's something someone will pay you for. So I'm not trying to make the "if you love what you do, you won't work a day in your life" argument. I'm just saying, that there are people who are interested in something, they're also talented and do good work, and it's something that someone will pay for. Those are the people I'm looking for. It's unfair, but true.
I’ve hired in multiple organizations. Where we could hire quickly and fire quickly, we were willing to take more risks. Where it was hard to let someone go or the work had little risk tolerance, we’re were a lot more cautious and depended on a lot of signals when making a hire decision, including the academic record.
What about Fermi estimation problems? The internet seems to have turned on them in recent years, but they are a good test of intuition and general problem solving skills.
People who are good at Fermi problems may be good problem solvers. But people who are good problem solvers may not be good at Fermi problems.
Way to inadvertently eliminate basically anybody who is neurodiverse. Most of the great engineers I know, myself included, had absolutely shit university records because brains don’t always do what they want to and university is rarely a motivating factor for people As the other commenter mentioned, rarely are the motivators the same between university and a job.
> Of course, we are not recruiting PHDs to do backend work, but people who did decently well in school are usually nice to work with.
What does someone’s grades have to do with how nice it is to work with them? I know people that aced their classes and are complete sociopaths, and I know people that dropped out of high school and are lovely to work with.
> There are brilliant dropouts, of course, but they are not the norm.
You say they exist, but you’d never consider them according to the rest of your comment.
One example is sloppy resumes with grammar and spelling mistakes. What does spelling have to do with coding? Both require care and attention, and your resume reflects how much care and attention dedicate to things.
But don't forget that while coding, the IDE, compiler, or whatever will correct your spelling mistakes in a very short feedback loop, with hardly any penalty for your output rate. That might mean that your dyslexic super programmer has never learned the value of carefully going over each text before submission.
Exactly. Proofreading and double checking is a valuable skill/habit. I would consider the programmers that learned this to be better programmers. I’d venture a guess that those that learned this early on got better grades. I can use the grade as an aggregate proxy score of a bunch of different abilities and habits. Many of those are helpful at work.
People here like to hate on it, but if you can't solve a problem where a good enough solution uses standard data structures in a halfway obvious way, you're gonna have a hard time in the job.
I dropped out of college young, for complicated reasons. It has never, to my knowledge, been an issue with any potential employer.
And I also disagree with wanti g someone with a “good work ethic”, as you say. People with a good work ethic will grind out mediocre code year after year. I want a creative lazy coder who will find a smart solution or piece of automation to save himself work down the road.
I despise this trope of lazy coders. The best engineers I've ever worked with were thoughtful, efficient, and hard working. They got things done I didn't know were possible, and then did it again the next day. They write books, develop open source libraries, and speak at conferences. Lazy people don't do that.
Most of the seniors I interviewed were acing questions like this (they probably answered them tens of times before), and there's no way to differentiate them, once you get perfect answers. As the author of blog post mentioned, some of them don't even listen the question till the end before reciting manual phrases about Single Responsibility.
Some people would disagree but for us there are a few factors that predict if the candidate would be a good fit:
* The ability to solve easy and medium leetcode-like challenges and explain his choices. Nothing fancy, no dynamic programming or graph theory. This tells us if the candidate knows how to write code, which in most cases is at least 50% of the job.
* His academical record. It's a good predictor, because people who actually did good in school and finished their homeworks have a good work ethic. Of course, we are not recruiting PHDs to do backend work, but people who did decently well in school are usually nice to work with. There are brilliant dropouts, of course, but they are not the norm.
* We test how opiniated the candidate is when it comes to technology by asking outrageous questions (relative to the Status Quo): Why dependency injection is bad. We like people with opinions, but we find difficult to work with "evangelists".
The rest is commentary (at least in our case).