DEV Community

Cover image for How to fail a programming interview

How to fail a programming interview

edA‑qa mort‑ora‑y on February 19, 2019

I've conducted many interviews. There are many reasons why I reject people, but there are recurring themes. I want to give a list of the most commo...
Collapse
 
jbull328 profile image
John Bull • Edited

My current position did not have a "technical" interview. The CTO and Manager interviewed me personally and we just talked. At the end of the day are you hiring someone based on how they code right now in a bubble or the ability to learn and be part of a great team? I'm not saying they had the right way or wrong way, but it set an expectation of trust and collaboration from the get go. Idk food for thought perhaps. Great post by the way.

Collapse
 
mortoray profile image
edA‑qa mort‑ora‑y

This is why I place a lot of value in the feedback during the interview. While it's important that they come up with a working solution, it's their behaviour that determines whether that will happen.

I will often have people who could not solve the problem on their own, but by listening to their thoughts and reading their code, I can guide them towards a working solution. This fulfills the requirements I think you want: can this person learn and grow.

Collapse
 
jbull328 profile image
John Bull

Well said, thank you for the reply.

Collapse
 
nestedsoftware profile image
Nested Software • Edited

I think that can totally work, but it's also true that some people are much better at talking the talk than walking the walk. Having a session where you can spend an hour or so working with someone to see how they organize their thoughts and solve problems can be quite illuminating. If a person you're considering hiring already has a decent amount of experience, and maybe they can point to a body of code that they've written, it may be less crucial to actually do a coding interview, and just a get-to-know-you session is good enough.

Collapse
 
zoeysaurusrex profile image
Zoey M

How do you deal with false positives? Where a programmer has these issues only in the moment because of social anxiety?

Collapse
 
mortoray profile image
edA‑qa mort‑ora‑y

I try to create an environment to minimize interview stress, and I think I'm an okay judge of character. However, that said, there are two, rather cold, views on this.

A) There's enough candidates that you don't have to worry about failing somebody incorrectly. It's better to accidentally reject qualified people than to occassionally accept unqualified people. The quantity of applications makes it harder for individual applicants.

B) It's part of the job. The skills you use during the interview will be required again while you are working. If the pressure, or anxiety, hurts your performance in the interview, should I not assume it might also hurt your performance in a job? I know the interview tends to exacerbate issues, but I don't think it fundamentally creates them.

As an interviewer you try your best to see through interview stress, but you won't be perfect. The unfortunate truth is that interviews aren't merely an assessment of your abilities, they are a competition. And you have to train to win at them. I'd prefer this weren't the case, and I try to minimize it, but it's still the reality we face now. :(

Collapse
 
storrence88 profile image
Steven Torrence

Not a direct answer to your question, but maybe this can lead to some meaningful conversation.

Before I switched to becoming full time developer, I used to be a musician. One thing I never quite got over from HS was stage fright. After years of dealing with this, I noticed a couple of trends that would trigger my stage fright. Often times I feel like it was brought on or enhanced by a lack of preparedness on my part. Knowing that, I was able to lessen the effects of stage fright but over time I learned, it never really goes away.

The stage fright is always there. The thing is, you get comfortable with being uncomfortable. You learn to sort of work around it. From my experience, the only way you can develop this level of comfortability is by putting yourself in the "spotlight" often.

Practice interviewing with other people. Try to change it up and maybe schedule an interview with someone you're not so familiar with. Give yourself some real stakes. Make it as close a simulation to the real thing as possible. I exposed myself to situations like that often enough that I knew exactly how I was going to feel and how I should counteract it or at least minimize my stage fright.

Collapse
 
dvddpl profile image
Davide de Paolis

The stage fright is always there. The thing is, you get comfortable with being uncomfortable. The only way you can develop this level of comfortability is by putting yourself in the "spotlight" often.

very well said: i guess i will print and frame it :-)

Thread Thread
 
zoeysaurusrex profile image
Zoey M

Not to be contrary, but for some folks with social anxiety, no amount of practice is going to fix that. What I would frame from these responses is the complete lack of empathy that a person could be a badass but have a genuine disorder, which makes them worthy of rejection.

Thread Thread
 
nestedsoftware profile image
Nested Software • Edited

I think even people with severe social anxiety can improve their ability to deal with interviews, although in some cases it may not be a good idea to do it alone. For some, it may be wise to get some professional help from a psychologist who specializes in that area.

Not everyone has to be thoroughly extroverted, but in many professional environments it's important to be able to interact effectively with other people.

Collapse
 
anortef profile image
Adrián Norte • Edited

