Live data from Hacker News

Stanford CS9: Problem-Solving for the CS Technical Interview

web.stanford.edu

281–290 of 292 posts

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

#281
post #250

Earlier quoted context omitted.

> 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.

StackOverflow and Github repos are a wealth of information about a possible applicant. There's the code... yes. But there's also the comments on Stack Overflow and issues on Github.

Given that the person is presenting StackOverflow as an example of their profession, comments on SO would be very telling for how the person would be responding to critiques of their code and their responsiveness to questions. Much can be seen in the attitude and professionalism that would be seen in email. Things like:

* Do they write in complete sentences?

* Do they use spelling and grammar that would be appropriate to send to a client? A director?

* Do they range against all that is wrong with the world over little things?

Likewise, with Github there are issues that they have logged on other projects - do these issues contain sufficient information about the problem so that the person working on the issue can diagnose it? For issues on their own projects or projects they contribute to (and have taken ownership of the issue), are they responsive and provide useful information to help someone provide a good bug report?

I'm not too concerned with the code. That's easy to fix. But a person's attitude and providing these sites as an example of their professional mindset is something that can be difficult to get at in an interview when they are only trying to put their best on display.

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

#282
post #252
post #223

Earlier quoted context omitted.

I will highlight the most glaring problem I find in your take. > FizzBuzz test is actually pretty great interview question [...] you should be able to do that without thinking If you are going to code for me, I'm not interested in what you can do in 1 minute, I'm interested in what you can do in 1 year. I want you to spend more than 1 minute just thinking about any problem that is remotely worth solving. And that's t…

If you are not able to write FizBizz without thinking that means that you've probably written no more than a handful of for loops and if statements in your whole programming "career". That's a very bad indicator for someone who applies for a programming job.

This obviously is true (a truism) but doesn't answer any of the questions.

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

#283

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 have nothing in my GitHub profile. Some toy repos of no particular significance... I don't think that should make me un-hireable...

Same thing with me but I don't think it's hard to spend some weekends and write something to express your motivation an illustrate your coding skills.

> people that have kids tend to not have much spare time... my company has me going through some bureaucratic process for any sort of open-source contribution that I intend to make.

I understand your point perfectly but what I don't understand is how does it make sense to hire a coder whose code (a real (though not necessarily big) app code, not a 5-minute puzzle code) you have never seen.

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

#284
post #273

Earlier quoted context omitted.

Is engineering a credential, or an activity?

It is the knowledge gathered along 5 years of studies, the activities that put into practice that knowledge and the certification of the quality of the teachings.

So, a credential? In the countries and states where the title is protected (it's not everywhere), you often have to pay dues to a professional organization to claim the title. It's not enough to have the diploma, you have to pay every year too.

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

#285
post #273

Earlier quoted context omitted.

It is the knowledge gathered along 5 years of studies, the activities that put into practice that knowledge and the certification of the quality of the teachings.

So, a credential? In the countries and states where the title is protected (it's not everywhere), you often have to pay dues to a professional organization to claim the title. It's not enough to have the diploma, you have to pay every year too.

It is a two step process.

Engineers are only those with an university degree from an university acknowledged to actually be teaching engineering.

Then if they want to actually make use of the title, get the credential, which yes requires an yearly contribution.

Finally, in any kind of project where human lives are at stake, the engineer signing for the project has to be validated as such.

I happen to think that our profession is no different from lawyers, doctors, mechanical engineering, civil engineering, and so on.

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

#286
post #119

Earlier quoted context omitted.

On the same line of thought, you wouldn't hire a violinist just because you heard them play the scales. In music, you often get handed some sheet music or asked to prepare something. In the cooking industry, you throw them at a kitchen and tell them to impress you. In the programming industry... We ask people to write toys and logic puzzles. That isn't what they'll spend their days doing, that's just practice, like s…

That’s probably because you can’t write a production-ready service or application from scratch over the course of an interview. A violinist might be asked to play a technically difficult but short piece during an audition, even when most of the music they would play as a member of the orchestra would be less challenging and take a much longer time to play, with plenty of time for rehearsing ahead of time. Likewise, a…

> A violinist might be asked to play a technically difficult but short piece during an audition,

No. Compared to what we do as software developers, the correct analogy for a violinist interview would be to ask them to whiteboard all kinds of obscure music theory principles, like the set theory underlying serialism and Arnold Schoenberg's twelve-tone technique.

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

#287
post #117

Earlier quoted context omitted.

“Interviews or exams” That you think interviews and exams are interchangeable concepts illustrates the problem. Nothing wrong with a rigorous filter at the gates of the profession, but lawyers don’t need to spend months studying for each company’s half-assed version of the bar exam each time they change jobs. Our industry is dysfunctional because, unlike law and medicine, no one trusts the credentialing mechanisms.

Credentialing isn't even the beginning: no one trusts other software companies, either, apparently. An engineer at Google will face a battery of asinine CS trivia when he interviews at FAAN, just the same as he faced interviewing at G. Hell, he might even face similar interviews if he applied at non-FAANG companies.

> Credentialing isn't even the beginning: no one trusts other software companies, either, apparently.

Even the FAANG companies aren't immune from bad hires or people who burn out.

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

#288
post #240

Earlier quoted context omitted.

I agree completely. And this is why an industry-wide respected, non-profit, credentialing mechanism increasingly makes more sense to me. There are a hundred pitfalls to implementing it and some we may never fully overcome, I'm aware, but I think they're worth grappling with to get this very technical and increasingly high-stakes line of work onto a more solid career footing with its big brothers in the engineering di…

I’ve been coming around to this as well. I don’t object to an industry wide exam based on data structures, algorithms binary operations, and design. My main objection is that the exam is taken repeatedly at each interview and scored under secretive conditions. Actuaries aren’t expected to prepare for and pass a vector calculus and linear algebra exam every time they interview, but they are required to pass a proper e…

Yep actuaries have the right idea, the exams are pretty hard, and require a lot of preparation, but once your done that's it. Actuarial job interviews are more about what kind of person you are, and if you'll work well in a team.

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

#289

Earlier quoted context omitted.

That’s probably because you can’t write a production-ready service or application from scratch over the course of an interview. A violinist might be asked to play a technically difficult but short piece during an audition, even when most of the music they would play as a member of the orchestra would be less challenging and take a much longer time to play, with plenty of time for rehearsing ahead of time. Likewise, a…

> A violinist might be asked to play a technically difficult but short piece during an audition, No. Compared to what we do as software developers, the correct analogy for a violinist interview would be to ask them to whiteboard all kinds of obscure music theory principles, like the set theory underlying serialism and Arnold Schoenberg's twelve-tone technique.

Thanks, I’ll be sure and consult with you on whether my opinions are “correct” in the future.

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

#290

Earlier quoted context omitted.

To imagine that genetics do not play a role in intelligence (or any talent) is horribly naive, otherwise we could teach our dogs to program.

As you clearly demonstrate, intelligence has a genetic basis. However, it does not follow that there is variation among humans at the relevant genetic loci. The variation may have become fixed in an ancestral population of modern humans.

What I gave there is an absolutely standard assessment of the situation from the point of view of population genetics. Of course intelligence "is genetic" in some sense: that's why dogs and cucumbers are less intelligent than humans for most definitions of "intelligent". The question is about the phenotypic significance of current intraspecific genetic variation.
Post reply on HN