Register FAQ / Rules Forum Spy Search Today's Posts Mark Forums Read
Go Back   MacRumors Forums > Apple Systems and Services > Programming > Mac Programming

Reply
 
Thread Tools Search this Thread Display Modes
Old Mar 13, 2012, 08:53 PM   #1
chrono1081
macrumors 604
 
chrono1081's Avatar
 
Join Date: Jan 2008
Location: Isla Nublar
Programming job interview (again). Anyone have any unique questions or advice?

Hi guys,

I'm not sure if anyone remembers or not but I blew an interview back in September (mostly because I couldn't hear the interviewer, and partially because it caught me off guard and I wasn't prepared for the interview).

Well, I have since graduated college, have been working on my programming skill set, and managed to pass an initial interview for an application developer position.

I have a large pool of standard questions I have been practicing, I will be buying a suit this week (I do not have one), and will be doing practice interviews until the interview date.

My question is does anyone have any additional advice for an interview for a programming position? Perhaps a strange question you were asked?
__________________
Mac Pro (2010): 3.33Ghz Intel Xeon (6 core) - 24 GB RAM - NVidia Quadro k5000
Macbook Air (2010): 2.13 Ghz Intel Core 2 Duo - 4GB RAM
chrono1081 is offline   0 Reply With Quote
Old Mar 13, 2012, 09:02 PM   #2
GorillaPaws
macrumors 6502a
 
GorillaPaws's Avatar
 
Join Date: Oct 2003
Location: Richmond, VA
I have never interviewed for a programming position, but I have interviewed candidates for other jobs in an unrelated field. I can say that interviewees that ask me good questions about our company get put in the good stack. I would be tempted to ask them about their coding philosophy, if they use pair coding, or agile practices etc. and why that approach works for them. I'm sure you'll get lots of other code-related answers here too, but I thought I'd chime in to share my (non-coding) perspective.
__________________
How to ask good programming questions: Getting Answers
GorillaPaws is offline   1 Reply With Quote
Old Mar 13, 2012, 10:43 PM   #3
jtara
macrumors 65816
 
Join Date: Mar 2009
1. Start solving a real problem right in the interview. May not be applicable for an entry-level position, though. What I mean is, identify a problem or some future development that they have planned, and offer your solution or make suggestions as to how you would solve or implement it. I've done mostly contracting, so I am hired to do a particular job. I find the most effective interview technique is to act as if I've already been hired, and just dig into the solution. Particularly if the interviewer is a peer, they will at that point forget that they are conducting an interview. It's then just a matter of showing that you're being there is going to make their job easier, because you "get it".

2. Save the suit for weddings and funerals. Seriously, wearing a suit to a programming job interview will actually knock you down a bit. In most places, there will be some concern that you will not fit in, especially if (as is common) there will be peers among the interviewers. Strike some happy medium between a suit and shorts and sandals.

Last edited by jtara; Mar 13, 2012 at 10:48 PM.
jtara is offline   2 Reply With Quote
Old Mar 14, 2012, 03:12 AM   #4
Sander
macrumors 6502
 
Join Date: Apr 2008
You should also be prepared for non-technical questions. Some interviewers like to ask you "Where do you see yourself five years from now" and "Name a situation where you solved a problem using persuasion".

If I'm the one interviewing you, you'd score extra points by just staring at me and saying "... dude." I'll apologize and say they make me ask this stuff, and quickly get back to nested templates and your knowledge of C++11.
Sander is offline   0 Reply With Quote
Old Nov 1, 2012, 09:22 PM   #5
dynafrom
macrumors member
 
Join Date: Jun 2012
Quote:
Originally Posted by jtara View Post
1. Start solving a real problem right in the interview. May not be applicable for an entry-level position, though. What I mean is, identify a problem or some future development that they have planned, and offer your solution or make suggestions as to how you would solve or implement it. I've done mostly contracting, so I am hired to do a particular job. I find the most effective interview technique is to act as if I've already been hired, and just dig into the solution. Particularly if the interviewer is a peer, they will at that point forget that they are conducting an interview. It's then just a matter of showing that you're being there is going to make their job easier, because you "get it".

2. Save the suit for weddings and funerals. Seriously, wearing a suit to a programming job interview will actually knock you down a bit. In most places, there will be some concern that you will not fit in, especially if (as is common) there will be peers among the interviewers. Strike some happy medium between a suit and shorts and sandals.

Is this a joke? Wear a suit to ALL professional interviews.
__________________
rMBP GT650M OC'd +120/+1000
dynafrom is offline   0 Reply With Quote
Old Nov 10, 2012, 12:26 PM   #6
robvas
macrumors 68000
 
Join Date: Mar 2009
Location: USA
Quote:
Originally Posted by dynafrom View Post
Is this a joke? Wear a suit to ALL professional interviews.
Not programming jobs - unless it's a position at a bank, consulting firm, or some place that will be formal. I probably wouldn't even want to work anywhere that requires their programmers to wear suits.

We tell our interviewees to just dress casual. We'd rather they come in ready to talk about programming and not worry if they are dressed up enough.
robvas is offline   0 Reply With Quote
Old Nov 9, 2012, 10:46 AM   #7
RIRedinPA
macrumors newbie
 
Join Date: May 2011
Quote:
2. Save the suit for weddings and funerals. Seriously, wearing a suit to a programming job interview will actually knock you down a bit. In most places, there will be some concern that you will not fit in, especially if (as is common) there will be peers among the interviewers. Strike some happy medium between a suit and shorts and sandals.
That's not particularly good advice. Do some due diligence on the company you are applying to, if it is a financial services firm, insurance or some other highly conservative field then the suit should not harm you at all and not wearing one might be a huge detraction. I have 3 options for interviews: Suit, Jacket no tie, business casual. Never make the assumption because the work environment is super casual you should come in for a interview in cutoffs and flip flops.

The poster is right though that fitting in to the environment is critical. Only 11% of people that get relieved of their position in the first 12 months are let go for lack of technical skills, the rest is because they did not fit it with the companies culture or play nice in the sand box.

However, I can tell you, from experience in being on both ends of the interview gun that those conducting the interview will be able to tell within a few minutes if you'll fit in. How someone dresses is less of a concern to me than how well they can do the job and get along with others.

Here's a few other tips: If this is the technical interview, where the head of the department and a few of his team members are there prepare for the team members to throw out obscure programming references which you will probably never heard of or use. This doesn't mean people will do it but my experience is that some people take this as an opportunity to show off in front of the boss. Just be expectant of that. When you get one of those questions don't panic and don't be afraid to say you don't know. It's how you handle not knowing something that is more revealing...one of the things I loved doing was throwing it back at Johnny Smartpants, something like, "I've never heard of that or worked with it but that sounds pretty interesting, could you explain it?" Half the time what they were talking of I had done but we called it something different.

