Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Best interview experience I had was a 3 hour after-work meetup with 3 people from the company. No coding challenges, but nice and insightful engineering chat. I got to meet the team and had an offer ready within week

Worst was when a company told me they used my open-source project and wanted me to do 5 interview rounds, two of them being whiteboard-style. I didn’t expect that



My favorite interview involve no code. If you can only tell if someone is proficient at coding from a coding quiz, you’re a bad software dev manager.


Hard disagree on this one.

I’ve done over 400 SWE interviews for a recruiting company. I’ve seen a steady stream of candidates who could talk the talk, but had incredibly weak programming skills when put to the test. And the reverse - I’ve seen plenty of candidates who were awkward socially but ask them a programming problem and they’re right at home.

If you’re hiring for a programming role, assess their programming skills. Not just their social skills. A conversation only tells you half the picture.


I very much disagree with this. There are bad engineers good at "sounding good", as long as it never gets too deep. Interviewed many people myself where they only started showing their real face while actually coding.


I have, personally, interviewed a lead software engineer candidate, claiming 8+ years of experience coding, who could not write a simple 5-minute exercise, in any language of his choosing. It wasn't FizzBuzz exactly, but if I'd thought to ask FizzBuzz, he'd have busted that as well.

"Write a function that takes a list of numbers [array, list, or equivalent] and returns the average."

That's it. Wasn’t that they got hung up on the details of whether the average of ints should be an int, float, or double, or how to handle overflow, but just couldn't even get started at all in any language.

I was the third on-site interviewer. He'd BSed his way past the phone screen and two others and I caught a whiff of "Johnny can't code" and decided to check by asking him one of our (at the time) new college grad questions.


> just couldn't even get started at all in any language

Let's apply Occam's razor.

You have someone who has been programming 8+ years professionally. Maybe they did good work or bad work, we don't know, but we know they've been programming as a profession getting paid to do it for 8+ years.

We also all know you can't really go through a week, or even usually a day, of programming without handling something as basic as an array or a list.

So, which is actually more likely:

a) Someone did 8+ years of programming without ever implementing an array loop

or

b) They know how to do it, but the test is flawed due to conditions (on a whiteboard in a high stress environment while being criticized).

A lot of people with deep expertise in programming are completely incapable of putting on a whiteboard performance under stress.

I can never believe the number of interviewers who go "Gotcha!! They don't know how to code despite doing it for years!" instead of considering the simple correct answer is usually (b).


> we know they've been programming as a profession getting paid to do it for 8+ years.

We don't know that! We know they submitted a resume that says they've been programming for 8+ years; we don't know whether that happened or not.

I can't remember exactly what it was that gave me a "this guy is actually full of shit" feeling, but other things in the interview gave me that feeling, so I pivoted the interview to check.

On that day and to this day, I have serious doubts that that particular candidate had ever held a professional software job for longer than a probationary period.


> We don't know that!

Sure we do. Or maybe you didn't that day, but it is easy to find out for sure.

While companies (at least in the US) will never give a formal recommendation, they will always issue a statement that such and such person worked for them from date to date and the title(s) they held, if you ask.

Sure, if they worked 8 years at Joe's Burger Shack as Senior IT, maybe that's not worth much.

But if they worked multiple years with a senior/lead software engineer title at any recognizable company, you know they really did. As I said above we can't know if they did a great job or a mediocre job, but we do know for sure they held that job with that title for so many years and did at least a good enough job to not get fired from a software engineering role.

Which in turn means they absolutely know how to write a loop over an array. Because even if they got rated "Just Barely Meets Expectations" for 8 years, that alone is enough to know they can loop over an array.

Therefore, if your test indicates they can't do it, it is guaranteed that the test is flawed.


I’m autistic. I do well programming but on the spot it’s hard for me to use words well. I sometimes even forget basic words and concepts! My brain does that due to stress in an interview, but day to day I’m fine developing very advanced software and algorithms.

I don’t know how many times I have to say this: you’re thinking about the average, neurotypical, able bodied persons when you assume things, but often logic or common sense does not work with disabled or neurodivergent people.

Please consider that next time maybe you can provide a second chance somehow with less stress. One thing is, if i have code in front of me, I can explain it pretty well I think. Maybe ask them to prepare samples and walk through them?

