Live data from Hacker News

Stanford CS9: Problem-Solving for the CS Technical Interview

web.stanford.edu

241–250 of 292 posts

Re: Stanford CS9: Problem-Solving for the CS Technical Interview

#241

Earlier quoted context omitted.

The idea of having a whole class on how to solve interview whiteboard problems (a skill that is, at least where I work, not very relevant to doing your job) is terrifying.

At Google, the recruiter who schedules your interview specifically recommends reading books written about passing Google's interviews. It's a little unbelievable.

  It's a little unbelievable.
If they believe they have the _ideal_ benchmark for a good employee, anything you do that improves your score makes you a better employee.

Re: Stanford CS9: Problem-Solving for the CS Technical Interview

#242
post #218

Earlier quoted context omitted.

If you do the same job, and do it equally well, why should you have a different title?

Because the skillset is not the same. It is quite different to have spent 5 years doing nothing other than building up engineering knowledge, and just learning a few things to get the job done.

It's not "just learning a few things". Some software engineers have years of experience on the job despite no CS education. In the end it's about how much value you bring to the company. If your diploma helps you deliver that value, great. If not, your diploma is irrelevant.

I'm always very weary of companies that tell me I'll earn more money because I have a PhD completely irrelevant to the job I'll be hired to do. It signals that they're valuing the wrong thing, and that doesn't make me want to work there.

Re: Stanford CS9: Problem-Solving for the CS Technical Interview

#243
post #125
post #112

Earlier quoted context omitted.

For anyone with any kind of reasonable background suggesting they can do the job, the alternative is simple: just give them the job on a probationary basis. Give 5 people the job, tell them one will keep it after a 3 month contract period. Choose the ones you want to keep.

This is a terrible idea. Now if someone wants to interview at your company they have an 80% chance of being unemployed when it is done. Good luck getting good candidates to jump through that hoop.

Such short gigs that are easy to get into could actually be good for a lot of people.

Right now it's often "all or nothing", meaning companies are very careful about who they hire and some people just have a hard time getting to prove themselves in the act. Even if they don't get the job, a 3-month paid gig is better than unemployment.

But it really depends on what the position in question is.

Re: Stanford CS9: Problem-Solving for the CS Technical Interview

#244
post #218

Earlier quoted context omitted.

Because the skillset is not the same. It is quite different to have spent 5 years doing nothing other than building up engineering knowledge, and just learning a few things to get the job done.

It's not "just learning a few things". Some software engineers have years of experience on the job despite no CS education. In the end it's about how much value you bring to the company. If your diploma helps you deliver that value, great. If not, your diploma is irrelevant. I'm always very weary of companies that tell me I'll earn more money because I have a PhD completely irrelevant to the job I'll be hired to do.…

If they don't have an engineering degree, they aren't engineers.

Re: Stanford CS9: Problem-Solving for the CS Technical Interview

#245

This makes me very, very sad. I will never subject one of my potential hires to this nonsense. These concepts are valuable and academically interesting, for sure, but for the practical kind of engineering that's done at most companies it's simply not needed. Either that or it's already implemented in a library. What a waste of time.

It's very tempting to say this. However, trying to find an alternative that is not equally or more gameable is very challenging. Take home assignments are easy to cheat on and take a lot of time. Asking questions about someone's experience is a great way to find someone who is a great conversationalist that can't code. Asking someone to program at a computer in a limited amount of time falls victim to the same issues…

Take home assignments can take little time or a lot of time. Interviews that consist of round after round after round after a bunch of phone calls take a lot of time too. I actually prefer a home assignment of similar length.

I don't believe cheating is such a major concern. The applicant should be able to talk about their solution and all the choices they made if they actually wrote it and understand the solution.

Re: Stanford CS9: Problem-Solving for the CS Technical Interview

#246

Earlier quoted context omitted.

Our industry also has quite a lot of self-taught professionals, who can perform as well as their college educated counterparts, which is something you won't really get in professions like Law or Medicine. I think that's a good thing, when it comes to software.

