Advertisement

Do interviewers allow you to use a compiler to answer questions

Started by December 16, 2011 06:08 PM
20 comments, last by coderx75 13 years, 1 month ago
I've given a lot of interviews and no, you probably won't have access to a compiler. In the first place every compiler and IDE is different - I'm neither going to find and install the one you like nor expect you to figure out the one the company uses in what little time is available. Second, at least for the companies I've worked for I don't really care what language you use - I expect that if you can code decently then you'll be able to pick up whatever language your current project uses - and that could easily change from project to project.

As for the code itself, I expect it to real and not pseudocode, but I don't care if you make minor syntax errors. I do expect you to have a good algorithm, have at least a vague sense of good structure, and be able to mentally go through it to find the most glaring flaws.

As for the simplicity of the questions in the OP, those are commonly seen in the early stages. About a third of the people can't answer them well.
-Mike

[quote name='jwezorek' timestamp='1324063291' post='4894588']
No, you will never be sat down in front of a computer in an interview.

My guess is you haven't been through an awful lot of interviews.
[/quote]


Just out of curiosity what game companies have you interviewed with that sat you down in front of a computer? I've never seen it done before in any interview I've been in, or from any of my colleagues.
Advertisement
Yeah, I'd be caught pretty far off guard if I was put down in front of a computer. If you want to do that, issue a programming test ahead of time.
SlimDX | Ventspace Blog | Twitter | Diverse teams make better games. I am currently hiring capable C++ engine developers in Baltimore, MD.
The first interview I had for a game company involved being sat down in front of a compute and implimenting five (simple) game play features using an existing framework and then went on to a 'chat' interview.

Last year when I had a few interviews however all the programming tests I had were either simple written ones (series of questions generally) or, in one case, a series of questions which were emailed to me and I had to complete at home and email the completed code back again.

(I had the string reversal twice in two days, which was useful as when asked to do ti the 2nd time I did it in a matter of moments ;) although I did mention after I'd done it that I'd had the same question the day before which caused amusement, heh)
Well if you make it past the programming test + phone interviews: I wouldn't worry about on-site interviews. You are not going to be expected to write perfect code on a whiteboard, though I don't know how you can screw up simple for loops or basic pointers.

The questions you had about linked list and reversing a string are the ones you will be expected to complete in a programming test. Which is basically going to be given to you before you even get a phone interview. As everyone else said, it is pretty hard to screw up basic for loop problems.


Because with questions like these, I generally always get at least the first 5-10 attempts wrong, and rely on the debugger to correct the bugs.[/quote]
You should be able to reverse a string without a single compile error, let alone a bug. If you can't do that then you are looking very bad. If you are about to be graduating then I would be worried. I wouldn't count a spelling mistake as a compiler error. I just wrote a whiteboard implementation of tic-tac-toe at an interview and I seriously doubt that I would have had a compiler error. As you write more and more code you will find that you will get fewer compiler errors per line of code that you write.

Just a funny comment. I interviewed at a game company once and they wanted me to deep copy a string into another string without using memcpy. So I wrote a for loop copying all the characters, and then this one guy was like "Why didn't you just use memcpy."

NBA2K, Madden, Maneater, Killing Floor, Sims

Just a funny comment. I interviewed at a game company once and they wanted me to deep copy a string into another string without using memcpy. So I wrote a for loop copying all the characters, and then this one guy was like "Why didn't you just use memcpy."
It reminds me something...

Previously "Krohm"

Advertisement
Just note that its not always the same. For example, initially I had a phone interview with company X. The guy asked me a few question and stuff. Then he wanted me to open up a computer and we got into this site where both of us can see what I was writing. He wanted me to write sieve prime algorithm and reverse word in a sentence algorithm, easy stuff but note that I did get to sit infront of a computer! However, I did not use a compiler or any IDE, it was a basic synchronized online notepad environment. After the phone interview, I had a onsite interview where I went through couple of technical interview and then arrived to the same guy that interviewed me on the phone. He asked me more algorithm question, and I had to either write pseudo code on paper or describe it to him and eventually write a full C++ code on paper, no compiler. The point is that, in my experience I was never allowed to use a compiler and you should be in the first case. The interviewer generally looks at the 'algorithm idea' instead of the syntax. Hope that helps. Good luck in your future endeavors.


regards, D.C
Edge cases will show your design flaws in your code!
Visit my site
Visit my FaceBook
Visit my github
Relying on a debugger is probably bad practice, but doing it without even the compiler is a harder and perhaps unfair and unrealistic test. Even if you're an experienced programmer, it's easy to make mistakes that the compiler tells you about.

I also think there's a less obvious issue where people can easily recall syntax, commands and so on when they are typing, but not when speaking verbally or even writing by hand (consider the common example of someone who can enter his PIN, but then is unable to recall it). I've experienced this myself when mentoring someone, and I have trouble recall the syntax of commands I commonly type every day.

Though I would hope that a competent interviewer is only interested in discussing things like the algorithm or theory, and not the specific details of the syntax. In my experience, I haven't sat in front of a computer in front of interviews - but I also haven't had to write programs in my head. The questions have been more general than that.


http://erebusrpg.sourceforge.net/ - Erebus, Open Source RPG for Windows/Linux/Android
http://conquests.sourceforge.net/ - Conquests, Open Source Civ-like Game for Windows/Linux


Relying on a debugger is probably bad practice, but doing it without even the compiler is a harder and perhaps unfair and unrealistic test. Even if you're an experienced programmer, it's easy to make mistakes that the compiler tells you about.

I don't know about that. At University we were made to write programs/algorithms on the whiteboard all the time - nobody expects you to memorise the Java API, but basic language syntax should not be a problem for any programmer worth his salt.

Tristam MacDonald. Ex-BigTech Software Engineer. Future farmer. [https://trist.am]


No, you will never be sat down in front of a computer in an interview.


I have been. It was on solaris in C++, which isn't common in the area. They wanted to make sure I could work in the environment. Though I got forewarned, so I asked if I could bring along a reference book (Josuttis' Standard Library). Since I didn't have a degree or experience, it was the major factor towards me getting the foot in the door.

Our UI team here sits people in front of a computer and then remotes in to overlook the process they're taking. They don't give programming tests anymore because too many people rip code off the internet or work through things with their buddies or take 3 days to do the 15 minute task.

I personally wish it were done more. I've gotten passed over for a lot of jobs due to lack of paper experience, yet hordes of simply horrible programmers collect paychecks because they can talk the talk without being able to code the simplest of tasks.

This topic is closed to new replies.

Advertisement