Edit: this was meant for the grand parent commenter


In a situation like yours, let the recruiter know your situation ahead of time* and they can help coordinate adjusting the interview process to accommodate a different way that you can demonstrate your capability to succeed in the role.

I think it's not reasonable/fair to other candidates to give a literal "second chance somehow", but it's entirely reasonable to adjust the format of the first chance to allow a non-neurotypical candidate a reasonable chance to succeed.

* I suspect you probably already know to do this; this is not meant as "advice to you" so much as "here's how it could be made workable and fair if that was the situation".


Thanks for the advice, I appreciate it since I know advice like this comes from a place of kindness and caring.

I have mixed success with telling people about my autism. Some places will take it as a sign I’ll be a unique problem and ghost me. I’ve learned mostly I have to mask as good as I can and hope it works. People only seem to be kind towards obviously autistic children, older men who are only low level autistic and can pass for “normal“ tend to be seen as dickheads regardless. I’m trying to be better at social stuff so I don’t seem an asshole, but my brain just can’t get some things down!

But maybe I should try to bring it up again next time I interview, honestly it’s been years since I’ve had to really interview hard, maybe people are kinder and more understanding today. Lucky for me I was laid off and can get that practice in now!


Sorry to hear about your recent luck.


What? The simplest answer by far is

c) they haven't been programming for 8 years


See above answer. It is very easy to confirm they've held the job they claim on the date range they claim. If they have held a software engineering role for 8 years without getting fired, they absolutely know how to loop over an array.


Ha! if only that were true...

Maybe at a real modern "software" company. But there are plenty of places where 50% of their so-called software engineers couldn't write a simple program from scratch.

In fact, as I think about the cases I've seen, it seems to get easier with senior "SWEs". They can exist going to meetings and delegating work until one day they forget themselves and apply at a company that actually expects SWEs to have a basic understanding of programming.


Reference checking almost always happens after the interviews. So no, the interviewer would not be expected to know this and should make an effort to confirm the person knows what they claim to know.


Reference checks and employment verification are different things.

Reference check is done after the interviews, you ask the candidate for references (past managers and coworkers) and call them up. That takes a fair amount of other people's time, so it only makes sense to do it after you're fairly certain you want to make an offer.

Employment verification is simply getting a statement from past employers that this person worked there from date to date and held these titles. That's quick and easy.


You remind me of many interviewers who had no idea who I was and asked me basic grad tests which I would struggle with mostly because I refused to be tested on fizzbuzz style questions I found it too easy to get caught out without recent revision which I often didn’t do as I was building critical software for paying customers.

I’m not saying you may have thrown out competent coders and made a completely incorrect decision I’m saying many who interviewed me seemed to ( when they hadn’t checked my background ) and were quick to assume idiocy.

I only typed this out for you mate.


Any SWE should already have a professional portfolio ready to share with employers. Even an entry-level coder should have some class projects and hobbies to show at that point.

If you don't go around with a portfolio, then yeah, you can expect employers to be skeptical, and subject you to coding on the whiteboard, or leetcode or something, which isn't really going to reflect your actual coding ability, but it's more geared toward weeding out fakers in interviews.

On the other hand, if you have a portfolio, especially a public one shared on GitHub or such, then you can directly point to it and take credit for a good, hopefully working project, and you can explain it at length, and your prospective employer should hopefully take this as a strong signal that your skills are commensurate with your CV.


If you run an opensource project on github, it’s remarkable how many times your repository will be forked into weird github accounts - that on closer inspection are just big lists of forked projects with nary an original patch to be found.

I have no idea why people do this; but I suspect it might be to look good in interviews. No idea if it works - it’s pretty obvious if you look closer that they didn’t author any of the commits. But I wonder how many people are out there claiming credit for other people’s work to get hired.


I do a fair amount of that in my own github account. If I have no commits in a forked repo, it was probably just a form of "bookmarking".


You can also fork to preserve a repo, although apparently GitHub can removed forked repos alongside the original during takedown action. (To avoid, do the fork manually).


I've spent my entire career behind the firewall. No I don't have a portfolio I can show you.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: