

Ask HN: Any tips for a dude going on a first-ever programming interview? - horsehead

Here's the scoop, Hacker News. I've been learning to program for the last few months, and a friend who has essentially been mentoring me in a few disciplines and the general principles of programming suggested to a company that was looking for (Python) programmers that they consider me. It would be my first job in the field, and I want to get it. Bad. My question: what tips would you have for a first-time interview for a programmer?
======
codeonfire
Know how to do the job. In this case you're applying for Python Programmer,
you should be able to easily write Python programs from scratch. If you can't
write python programs, don't apply. Be extremely eager to write code at the
interview since as a skilled python programmer it is easy for you and you want
to show this. If it's not easy, don't apply.

Don't bring a laptop and try to refrain from saying anything not related to
the questions because it can and may be used against you.

~~~
brey
> try to refrain from saying anything not related to the questions because it
> can and may be used against you

it's a job interview, not a police interview ...

show interest in the company, understand completely what they do (the number
of people I interview that haven't even downloaded my company's (free) app,
which the successful candidate will be WORKING ON...), have some thoughtful
and insightful questions prepared about their business (ideally ones which
challenge their model and shown you've thought critically)

show you're a human being who they'd like to work with, not a robot who they
pay to do a job and nothing more.

~~~
codeonfire
In this case the job is software developer. For almost any skill, being smart
and sociable is enough. But not software 'construction' or programming or
whatever you want to call it. This skill differentiates a very valuable
employee from one that is still very valuable but can't create software. A
very high number of people who aren't skilled at all try to get these jobs
hoping its not really that big of a deal and they plan to fake their way
through a job creating more work for the employees with these skills. Would
you hire a physician just because they are friendly and show interest in
cutting someone open?

Companies can do what they want. if they just want people in seats to follow
some acquisition strategy, then good for them. But anyone who is honestly
trying to make a career of software development should learn the language,
tools, idioms, and techniques.

Btw, I've been studying programming for 20 years but would not apply for a
Python job because my skills are not current. I would take a minimum of six
months before I got to a level where I would consider applying.

~~~
horsehead
I would disagree, and say that proficiency in any given career is necessary,
rather than just "being smart and sociable." And a valuable employee is a
valuable employee. If they have ability, whether latent or developed, they
have ability. if they have exceptional promise, bringing them on early will
likely pay dividends later, even if there is a greater up-front cost. The
problem is it's an investment, much like the stock market. And like in the
stock market, you have investors with good and bad insight. It's all a game,
in all honesty, though, and it usually comes down to saying the right things
(which is why so many people bullshit their way through interviews and have no
skills, and why many people with actual skills don't make it through -- they
don't have the bullshit skills).

edit: > A very high number of people who aren't skilled at all try to get
these jobs hoping its not really that big of a deal and they plan to fake
their way through a job creating more work for the employees with these skills

This is absolutely true in every industry. EVERY industry.

------
jharding
You should give Programming Interviews Exposed: Secrets to Landing Your Next
Job ([http://www.amazon.com/Programming-Interviews-Exposed-
Secrets...](http://www.amazon.com/Programming-Interviews-Exposed-Secrets-
Programmer/dp/047012167X)) a read. It gives you a good idea of what to expect
and how you can prepare. I read it before I started interviewing a few months
ago and I found it to be very helpful.

------
scottyallen
When answering technical questions or writing code on the whiteboard, think
out loud as much as you can. Getting the right answer is often less important
than showing that you're smart and know how to think through problems. Think
about it from the interviewers perspective - they're trying to figure out
whether you're smart and someone they'd like to work with. When you're silent,
it's hard for them to gather information.

Also, draw pictures! Before you write code on the whiteboard, discuss your
approach, and draw any appropriate data structures/ui/etc. Once you've got
buy-in from the interviewer that the approach you outlined sounds reasonable,
then begin to implement it. This will not only score you points from the
interviewer for taking a methodical approach, but will also make it more
likely that the code you do write is well thought out.

------
calvinlai
Be honest about your skills. Don't try to over-inflate your skillset, the
interviewer will be able to tell.

Try to make mention of the fact that you are loving every moment of the
learning process that you started a few months ago. Generally, people who
consider hiring novice programmers are looking to help grow that person into a
lean, mean coding machine, so if you appeal to that fact and tell them you're
in it to learn, they'll love it and you should have a higher chance of getting
the job.

Otherwise if the company is looking for someone with the know-how from the
get-go, your only chance would be to nail the technical aspects of the
interview, so study your ass off!

------
mdonahoe
DOnt worry about getting rejected. Interviewing is a skill. After a few, you
will get better.

I also like techinterviews.com and projecteuler.net

------
marpstar
Make sure to make plenty of eye contact with the interviewers. Maybe it's my
good luck charm, but when I remember to do it, it never fails.

------
genwin
Be confident without being pompous. You can do anything you're asked to do,
then you'll figure out how.

------
cschmitt
Make sure to have some paper with you to write down names or questions.
Sometimes you will hear a technology that you can research after and reference
in your thank you note. It shows interest into what the people are doing and
that you can grasp new concepts.

------
davidkellis
Don't try to BS the interviewer. If you don't know something, admit it.

~~~
cschmitt
I can not agree more with this. if you don't know it.. say you don't know and
then be ready to say how you would research or find the answer.

------
gawker
Learn to code on paper or a whiteboard without the use of a computer.

I bought myself a whiteboard just to practice the usual programming questions.
Good luck!

------
hector_ka
Try to take some samples with you, some screenshots.

~~~
horsehead
Thanks! Maybe bring my laptop in case I need to do coding or something?

~~~
christianmann
That will probably not be necessary; if they want you to code they'll likely
have facilities (whiteboard, etc) for you.

~~~
eshvk
I would disagree..On occasions where I have been asked to pair program with
one of their developers, it is definitely more optimal to use your own machine
(E.g. my mac has natural sense scrolling turned off, caps lock and ctrl
swapped etc). Also, nowadays, I have been seeing interviewers who ask me if I
want to write code on a laptop rather than at a whiteboard. This is a welcome
trend (but seen only in startups though)

------
toomuchcoffee
Don't think of yourself as a "dude." But rather, as a professional.

