Live data from Hacker News

Lessons from 3,000 technical interviews

blog.interviewing.io

261–270 of 330 posts

Re: Lessons from 3,000 technical interviews

#261
post #210

Earlier quoted context omitted.

$6,600 [1] for a master's from a top 10 computer science program [2] is an absolute steal! My master's program costs that per semester. [1] https://www.omscs.gatech.edu/prospective-students/faq [2] http://grad-schools.usnews.rankingsandreviews.com/best-gradu...

These numbers still look very high from a European point of view. It seems it makes a huge difference whether a society deeply cares about educating the population, or cares just superficially. For example, in Berlin you spend less than 300€ per semester, a CS master takes 10 semesters regular time. Add two semesters to make the time more realistic, and you end up with 3,600€ which are roughly $3,800. Oh, and it cont…

Curious reasoning about society. For me, american society seems to care about education more, exactly because it's members are willing to pay for it themselves. In your sentence, you juxtapose 'society' and 'population', but those are exactly the same things.

May be you meant 'government' instead?

Re: Lessons from 3,000 technical interviews

#262
post #251

Earlier quoted context omitted.

>The average coder should be able to solve this type of thing, on their own, in about 10 minutes max, 15 with some feedback on improvements. >Yet, 80% of my candidates take nearly 45 minutes and cannot deliver a workable solution without massive handholding, and I don't even get to my higher order, "real questions". You need to ask yourself why you believe the "average coder" should be able to solve that because clea…

"You need to ask yourself why you believe the "average coder" should be able to solve that because clearly your beliefs are not founded in reality." Oh, stop. The problem he describes is trivial, and something that you'll encounter as an entry-level web developer on a regular basis. If you can't solve it, you're absolutely not up to the job. In fact, I'll go further: if you literally cannot find an efficient way to f…

> If you resume screen for "has written code before"

I wish that was the resume screen criteria at all the places that ignored my applications.

The more I read these threads the more I think resume filtering is part of the problem. It makes some sense; if the bad applicants have to apply to hundreds of jobs to get hired they have likely learned how to game the resume scteen.

Re: Lessons from 3,000 technical interviews

#263

Earlier quoted context omitted.

> The measure of successful programmers is how efficient and professional they are in problem solving They are not asking you to split a linked list given a pivot value or reverse a string without using a builtin function because that's what you going to be doing on your job. They're doing that so they can see how efficient you can be given a new problem. That's why companies have interviewers sign NDA's - so their i…

> so it's not just problem memorization. How is it not? Grasping the fundamentals of algorithms and data structures: important. Memorizing the best greedy algorithm for traversing a linked list: not important. Any super specific answer to a problem is likely not worth committing to memory because 1) it'll probably change as platforms evolve 2) Googling specifics lets you save space in your brain for things that actua…

[deleted]

Re: Lessons from 3,000 technical interviews

#264

It's rather shocking how much effect Udacity/Coursera had on interview performance - more than graduating from a top school or being employed at a top company: "...only 3 attributes emerged as statistically significant: top school, top company, and classes on Udacity/Coursera."

Why is it shocking? "I need to pass an interview where I'll be asked about specific technologies/algorithms/etc. I will take a free online course to memorize/rehearse that information before my interviews."

In other words, those who prepare beforehand have more favorable outcomes than those who don't.

Re: Lessons from 3,000 technical interviews

#265

"Whether passing an algorithmic technical phone screen means you’re a great engineer is another matter entirely and hopefully the subject of a future post." This sentence plus the inverse correlation between experience and "interview performance" shown there. Makes a big smell about how biased are those interviews to themselves and not to real technical interviews. From the data it looks like the questions asked usin…

Yes, because we all know that your ability to implement a red-black tree from memory has a direct correlation with your ability to implement some random business logic or CRUD app. Oh wait, they don't.

> implement a red-black tree from memory

Can we quit using this ridiculous example? I'd be willing to bet that less than 1 in 100,000 technical interviews have asked someone to implement an r-b tree considering a full implementation is 100s of lines of code.

Re: Lessons from 3,000 technical interviews

#266
post #250

Earlier quoted context omitted.

So why can't it voluntary via donations to universities? > By telling parents that they do a great job, that you appreciate what they do for society, but not giving a single cent to them? That would be hypocritical, not solidary. It's not hypocritical if you compliment someone without paying them money.

Why wouldn't you see an elected government's policy as voluntary, ultimately?