That implies CS degree is a hoax, which is not. The bootcamp style of skilled labour generation is possible simply because of the demand-supply gap.

I don't think so. Computers and software are simply more accessible for laymen to dig into and teach themselves something.

You can't learn and practice surgery yourself. On the other hand, you can teach yourself software engineering. You can be practitioner with nothing more than a computer - and so many people are.

That doesn't mean CS degrees are a hoax - it just means the field is more accessible to those without college degrees (though its definitely going to be a more difficult path).

Re: Stanford CS9: Problem-Solving for the CS Technical Interview

#247
post #54

Earlier quoted context omitted.

Take home assignments are easy to cheat on? What does that mean (in the context of a take-home problem as an interview method)? Are candidates expected to derive solutions to coding or engineering problems themselves from first principles as their day to day? The answer is "no" almost without exception, even in serious research or hard core low level systems programming jobs.

"Are candidates expected to derive solutions to coding or engineering problems themselves from first principles as their day to day?" Does performance on these tasks correlate with performance on the job? Is it easy to measure this performance in interviews reliably? Then it's going to be used by companies.

The answer to both your questions is "no", and companies use them in spite of that.

Re: Stanford CS9: Problem-Solving for the CS Technical Interview

#248
post #92

Earlier quoted context omitted.

I'd be willing to take either side of a debate for "is there a shortage of people who, when given tight specifications for a piece of software (write a function that takes X as input and provides Y as output) that enumerates all of the corner conditions can produce a program in a language that they are familiar with." At the same time, the "person who can work with the business user on the software, think about the a…

This is by far brilliant insight I have come across and actually experienced!

Its something I've thought about for a bit and want to make a proper blog post of it. So far, its just a post over in a slack channel associated with That Conference - https://slack-files.com/T0CEWBUEP-F7J3SNNNT-00ff1af0fe . I need to come back and revisit it at some point.

Re: Stanford CS9: Problem-Solving for the CS Technical Interview

#249
post #3

This is what I was afraid of. I always thought interviews were something where you present your abilities, experience and knowledge. It should not be something you "prepare" for because then you're not showing off your skills, instead you're just regurgitating what you are trained to do. I do somewhat blame the whiteboard culture, but I guess that's the one that has given the best results so far. I've no doubt that i…

I think it's rather silly to "prepare" for an interview, but IMHO what they expect at Google/Facebook/Amazon/Microsoft is not something you should really need to prepare for if you took the time to really understand the algorithms and general techniques you study as a CS undergrad. Rehearsing at a relaxed pace over a single weekend should be more than enough, particularly to get used to discuss your ideas and using a…

Either I’m a bad student or you have an inherent ability that I don’t have. I’ve interviewed at all of those companies and you need a lot more than a weekend to succeed - even my friends with offers took more time to study than that!

Re: Stanford CS9: Problem-Solving for the CS Technical Interview

#250

Earlier quoted context omitted.

The reality is the majority of tech interviews today are filled with questions/tasks that have little or nothing to do with the actual job you are going to be assigned. In fact an average programmer doesn't actually need to know a single piece of computer science or math (almost all such stuff is abstracted by common libraries and frameworks, whatever is not can be looked up on demand) nor to memorize anything (thank…

> and their GitHub profile. I have nothing in my GitHub profile. Some toy repos of no particular significance, one contribution to Rust that I've made before realizing it takes too much of my spare time... and that's it. I don't think that should make me un-hireable ... people that have kids tend to not have much spare time besides work, learning new stuff to stay relevant, and taking care of said kids. Not to mentio…

I suspect that Github repos, SO accounts, toy problems etc. are simple tools interviewers use to make some form of rigorous decision when the applicant's CV gives them little concrete evidence of skill. A couple of years of job experience will speak far louder than those at any company you would want to work for. Especially if you employed in a similar position at the time.
Post reply on HN