Live data from Hacker News

Data Structures for Coding Interviews

interviewcake.com

171–180 of 238 posts

Re: Data Structures for Coding Interviews

#171
post #167
post #165

Earlier quoted context omitted.

When you say things like "treated like a monkey expected to do tricks on demand", you're playing status games.

Ah, I see. You don't believe you're playing what you call a status game, even when you are.

The perspective that it's all a status game is legitimate in its own way, but not the only way to view things. I find there's a useful distinction to draw betwen trying to influence people's perceptions directly versus trying to do something valuable and trusting people to perceive it for themselves, and find the latter a lot more fun than the former.

Re: Data Structures for Coding Interviews

#172
post #41
post #22

Earlier quoted context omitted.

There's a difference between not being able to write bubble sort and realizing that looking it up is a better use of your time. But when it actually comes time to do something you can't copy/paste off the internet, what do you expect a programmer who can't reinvent a half-decent bubble sort to do? The interview is to convince the other person that you can think logically about programs. Bubble sort is a low, low bar,…

Maybe he's being hyperbolic, maybe not. But that's entirely besides the point. I'm absolutely certain that there are many, many engineers who failed interviews because they couldn't write a zig-zag string and could yet come up with good solutions to problems at a real company. > what do you expect a programmer who can't reinvent a half-decent bubble sort to do But interviews aren't testing for that. The guy who inven…

I would not be surprised if there were other, non-technical issues during such an interview. I know many people who are supposed to be smart, but they consider the basics beneath them and refuse to do anything by hand in the presence of people that might be subordinate in another context.

Re: Data Structures for Coding Interviews

#173
post #163

Earlier quoted context omitted.

Yes, you should never be reimplementing something that's in a standard library and for what it's worth I would never expect an interview candidate to know how to implement a red-black tree. What I meant was that knowing core algorithms and data structures is important so you can recognise familiar problems so you avoid reinventing the wheel + you know where to look for answers. Maybe you have to use some clever combi…

What do you mean by "knowing core algorithms and data structures" then? Because for me that phrase would definitely include knowing how to implement your own red-black tree, hash table, linked list and so on.

Being able to implement off the top of one's head is a skill that fades as soon as one is no longer required to do so.

Requiring it as a criterion of hiring is, essentially, a back-door way of saying "we only hire people fresh out of college", since they're the ones who've recently been having to do this stuff on exams and have it fresh in their minds.

Re: Data Structures for Coding Interviews

#174
post #142

Earlier quoted context omitted.

Most "senior developers" I know don't know much about data structures. Standards are pretty low in the industry. One reason might be that optimizing for memory consumption or handling "large scale data" almost never happens in practice.

I never had a software development job where optimizing memory consumption and handling large scale data (for whatever definition of large was for that particular system) wasn't a necessity. It was also useful to know when these measures were and weren't needed depending on the context in the system. I do mostly what's called "systems programming" and did embedded previously but also did some work on "normal" softwar…

I do mostly what's called "systems programming" and did embedded

Sure. And what's most crucial to do in those fields is not necessarily what's most crucial to do in other fields. 99% of interview horror stories are basically someone saying "I decided this is an important thing based on my narrow perspective, and anyone who doesn't know it as well as I do will be dismissed as completely incapable".

Re: Data Structures for Coding Interviews

#175
post #125

Earlier quoted context omitted.

http://datascientistjobinterview.com

It's crazy that there is a whole industry dedicated to cheating ahem gaming job interviews in software/IT. Imagine if doctors or lawyers or real engineers did this. No wonder we can't get taken seriously as a profession.

Is it cheating or gaming the system if the vast majority of QUALIFIED engineers would not pass an interview without preparation? Reviewing these cheat sheets every couple of years is essentially part of the job.

Re: Data Structures for Coding Interviews

#176
post #49
post #41

Earlier quoted context omitted.

Maybe he's being hyperbolic, maybe not. But that's entirely besides the point. I'm absolutely certain that there are many, many engineers who failed interviews because they couldn't write a zig-zag string and could yet come up with good solutions to problems at a real company. > what do you expect a programmer who can't reinvent a half-decent bubble sort to do But interviews aren't testing for that. The guy who inven…

Good CS fundamentals are important because they are transferable skill to a wide array of problems a startup may face. Just because someone wrote an impressive framework or library doesn't mean given a complex problem outside of their known domain (web framework design or package management tool), they would be have the necessary background to solve it. With strong math and CS knowledge, you can reason through almost…

