Live data from Hacker News

Green Lumber Fallacy in Software Engineering

chrisbehan.ca

61–70 of 238 posts

Re: Green Lumber Fallacy in Software Engineering

#61

Data structures and algorithms are important to very important in software engineering and I think it's quite right to include questions on them in interviews. But that's not the same as knowing by heart how to implement non-trivial algorithms. There's the green lumber fallacy. To have a feel for the 'right' data structures and algorithms to use for specific problems is a key skill. But then the detailed algorithm is…

Data structures and algorithms are just parts, like screws and nails. When you're building a house, you don't need to remember if you should use 2 18-penny nails or 3 16-penny nails, or if you can use screws, and what kinds. What matters is that you know how to go look up the building code, find out what's required, use those parts, know how to verify they're installed correctly, and know the consequences to doing it…

We are still in the early days of the profession, and standard libraries are pretty small. Software sometimes requires fabricating parts that don’t exist, at least not on your platform or for your use case. None of us do it every day, but it’s tough to use people who can’t ever do it.

Re: Green Lumber Fallacy in Software Engineering

#62
post #49

I've heard bitching about some of the interview questions our team asks before, but here's the thing: each of those questions is about a problem our team actually had to solve before, reformulated into an interview-style question. Yes, we've had to use Hamming distances, worry about the scaling (N log N vs N^2) of particular solutions, use error-correcting codes, interesting data structures and all of that. Is that m…

What kind of stuff does your team work on? Seems like you have to solve a lot of diverse problems.

Re: Green Lumber Fallacy in Software Engineering

#64
post #32
post #23

Earlier quoted context omitted.

>>partly responsible for why so many devs stay in the same position That is why I am staying put for the time being; hate the interview process, hate being asked stupid questions about solving problems that I will never have to solve in real life. Ask me about projects I have worked on, ask me about code I have developed ask about my experience etc - but I am still looking for the development job where I will be requ…

I have a very talented SWE friend who only left a now-public unicorn because they were recruited by a former colleague at a startup they knew wouldn't involve leetcode in the interview process. I have another very talented SWE friend who has been doing leetcode exercises off and on for months and is struggling to start doing applications even though they do not like their current work and are undercompensated. They f…

leetcode difficulty is vastly exaggerated. people study 4 whole years of their lives in college to increase their chances of making money, why not spend around 5 months on leetcode which can perhaps get you much farther than anything from college?

i'm not particularly smart, in fact i struggle at work routinely, but i know what i have to do clear interviews, so i do the grind and it has worked well for me. (to a certain definition of "well")

now that i think of it, it has only worked well for me because actual talented swe's don't put effort into interviews the way people like me do.

Re: Green Lumber Fallacy in Software Engineering

#65
The leetcode style of interviewing is essentially a legal way to practice age discrimination.

When you're young and just starting your career, you typically have nothing but time, and doing programming challenges on evenings and weekends can even be fun. As you get older, life happens and you have children to take care of, older relatives to help out, a spouse who'd like to see you every so often, etc. Practicing leetcode-style problems in your 30's and 40's means less time with your family, offloading more of the childcare and housework onto your spouse, putting off household chores and repairs, and so on. So you end up with a hiring process that's incredibly hostile to older workers while being a relatively easy lift for younger workers with fewer responsibilities.

Re: Green Lumber Fallacy in Software Engineering

#66
I am a frontend web developer and I still get these types of questions. It's incredibly stupid. I don't think I've passed any of them yet I'm making 250k still so whatever. The most I have to think about data structures is deciding when to use a map, set, or array.

Re: Green Lumber Fallacy in Software Engineering

#67
post #64
post #32

Earlier quoted context omitted.

I have a very talented SWE friend who only left a now-public unicorn because they were recruited by a former colleague at a startup they knew wouldn't involve leetcode in the interview process. I have another very talented SWE friend who has been doing leetcode exercises off and on for months and is struggling to start doing applications even though they do not like their current work and are undercompensated. They f…

leetcode difficulty is vastly exaggerated. people study 4 whole years of their lives in college to increase their chances of making money, why not spend around 5 months on leetcode which can perhaps get you much farther than anything from college? i'm not particularly smart, in fact i struggle at work routinely, but i know what i have to do clear interviews, so i do the grind and it has worked well for me. (to a cert…

People who are good at the grind are good at the grind. These are also often the people who succeed in life; intelligence is vastly overrated.

Re: Green Lumber Fallacy in Software Engineering

#69
post #60

Data structures and algorithms questions are a perfect proxy for (1) is the candidate smart and (2) can the candidate write moderately complex code (arrays, hash maps, pointers, nested loops). 90% of candidates will fail 2, and you will get a good idea of the rest with 1. Unless your company can afford a month-long interview process for every candidate which the author suggests, this is the best we have.

> Unless your company can afford a month-long interview process for every candidate which the author suggests, this is the best we have.

If the current leetcode style of interviewing is the best that SV can come up with, despite having some of the best engineers and thinkers in the world and billions of dollars to spend, that's really sad.

Post reply on HN