4 ms·
What an arrogant comment. > The people who actually know this blindfolded are in demand because we're useful on large projects with novel systems architecture
by ZephyrBlu 5y ago
What an arrogant comment.
> The people who actually know this blindfolded are in demand because we're useful on large projects with novel systems architecture
> Thankfully, there's lots of other jobs out there where all they're looking for is a warm seat, closed jira tickets and happy customers
As if there is no in between and only your specific type of job is in demand. Why are you so condescending towards any role that doesn't perfectly match your interests and skillset?
I guess product-focused developers, partner engineers, embedded engineers, etc are all useless because they're not working on "large projects with novel systems architecture".
In any case, this is also a false dichotomy. See this person's comment about being a PhD compiler and algorithms student yet still struggling with LeetCode: https://news.ycombinator.com/item?id=27312674 https://news.ycombinator.com/item?id=27312674
- delayclose2 5y agoI didn't read his comment as condescending. He said the world needs both engineers and plumbers. The world needs more plumbers than engineers, that doesn't mean that plumbers are useless. Your example is not a good one because 1 month of practice would not be sufficient for most people to get into FAANG. See: the guy who grinded Leetcode for a year and failed to get into Google (though he did get into Amazon). If you only need to grind Leetcode for 1 month to get into FAANG, then that means you're already pretty good algorithms wise.
- ZephyrBlu 5y agoHe classified his work as engineering and everything else as plumbing. That is condescending. > If you only need to grind Leetcode for 1 month to get into FAANG, then that means you're already pretty good algorithms wise That's the point. That person should be pretty damn familiar with LeetCode questions, yet they still had to grind for a month and they're scared of it.
- josephg 5y ago> He classified his work as engineering and everything else as plumbing. That is condescending. Most real world programming work kind of is plumbing though? We take data from over here and put it over there. We build pipes. And for good, sensible reasons, most of the pipes we make use standard fittings (REST, JSON, etc). This is the whole point of this thread - you don't need to be good at leetcode questions to do this sort of work. I agree with that and I think we're all on the same page here. Leetcode tests something else. That other thing is also a real skillset. I hear you that calling it engineering is condescending. But I still wish we had a good name for it..?
- cloverich 5y agono... i’ve worked with a fair number of leet code all stars at startups and they are rarely capable programmers in a product development sense (taken in isolation). I would say the reason the plumber vs engineer analogy is condescending is the implication that non algo work operates with well defined problems and criteria and rarely requires any engineering. my experience has been the opposite. To solve problems effectively and pragmatically it requires understanding the system constraints in addition to the people constraints. Generally speaking even identifying the key problem and constraints is a relatively rare skill, much less selecting a solution that fits the people, budget, and timelines. I’ve since realized it’s that most software developers — algo skills or not — are simply not great engineers. Having accomplished anything rigorous like leet code helps (demonstrates diligence and effort), although it is still no substitute for a history of shipping working software and personally even if i’m tasked with interviewing a candidate using an algo whiteboard, i don’t do it.
- username90 5y agoEngineers are rarely good plumbers.
- mslm 5y agoTo be honest, he's not wrong. He did definitely come off as arrogant, but so would an electrical engineer saying all of this in an analogous way about your home electrician. He could have just said it better, and should probably take any conceit out of his head because even between engineers there are hugely varying levels and he might not be as big as he thinks.
- josephg 5y agoHuh? Who said there's no in-between? Or that other jobs aren't in demand, or valuable? I mean, you explicitly quoted text from me saying "there's lots of other jobs out there" - aka, other skills are in demand. To be explicit, I love that there's so many engineers out there who are keen to do product work, or work as partner engineers or whatever. Thats really important stuff! I personally prefer to spend my time with interesting data structures. And as luck would have it, lots of engineers really struggle with data structures and algorithms. So I do that work instead whenever I can. Why is my love for this stuff such a threat to you? And sure, real roles usually don't have us doing one thing all day. Very wise. But, so what? > See this person's comment about being a PhD compiler and algorithms student yet still struggling with LeetCode PhD candidates are humans too, like the rest of us. We all struggle at some things. Algorithms are hard. Getting a PhD doesn't magically change that. And what point are you trying to make in bringing this up? Do you think that nobody is good at, or enjoys leetcode style algorithm / data structure puzzles? I'm walking proof that thats wrong.
- ZephyrBlu 5y ago> Thats really important stuff! Based on your previous comment, I don't believe you. You describe your own work as "large projects with novel systems architecture". Large (Important), novel (New and difficult) and dealing with architecture (Complicated and important). You describe other work as "all they're looking for is a warm seat, closed jira tickets and happy customers". Warm seat (Low skill/easily replaceable), jira tickets (No creativity or thinking, just follow the ticket), happy customers (Isn't this important for everyone?). The difference in tone is massive. It's hard to believe this wasn't intentional.
- josephg 5y agoDo you believe all programming work is equally difficult? I don't. I graduated alongside some people who work on SeL4. They wrote an operating system kernel in Haskell, then used proof systems to formally prove its correctness. Then rewrote the whole thing in C and mathematically proved their C code is equivalent to the haskell code they wrote. The result is an entirely fully formally verified operating system kernel. This has never been done before, and its a massive achievement. Its a first for humanity. I'm not sure I'm smart enough to work there. I certainly don't know enough math. I think most programmers I've worked with throughout my career aren't good enough at programming and math to work there either. I think formally proving the correctness of an OS kernel is more difficult than implementing a B-tree. And implementing a b-tree is more difficult than styling a button in CSS. Knowing how to style a button is a more useful skill. Its important. Its valuable. But I stand by my comment. There are more people who know how to style a button in CSS, and they're given less respect, they're more replaceable and usually less well paid. And for good reason. My friends on the SeL4 team could probably do my job if they wanted to. I don't know if I could do theirs. The fact that most of us in this thread aren't good enough hackers to work on sel4 is something we have to live with. It doesn't make us worse people, or less deserving of love. And it doesn't mean our work isn't valuable. It is. But if all you know how to do is style a button, you are valued less in the jobs market. Some people are actually better at programming than other people. And some jobs in our field are genuinely harder than other jobs. Hard interview questions are asked when they only want someone who's excellent to fill the role. Its absolutely not fair, but thats life.