5 ms·
Lately what I have been trying out is telling people: if you want to come for an interview can you prepare a small presentation of one of the data structures th
by mirko22 8y ago
Lately what I have been trying out is telling people: if you want to come for an interview can you prepare a small presentation of one of the data structures that you know
about or like, or ideally hash tables (as they cover wide range of topics).
If a person than comes in for the interview in about a week from when he is told this and can’t present that DS to some depth I don’t bother to go on with much longer interview.
I got lot of criticism for this ranging from who needs data structures, we are not building libraries to this is too complex to ask a person.
But in my opinion if someone tells you what you are going to be asked on the interview and you don’t even bother to prepare at least a little bit i can assume me you will act like that at work too.
Why a data structure? Why not, you don’t necessarily need to like or know anything about the domain you will be working in, same way you might not care or like data structures.
This doesn’t apply to someone writing HTML maybe but for a senior programer it should be easy to figure out how a simple linked list works, if you don’t care about learning it I don’t care about wasting my time interviewing you.
I would like if some of you might give me thoughts on this approach.
- dentemple 8y agoWould I be able to just prepare an array? Because arrays and built-in array methods are 95% of my (non-CSS) work as a front-end developer.
- varjag 8y agoIs it really possible to be a senior programmer without understanding a concept of linked list? Mindboggling.
- jcadam 8y agoI interviewed one who had a lot of trouble finding the largest integer in an array... I mean, it really was a bozo-filter level problem, and it amazed me how many people couldn't do it. Personally, I hate white-board interviews, but I'd be relieved (and yet annoyed at the same time) if you asked me to find the largest integer in an array.
- ThrustVectoring 8y agoIt's much easier to interview for senior programming positions than get them. There's folks who get rejected from a lot of companies.
- Rinzler89 8y agoOh yes and then some. Some of my friends work as devs at some bloated $BIG_CORPS for a few years and reached senior level. However, as they grew in seniority, their coding tasks more and more got replaced with management tasks where the coding was outsourced to developing countries or consultants to the point they almost forgot how to code. Nearly happened to me as well, thank God I left that shit show in time.
- maury91 8y agoI like your approach. To be honest, after many years of work without touching low level algorithms I partially forgot many stuff I learned at Uni, especially data structures and sorting algorithms (I remember how they work, but I cannot tell you the complexity or write the code on the fly). But if you tell me "look I'm going to ask you this and that at the interview" I can pick up 2 wikipedia articles and refresh my memory about that topic so I will be prepared.
- jcadam 8y agoWell, I'd assume you wouldn't want a presentation on something as trivial as a linked list, and try to study up on R-trees or some such thing. And with my luck, you'd end up being the world's foremost expert on R-trees...
- getaclue 8y agoWell to take a step back and evaluate the question of "who needs ds" - most answers to typical problems come down to using a hash table or an array... or some trickery of both. So... I can see this question as being useful. I am afraid that I am missing the point of why YOU chose this approach if you can't answer this question. No offense to you. It seems like you came from the approach that if people want this job they will do this thing. Seems noble and with good intentions. But DS is much more than that. It is the basics. The definition. The building blocks. Lots of reasons why you would want to ask about it. I've actually been asked something similar prior to working at IBM. My caveat was that this question was asked in the interview without any preparation. However, I can see how some people would find this challenging. It may seem like a lot of work for some people. Especially if you worked with some engineers that freak out when such a task is presented. If they don't have an outline, a set criteria, the protocols, previous samples, and the such. then you will have a bad time. Such people approach problems very systematically. As long as your task is clearly defined and has such things, then it should be easier in theory. The people who aren't phased then won't be phased. The people that may see this as challenging shouldn't also be phased. Finally, considering monetary incentives for such additional work could smooth out some issues. You could pose such things as an investment and a risk mitigation strategy to your elders. Anywho, these are some thoughts.
- jiveturkey 8y agoI think it's fantastic. Good programmers take a data-centric approach, preparing a slide on a data structure of your choice is trivial. For HTML the equivalent might be CSS-oriented.
- invalidOrTaken 8y agoAs someone who hates most interview processes as a candidate, I like this one quite a bit. - it doesn't waste the candidate's time. If the candidate knows all about it: great! If they don't---it's never a bad time to learn/re-learn the fundamentals. - it avoids the "gotcha" approach that tests for whether you know a specific thing, right now. - it tests the candidate over time. Speaking as someone who used to rock interviews but did not perform as well over the long haul, I think this is an important distinction. I will read the other comments with interest, but initially I say: bravo.
- mixmastamyk 8y agoI'd love to come into an interview prepared rather than wonder which of a hundred topics they might be focused on this second. The first situation I can control, the second is losing the lottery.