I’m something of a habitual interviewee in NYC. When I moved here, my plan was to freelance while meeting with startups regularly to see if there is a good fit to join a team. As a result, I’m in a kind of perpetual state of interviewing. I meet with maybe one or two startups a month and have been asked all manner of questions. I’m not really looking for a job per se, I’m just meeting with various groups to see what’s out there. It’s a lot like dating. And also like dating, I came across a few patterns are noteworthy: (yes, I’m generalizing)
1) “So how do you feel about using Storyboard in iOS?”
This guy is a programmer like you and is usually enjoyable to speak with. It’s like talking to someone you just met and finding out you have a shared passion. I’m best in these situations because I genuinely enjoy discussing these topics. I usually ask the other person questions that I’m curious about such as whether he uses ARC or kicks it old-school with retain/release calls (I’m great at dinner parties). Whenever I meet with someone like this in an interview, I take it as a good sign about the startup.
2) “Here is a piece of paper with two arrays written on it. Please write sample code which creates an NSDictionary using the elements of one array as the keys and the other array for the values.”
Pretty simple task and any iOS dev should be able handle it easy-peasy. These types of questions don’t bother me because it directly relates to the position’s core requirements. I mean really, if you can’t populate a dictionary, then you should keep working on your personal development (sorry for the pun). The fact that I am asked questions like this means there are people who cannot answer them. I guess it’s a necessary evil. In my experience, interviewers usually present these questions sheepishly – one even asked “is it okay if I ask you to code something simple?” I don’t think they enjoy putting people on the spot like that.
3) “If a tree falls in the woods and no one is there to hear it, how would you write a function to simulate the sound and then broadcast it? There’s no right answer, I just want to see how you think.”
Twice, I have been asked questions like this. To me, these are red flags and I try to disengage. The last time I was asked a question of this sort, I just politely ended the meeting and went on my way. These questions are meant to serve as de facto IQ tests whether the interviewer admits it or not. No matter what, there is a response that is the ‘right’ answer. In both cases where I was asked this sort of thing, the interviewer was an older programmer (50+) who didn’t program for iOS. It seems that since they can’t directly evaluate iOS skills, they came up with fun little games to “see how people think” as a proxy for development ability. I consider this a poor decision on the company’s part. If there are any iOS devs on staff, they should have that person conduct the interview or at least sit in for a portion of it. In the second case, there were a few iOS devs in the adjacent office.
4) “We are currently working on a revolutionary app that will disrupt the social networking, photo-sharing, (fill-in-buzzword here) space. We have a world-class development team and a great CEO. We want to revolutionize the way people think about (another buzzword) and change the world. Our team is truly visionary and we won some hack-a-thon a few months ago. We’re all hip young guys who like to work hard and play hard. We’re building something…”
And so on. This team skews young and they’re so excited about what they’re doing, you can’t get a word in edgewise. The enthusiasm is definitely good and someting I can relate to but it’s not the right time for me to join a group like that. I think I’m just too old – I graduated college almost 10 years ago. These guys are in what I consider the honeymoon phase where everything is so exciting and the mere idea of doing a startup is a joy in itself. The problem is, someone like me just isn’t impressed unless they’re generating substantial revenue – or any revenue – which is usually not the case. I had a phone interview that started with the marketing guy rambling on for literally over 10 minutes before asking me a question. For proper context, it was my second interview so I already knew about the company from my first meeting in addition to my own personal review. These guys need to fight through a few major set-backs and get some battle scars. I think many of them will do just and be fine that but many more will fall apart once they learn the world does not care how revolutionary their product is. For these cases, the timing was off – if I was 8 years younger or if the company was 2 or 3 years older, I think it would have gone differently.
5) “Why do you want to work for us and what makes you a good fit for our company.”
The traditional “playing the game” question. This is the one that’s supposed to evoke your canned response from all the practice interviews in the school career center. This company needs an ego boost and if it is asked by one of the founders, I take it as a sign that the founder needs the ego boost. It’s the same guy who calls himself CEO of a five-man outfit that isn’t profitable and has been in existence for maybe one year. If you really need the job, then play the game I guess.
By and large, the interview process can be an awkward dance where neither person knows who’s leading. If you follow tech sites, you know that programmers can bascially work wherever they want and are always in short supply. I literally told a recruiter to fuck off once and she still calls – I admire her resolve. Sometimes, the interviewer didn’t get the memo and conducts the meeting as though he was the hottest girl at the bar and the interviewee was hitting on her. I have been offered positions at a handful of the startups and the salary never matches what I make as a freelanceer. That’s okay, I completely expect that. But the reason I point it out is to emphasize that experienced programmers aren’t desperate and there’s always something around the corner. Programmers don’t usually approach these situations from a position of desperation.
I suppose it comes down to who’s interviewing who. Whenever I take one of these meetings, I’m evaluating the company starting from the person sitting across the table. Can I get along with these people? How big is the staff? Do they have ping-pong tables, foosball tables, and dartboards all over the office? Not that there’s anything wrong with that, it’s just not my personality. Do the founders have any successful exits? Who’s invested? And so on. This confusion is probably why we’re seeing new ventures that reverse the dynamic: companies bid to speak to developers. The time is right for this and I think we’ll see more services like it pop up in tech hubs like NYC, Boston, and the Bay Area. Until then, I’ll just keep on looking for my start-up soul mate.