Inverting Binary Trees Considered Harmful
121–130 of 225 posts
Re: Inverting Binary Trees Considered Harmful
#122Earlier quoted context omitted.
I personally wouldn't be willing to spend 8 or even 16 hours working on an interview question for the chance to receive an offer. I'd take the one hour whiteboard dance.
What if you were compensated for your time? My three favorite evaluation processes so far (from the POV of the interviewee): 1. Quick phone screen with someone technically competent enough to call me on my BS if it were painfully obvious, followed by a "come in and let's get you working as a contractor". I went through this scenario twice, and both times it worked out rather well. Of course, there was risk involved w…
Re: Inverting Binary Trees Considered Harmful
#123Re: Inverting Binary Trees Considered Harmful
#124Re: Inverting Binary Trees Considered Harmful
#125My strategy, when interviewing is: - If the candidate has some FLOSS project he mentions in his resume (we actively encourage them to do so), I take a look at his/her code. That is usually one of the best indicators of their abilities. If the project is interesting, I usually start the interview from it. - Ask general questions which a candidate for this position should reasonably know. Try to get the candidate to talk to you, and then try to get the conversation to a more detailed level, to test how deep the knowledge of the field has gone - Ask the candidate to talk to you about something they have passion about in the tech field, a project they loved to work on. Again, use things the candidate is describing to get to dig a little deeper - Look at the CV, find any language that the candidate affirms to know well and to use daily, and ask some specifics about it. - Finally, make a small thought experiment of building an application.
These are normally questions that should not weed out anyone because they don't remember that particular detailed thing I love so much, and still weeds out very quickly whoever is superficial, or is pretending to know things he/se doesn't know.
You'd be amazed how many "rockstar web developers" fill their mouths with "RESTful webservices" and then have no idea of which the HTTP caching headers are. Or what's the HTTP status code for Not Modified. Or by how many python "hackers" can't tell the difference between a list and a set in their favourite language.
So, I definitely try to make the candidate be in a comfortable place during the interview. I know of at least one guy that told our internal recruiter that I use the interviews to show off... and that was because I explained a senior Java programmer that yes, Java's GC system is a bit different than Perl's.
So be advised, sometimes people are just bitter with the interviewer because they performed badly and can't admit that to themselves.
Re: Inverting Binary Trees Considered Harmful
#126I'll be the contrarian and claim that inverting a binary tree is a perfectly reasonable interview question. (Although not anymore now that it's famous). It combines basic background knowledge (what is a binary tree and how is it structured?), ability to reason logically (binary tree algorithms are often recursive, "inverting" a tree with no children is a no-op, otherwise you want to swap the children, and the childre…
In your daily programming activities, how many times do you have to implement a binary tree? I'm genuinely interested.
Re: Inverting Binary Trees Considered Harmful
#127Earlier quoted context omitted.
I don't mean to personalize this to you, but your story kinda illustrates one of the problems. There's so much ego and self-worth tied up in both sides of this style of "interview". Both sides have this overwhelming need to show how smart they are. It's understandable in some ways. It's part of what attracts people to the field, showing off intelligence. I'm guilty of it myself. But it makes the "interview" process h…
> One thing that might work along these lines- Bring in a hard problem that the interviewer doesn't know how to solve and spend some time trying to solve it with the candidate. As a team, discussing different options and problems with those options. You know, like people do in actual work situations... ^This guy gets it. I've never understood why interviews are set up to put the interviewee on edge and make him or he…
I think it's our responsibility, as interviewers, to make people as comfortable as possible so that they can perform at their best. It's our responsibility to prepare for the interview, smile to the candidate, downplay any hiccup they may have.
I don't believe all the BS about "taking people out of their comfort zone": 98% of people will feel uneasy at an interview and they will be well out of their comfort zone already.
Re: Inverting Binary Trees Considered Harmful
#128Anyone know what a dag is? Seems like a term from finance, but it is literally unGoogleable.
Re: Inverting Binary Trees Considered Harmful
#129This burns a little as I got turned down for a job I think I would have done really well at. I'm wondering what I did wrong exactly. I accepted defeat as graciously as I could but I don't know what my future holds. I love programming but I'm wondering if programming doesn't love me.
There are a lot of interviewer egos out there and kids being put in the position of Ultimate Power(tm) can really do a lot of damage to the self-worth of qualified candidates.
Just keep coding, studying algorithms, etc, and putting yourself out there. Eventually you'll get a job that you want and is well suited for you. You're fortunate to live in a time where it's a seller's market, employment-wise.
Re: Inverting Binary Trees Considered Harmful
#130I recently interviewed for (and got) a new job. The interview process took about two weeks and on the whole was pretty reasonable for both sides. There was a short phone screen (~30 minutes) Then I had two technical exercises to do. For each, I was given a reasonable time period (4 hours) that started when I visited a special link to the get the problem description, and then used whatever tools I wanted to get it don…
The correct way to write a CSV parser is to import one.
And sometimes you actually need to write things like sort algorithms. I implemented an insertion sort from scratch recently, because it needed to be done in a particular way to take advantage of the capabilities of a specific JIT compiler.
People do actually do this stuff - it's not all academic.