Be enthusiastic. And know their company. If it is not a software development firm accept that you are a cost to the company and your clients are going to be all internal. Your not there to be some smart ass programmer with a God attitude but to help the folks in sales/marketing/some other business unit/ get their job done. (Yeah, we're smarter, just keep that attitude on the inside ; ) ).
RIRedinPA is offline   0 Reply With Quote
Old Mar 14, 2012, 03:30 AM   #8
WebMongol
macrumors member
 
Join Date: Sep 2004
Location: Bay Area, CA
Quote:
Originally Posted by chrono1081 View Post
My question is does anyone have any additional advice for an interview for a programming position? Perhaps a strange question you were asked?
Be ready to write code on a whiteboard. It's tough and requires some practice. You can find typical questions in list below. In general, you are expected to come up with optimal algorithm and implementation in 20 minutes. Quadratic run time is not good enough. Usually you need to come with O(N) or O(NlogN) solution.
Good luck!

General
Given two arrays, print all common elements. Small array size is M, and large array size is N (M << N)

Given a list, return the first pair of duplicates in the list

Given an array of N numbers, and a number T, find out whether there are two numbers from the N numbers sums up to the number T. Find out ALL solutions to the problem and analyze the run times.

Given 64K-1 numbers [0..64K-1] find one missing number.

You have unordered array X of N integers. Find the array M containing N elements where M[i] is the product of all integers in X except for X[i]. You may not use division. You can use extra memory. Solution faster than O(N^2)

For a given sequence of numbers print all increasing subsequences.

Given an array of integers (both positive and negative) divide the array into two parts (sub-arrays) such that the difference between the sum of elements in each array is minimum?

Linked Lists

Implement basic operations for singly linked list: push_front, push_back, delete, tail, size, pop_front, find

Implement following operations for singly linked list: count, at, insert_at, insert_after

Reverse linked list in place

Find loop in linked list. Find length of the cycle. (Floyd's cycle-finding algorithm)

Write a function to find the middle node of the a singly-linked list

Write a function to copy list to new list and return pointer to head of the new list

Probability

You have a stream of infinite queries (i.e: real time search queries that people are entering). Describe how you would go about finding a good estimate of 1000 samples from this never ending set of data and then write code for it.

Given a function which produces a random integer in the range 1 to 5, write a function which produces a random integer in the range 1 to 7.

Write function to select random sample of size M from a stream of numbers.

Write function to select random sample of size M from a set of numbers of size N.

Write function to random shuffle array a.
WebMongol is offline   2 Reply With Quote
Old Mar 14, 2012, 04:11 AM   #9
KnightWRX
macrumors Pentium
 
KnightWRX's Avatar
 
Join Date: Jan 2009
Location: Quebec, Canada
1- Don't be nervous. The best way not to be nervous is to be in the "they need me more than I need them" or the "Why don't they convince me to work for them" mindset.

2- Over preparing, rehearsing and all that crap will make you nervous, thus fail at 1.

Everything else, just be yourself. Don't study, don't rehearse. Just sit down, let them ask their stuff, then ask a lot of questions about the positions, the working conditions and the salary and benefits.
__________________
"What you leave behind is not what is engraved in stone monuments, but what is woven into the lives of others."
-- Pericles
KnightWRX is offline   0 Reply With Quote
Old Mar 15, 2012, 01:39 PM   #10
chrono1081
Thread Starter
macrumors 604
 
chrono1081's Avatar
 
Join Date: Jan 2008
Location: Isla Nublar
Thanks guys for all the tips and advice

@KnightWRX I actually did that before and it worked wonders! I ended up negotiating a significant pay raise during my interview. They hired me on the spot even though I know at least one other candidate was "technically" more qualified (he had a degree and I didn't).

The other guy I mentioned at the interview was actually a coworker who told everyone at work he saw me at an interview. Good thing I got the job
__________________
Mac Pro (2010): 3.33Ghz Intel Xeon (6 core) - 24 GB RAM - NVidia Quadro k5000
Macbook Air (2010): 2.13 Ghz Intel Core 2 Duo - 4GB RAM
chrono1081 is offline   0 Reply With Quote
Old Nov 1, 2012, 09:01 PM   #11
jenny2765
macrumors newbie
 
Join Date: Nov 2012
I have some questions. I hope it's useful for me.
1.what is the first thing that people notice about you?
2.What are your three BEST life skills?
3.What’s the most important thing you’re looking for in another person?
4.What are 5 things you “can’t live without?”
__________________
103 interview questions and answers ( free pdf download)
jenny2765 is offline   0 Reply With Quote
Old Nov 2, 2012, 11:27 AM   #12
Kranchammer
macrumors member
 
Join Date: Mar 2010
Location: Kahleefornya
Quote:
Originally Posted by WebMongol View Post
Be ready to write code on a whiteboard. It's tough and requires some practice. You can find typical questions in list below. In general, you are expected to come up with optimal algorithm and implementation in 20 minutes. Quadratic run time is not good enough. Usually you need to come with O(N) or O(NlogN) solution.
Good luck!

General
Given two arrays, print all common elements. Small array size is M, and large array size is N (M << N)

Given a list, return the first pair of duplicates in the list

Given an array of N numbers, and a number T, find out whether there are two numbers from the N numbers sums up to the number T. Find out ALL solutions to the problem and analyze the run times.

Given 64K-1 numbers [0..64K-1] find one missing number.

You have unordered array X of N integers. Find the array M containing N elements where M[i] is the product of all integers in X except for X[i]. You may not use division. You can use extra memory. Solution faster than O(N^2)

For a given sequence of numbers print all increasing subsequences.

Given an array of integers (both positive and negative) divide the array into two parts (sub-arrays) such that the difference between the sum of elements in each array is minimum?

Linked Lists

Implement basic operations for singly linked list: push_front, push_back, delete, tail, size, pop_front, find

Implement following operations for singly linked list: count, at, insert_at, insert_after

Reverse linked list in place

Find loop in linked list. Find length of the cycle. (Floyd's cycle-finding algorithm)

Write a function to find the middle node of the a singly-linked list

Write a function to copy list to new list and return pointer to head of the new list

Probability

You have a stream of infinite queries (i.e: real time search queries that people are entering). Describe how you would go about finding a good estimate of 1000 samples from this never ending set of data and then write code for it.

Given a function which produces a random integer in the range 1 to 5, write a function which produces a random integer in the range 1 to 7.

Write function to select random sample of size M from a stream of numbers.

Write function to select random sample of size M from a set of numbers of size N.

Write function to random shuffle array a.
Would not work for a company that interviewed like that; that tells you exactly nothing about the skills of the interviewee except that they are good at regurgitation.
They should know the CONCEPTS you described of course, but to expect someone to write optimized code on the spot? Dumb.
__________________
Si vis pacem, para bellum
Kranchammer is offline   0 Reply With Quote
Old Nov 2, 2012, 11:42 AM   #13
karlth
macrumors regular
 
Join Date: Apr 2010
Quote:
Originally Posted by Kranchammer View Post
Would not work for a company that interviewed like that; that tells you exactly nothing about the skills of the interviewee except that they are good at regurgitation.
They should know the CONCEPTS you described of course, but to expect someone to write optimized code on the spot? Dumb.
Totally agree, unless you are applying for a company that develops algorithm libraries.
__________________
iPhone and iPad developer.
Digital White Knight
karlth is offline   0 Reply With Quote
Old Nov 2, 2012, 05:51 PM   #14
AzN1337c0d3r
macrumors 6502
 
Join Date: Sep 2010
Quote:
Originally Posted by karlth View Post
Totally agree, unless you are applying for a company that develops algorithm libraries.
I also agree.

Unless you are applying for a position where optimization is one of your main duties, writing "clever" solutions like this makes for a maintenance nightmare.

As one of my bosses once said:

Quote:
Code should be boring to read. The correctness should be immediately obvious to anyone who reads it.
__________________
rMBP (10.8), 2.6 GHz, 8 GB RAM, 512 GB SSD
Hackintosh (10.7.4), 4.6 GHz i7-3930K, 32 GB RAM, 3xHD7970, 2x240GB Vertex 3 RAID 0 SSD, 2x600GB Velociraptor 10KRPM, Drobo S 5x2TB, 2x HP LP3065 30-inch.
AzN1337c0d3r is offline   0 Reply With Quote
Old Nov 7, 2012, 01:33 PM   #15
jtara
macrumors 65816
 
Join Date: Mar 2009
Quote:
Is this a joke? Wear a suit to ALL professional interviews.
Not a joke at all.

Find out who is going to be interviewing you. It is common to be interviewed by a manager, somebody from HR, and a group of your peers.

The HR guy is to enforce company rules on hiring.

In many cases, the manager is going to take his cue from his team.

A suit generally is not going to be seen as a plus by your future co-workers. The first thing you are going to get when you walk into the peer interview are going to be glances between them and a few snickers. You will be likely be viewed as inexperienced, naive', "trying too hard", and not a team player.

Wear what you would wear to work. And find out what that is first. And get a better description than "business casual". If you can, hang-out in the parking lot on a day prior to the interview and see what people wear. Wear what the other employees wear on a day when they are well-dressed. (Skip the sandals.)
jtara is offline   0 Reply With Quote

Reply
MacRumors Forums > Apple Systems and Services > Programming > Mac Programming

Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Similar Threads
thread Thread Starter Forum Replies Last Post
iOS Developer Challenge - Mobile Programmer Quiz and IT Job Interview alexeir iPhone and iPod touch Apps 2 Aug 6, 2013 11:05 AM
Is this a normal job interview? marty1990 Design and Graphics 14 Oct 30, 2012 11:33 PM
Apple store retail job interview! emoneyy59 Community Discussion 14 Oct 6, 2012 03:22 PM
What was your first programming job? pchipchip Mac Programming 34 Jun 20, 2012 01:08 PM

Forum Jump

All times are GMT -5. The time now is 12:51 AM.

Mac Rumors | Mac | iPhone | iPhone Game Reviews | iPhone Apps

Mobile Version | Fixed | Fluid | Fluid HD
Copyright 2002-2013, MacRumors.com, LLC