Good CS fundamentals are important

https://medium.freecodecamp.org/welcome-to-the-software-inte...

Yes, I can see the confusion. You see, we are looking for the very best Translators, and it has been proven by major companies that the people that are able to do the job best have a very solid foundation in the science translation is based in, such as Linguistics and Classics.

Re: Data Structures for Coding Interviews

#177

Earlier quoted context omitted.

Blame the young, beautiful people all you want for not slaving away over a 4 year degree that puts them in the same position as 1 year of self learning would get them, OR blame the business yuppies who keep coming up with the SaaS business models that don't need anything more than plug and play code monkeys. I understand memorizing data structures does not make a good engineer, but honestly who is still asking for cr…

At the risk of sounding like a cranky old codger, I'd like to point a couple of things out. If all you have are "plug and play code monkeys", all you'll have is shitty software. The fact that shitty software is "enough" for so many businesses is just another symptom of the biggest problem with our society: we optimize for profit and damn everything else.

Oh I agree completely. I just take issue with the fact that it somehow is a "youth problem", as is being pointed out by the parent comment. It's a business problem, not a lazy millennial/education problem.

Stop hiring shitty coders and you'll stop getting shitty interviewees. Less shitty interviewees means less need for these types of "beat the coding interview" services/blogs.

Honestly a lot of times the comments in these threads amount to "I was a geek and it wasn't cool, I know CS from the ground up, and nobody deserves to have an easy path to being a coder". It's an exhausted form of gatekeeping and doesn't make anything better for anyone.

Re: Data Structures for Coding Interviews

#178
post #38
post #9

Earlier quoted context omitted.

It's unfortunate, but all the companies are doing this. Here's what a Google lead said in a tweet: > Hello, my name is Tim. I'm a lead at Google with over 30 years coding experience and I need to look up how to get length of a python string. DHH: > Hello, my name is David. I would fail to write bubble sort on a whiteboard. I look code up on the internet all the time. I don't do riddles. Max Howell: > Google: 90% of o…

Ah, the perennial apologetics of weaponized mediocrity. If you can't write a simple recursive algorithm that swaps two values (Max Howell), two nested for loops (DHH), or show me that you used Python at least once (uhh length? yes, there is this builtin, I forgot its name...), why would I want to hire you over someone who has seen a computer before? And to avoid being called hypocritical, here's off the top of my hea…

Ah, the perennial apologetics of weaponized mediocrity.

Don't look now, but you just failed every interview I've ever conducted. Maybe consider a field where the skill you've just demonstrated would be useful -- politics, perhaps?

Re: Data Structures for Coding Interviews

#179
post #163

Earlier quoted context omitted.

What do you mean by "knowing core algorithms and data structures" then? Because for me that phrase would definitely include knowing how to implement your own red-black tree, hash table, linked list and so on.

Being able to implement off the top of one's head is a skill that fades as soon as one is no longer required to do so. Requiring it as a criterion of hiring is, essentially, a back-door way of saying "we only hire people fresh out of college", since they're the ones who've recently been having to do this stuff on exams and have it fresh in their minds.

> Being able to implement off the top of one's head is a skill that fades as soon as one is no longer required to do so.

I haven't implemented a hash table, linked list, growable array or binary tree for years but know I could because I understand how they work and I select which one to use often while coding. I find it hard to understand how you could claim to know how those data structures work and not be able to implement them.

Re: Data Structures for Coding Interviews

#180

Earlier quoted context omitted.

Most "senior developers" I know don't know much about data structures. Standards are pretty low in the industry. One reason might be that optimizing for memory consumption or handling "large scale data" almost never happens in practice.

> Most "senior developers" I know don't know much about data structures. Standards are pretty low in the industry. Even if standards were low, the point of an interview is to gauge the standard of the developer. Algorithms and data structures knowledge is important.

How important though? Rarely does it come into play from my experience, at least for those who work in predominantly the UI layer on the web. Even at my job at Big Co. as a senior engineer (algorithms/data structures knowledge is necessary to pass the interview process here), it hasn’t manifested in a significant way, at least not compared to other skills such as architecting systems for maintainability, identifying the cause of bugs & fixing them, and collaborating with other engineers to implement something the best way possible.
Post reply on HN