Why would you see the decisions of the rich elite few allowed to be part of government as reflective of the population?

Re: Lessons from 3,000 technical interviews

#267
post #252

Earlier quoted context omitted.

If education was always profitable like that, governments wouldn't subsidize it, they wouldn't need to. Heck people would be fighting to give student loans. The reality is lots of people study subjects that don't result in higher salaries but political correctness insists that people be able to study the arts easily, so governments "have" to subsidize education.

Well, no, the cost of education is ridiculous. Not many people get out of undergrad without any loans, and especially if you want to go on to get higher education (yes, even law degrees which pay nicely after you graduate), you'll be stuck with a mountain of debt that you won't be paying off any time soon. I know someone in particular who went on to get a law degree (and was steadily employed in her field from her ti…

The benefits are ridiculous. Not the costs. Where I live it costs $28,000 to get a BS. I took out loans for every penny. Before college my salary was just under $18,000. After college I was making $48,000. I got my MS and PhD for free, fully funded by my work while in graduate school. I even made a decent salary, $18,000 during the year and $30,000 during summer internships.

My first post-grad school salary was $112,000.

My education was an investment. It paid off.

Re: Lessons from 3,000 technical interviews

#268

Earlier quoted context omitted.

> Asking a person to traverse and modify a linked-list (a very common problem) or to implement a B-tree are not 'tech outside their job' No. No one in their daily jobs implements a linked list or B-Tree. There are predefined libraries in the languages or a user created library that people use. Do you really think every person in the company has his/her own version of a linked list in the same code base? This is a fal…

this, so this. Why is everyone stuck on getting someone to reinvent the wheel as against getting him to use the said wheel and get things done. I find the processes in a large company rather robotic (note: we're a startup, so my views might be biased).

>Why is everyone stuck on getting someone to reinvent the wheel as against getting him to use the said wheel and get things done.

A person who can only use a pre-made wheel is a technician (regardless of how ostentatious their job title may be).

A person who can invent the wheel on demand can also usually invent any other type of rolling mechanism one might encounter a need for and that makes that person a full-fledged engineer.

No value judgement of either person is implied; it's simply a statement of capability. Which type of person is needed depends on the company and the position but it is becoming increasingly clear that the two roles in software are separate, just as they are in other engineering disciplines.

Re: Lessons from 3,000 technical interviews

#269
post #258

Earlier quoted context omitted.

Is he talking about this problem (with a filter at the end)? http://www.geeksforgeeks.org/finding-all-subsets-of-a-given-... Because I have never done that. That's different than just running through a list and picking out items that meet a criteria.

Not that I can see. The OP said: "find the subset in a given collection that matches this specific criteria" So basically, a loop through a single table. That's as simple as it gets. You can make the problem more complicated, of course (e.g. "write a method to find the minimum and maximum ages of the male users" ), but it's still pretty simple stuff. A slightly less trivial "algorithm" question that should be equally…

I would like to see a solution to your problem with bounded memory.

In particular, the case where I want the top 3 words, you don't know the length of the stream, and you get random permutations of the same 4 words until I stop emitting them (where I will end by emitting 3 to break the tie).

That's not to say your problem isn't interesting -- just that while specifically constructing a problem as an example, you created one that's unbounded in required memory (in both storage per value and potentially number of values to store) and then demanded a solution that doesn't run out of memory.

I think most interview questions are similar nonsense.

Re: Lessons from 3,000 technical interviews

#270

Earlier quoted context omitted.

I used to think along these lines. Then I started doing 10+ interviews a month and realized a very clear reality: basic CS knowledge and problem skills is far more important to me and my team then knowing how to slap together some semblance of a working CRUD system. I ask "algorithmic" questions, normally expressed as a legitimate business case (invent a real world problem, solution is implement some algorithm or use…

"I hate anything that asks me to design on the spot. That's asking to demonstrate a skill rarely required on the job in a high-stress environment, where it is difficult for a candidate to accurately prove their abilities. I think it's fundamentally an unfair thing to request of a candidate." Scott Meyers I'll take this guy's word over yours I'm sorry. Your supposedly simple use case is given in a different environmen…

At no point did I suggest I ask anyone to design anything - it's a simple question with a simple solution (if they know how to program).

My opinion, of course, but a "good programmer" can think through the solution entirely in their head without hands touching keyboard. Code is the byproduct of the person's thoughts. I'm looking for people who think like programmers. If that bar is too high, I'm rather disappointed with the state of the programming community.

Post reply on HN