I have worked as CTO and some other leadership positions and done my handful of interviews. In those cases, I have always tried to strike a conversation with the person, see what he likes about the software world and try to make him feel at ease (taking into account that it is an interview). If the person is especially anxious, going out to have a friendly coffee works too because it's a more neutral ground.

Collapse
 
goyo profile image
Grzegorz Ziemonski

I completely agree with most of the points here, especially "don't know the basics of coding". When I started interviewing people, I was surprised how much difficulty most people have with writing a single loop and a conditional statement.

That said, I'm not entirely convinced about "overthink and complicate the question". In general, you shouldn't look for things that "aren't there" but in some cases it's desired for the candidate to try to understand the problem better before coding. We used to have a simple assignment rooted in a real business scenario and I always valued it when people asked questions about how the business really works instead of making rush assumptions.

Collapse
 
mortoray profile image
edA‑qa mort‑ora‑y

By overthink I really mean overthink, not just understanding the problem. If you don't understand, or are uncertain, then ask. By overthink I mean things like planning for future requirements or making extension points that are unnecessary. These are things you shouldn't be doing in normal coding either.

I agree it's not a well defined line, but there is difference between understanding the problem, and complicating the problem.

Collapse
 
achargoy profile image
Chargoy

Totally agree with you, sometimes we focus only in complexity things and we forget the simple ones.
Some months ago I took a lot of interviews and at the beginning it was so hard (first because my English is bad, second to be honest I didn't have a good level), but one think that I hate is that recruiters didn't give me ANY feedback about what I did wrong (even if I asked them, they said we can not give you the feedback now, I didn't ask about the feed back, I asked about a recommendation how to improve, because how Can I do it good if I don't know what is wrong with me?).
Feedback is so important to improve.

Collapse
 
mortoray profile image
edA‑qa mort‑ora‑y

Hiring laws, relating to discrimination, can make it tricky for companies to provide honest feedback. It's unfortunate.

Sites that provide prescreening and practice interviews are a bit more flexible.

Collapse
 
locker1776 profile image
Jonathan Locker

Why not bring a cheat sheet or two to an interview? When I develop/test I use checklists for my work. Shouldn't that be allowed during an interview? It won't give the person the answers, but I always struggle with syntax as I bounce around many languages.

A simple cheat sheet might be good, especially if all it does is keep your thoughts focused.

There are certain items a person could bring to an interview that would be a plus in my book.

Collapse
 
mortoray profile image
edA‑qa mort‑ora‑y

I'd not be opposed to this. It's still better to have them memorized, for time reasons, but a nicely organized cheat sheet could definitely help. If you're capable of using the reference quickly, then when not. If you don't know the language at all, a cheat sheet is unlikely to help you.

Collapse
 
qm3ster profile image
Mihail Malo

How can you pay attention to braces and semicolons knowing they don't have a formatter running? :/
Sorry if this is precisely nitpicking, but I found that line rather hypocritical.

Collapse
 
mortoray profile image
edA‑qa mort‑ora‑y

I'm not so concerned about misalignment, but there's still room to be inconsistent, like putting some braces on a new line, and some not. Languages like JS have optional semi-colons. C++ allows if statements with braces, or single line ones without.

Overall, this type of thing is a minor consideration. It's highly unlikely my evaluation would be affected, but it is something I will point out in the feedback.

Collapse
 
qm3ster profile image
Mihail Malo

They might have a method to their madness that you don't immediately understand.
I feel like it's mandatory they at least once ask "can I use my editor to format" or "complain" about the interview editor not having a formatter :)
Shows that they are about the good practices and not the bikeshedding.

Asking "can I change the formatter settings" would be worrying though xD

Collapse
 
Sloan, the sloth mascot
Comment deleted
Collapse
 
mortoray profile image
edA‑qa mort‑ora‑y

Most candidates seem to have some experience, even in junior positions. It may be an internship, or short-term job they had. Though, the more junior somebody is the less I consider experience. Letting them talk about their position usually helps though, even if it was only for a few months.

Don't lie about what you did, give an honest assessment, or factual, of how you saw your position. It's easy to see through bravado and nonsense. Plus, you want the interviewer to understand where you are now.

Collapse
 
_manojc profile image
Manoj Chandrashekar

"While you're coding, I expect you to talk about what you're doing."

I was "almost" rejected once because I spoke a lot instead of writing the code.

Soft skills are so underrated, yet 90% of daily interactions depend on them.

Collapse
 
georgewl profile image
George WL

See personally a problem I can have in interviews is freezing up on questions that I know the answers to.

Any recommendation for that?

Collapse
 
nestedsoftware profile image
Nested Software • Edited

I would say the single best thing you can do for yourself is to put yourself into that situation repeatedly. It will be very uncomfortable at first, but it will get easier as time goes on. Human beings are very adaptable!