Software, Team and Strategy

Mike Borozdin - Kubernetes @ Google. Previously: Dir of Eng @ DocuSign, Lead @ Microsoft. I help companies focus and engineers grow.

Monday, October 14, 2013

Stop Whining About Interviews and Fix them, yourself

In this day and age of tech talent shortage a week doesn’t go by without someone complaining about a
“dumb interview” or “I will never work for these guys because of the interview” rant.  If you are an outsider in the tech industry you might think that engineers are subjected to some kind of hazing to make it into the “brogramming fraternity.” The truth is actually far from it. I will help you change your mindset in a way that will fix your next interview and make it a very pleasant one.

Here is the biggest issue that almost all of the engineers have when they are going to interview with a company: they think that interviewing is similar to passing a test.  It is not like passing a test.  It’s a bi-directional exchange of information.  When you take a day or an afternoon to interview with a company you need to figure out whether or not the team and you are a good fit for each other.

Now that you are armed with this profound knowledge (kidding) you should be absolutely fearless not only to go through any interview, but also to adjust the flow of the interview to accomplish this mutual goal.  First of all you need to understand that a company putting together an interview actually wants to find a good engineer and because they have scheduled 3-8 hours with their team they hope that it’s you.

In a nutshell a good engineer has the following characteristics:
1) has relevant experience or other indicators that he/she can contribute to the mission of the team
2) is not a drama queen
3) has a working style that works well with the rest of the team

I know that there is a bunch of hackers jumping from their beanbags right now who want to tell me about how they best hack at night and that only if someone was more “flexible” they could show how genius they are.  You guys can sit back into your beanbag and understand that while there is a subset of problems where you can go at it alone – most of the serious projects require coordination and collaboration with a larger team.  That is why during the interview process the company wants to know whether you are going to be a person who creates drama or who just can’t mesh with the rest of the team.  If you are that person it doesn’t mean you don’t deserve a software job, it just means that maybe you need to be in a different environment.

I also talked about skills.  Yes, during the interview process, however short it is, you need to be given a chance to prove that you will be able to code/test/design.  It’s very hard to assess that because a serious coding task takes more than an hour.  That is why people who will code for work are getting questions about reversing strings or searching through an array.  It’s one of the quickest ways to figure out if someone can actually write some code.

There is another huge mistake that a lot of engineers who interviewed with me and didn’t get hired made – they never really dug into what they are interviewing for.  The bi-directional conversation assumes that while a team is evaluating you to be a good fit, you have also done your homework and think that you actually fit the requirements that help this team accomplish its goals.  Anyone who has not done the homework sends the following signals: “I don’t care about this job” or “I generally don’t think very far into the future”.  Either way it’s obviously not a good fit.

Now we are facing another issue – a bunch of people who had very little interview experience are interviewing and they ask you some dumb question like “how do you tell which light bulb was on in a room that you never entered.”  Here is how you deal with that: it is absolutely OK to ask the interviewer questions back.  You can say something simple like: “hey that seems like an interesting problem, but we only have an hour and you are hiring me to do Java development.  In my 5 years of Java development I never had to figure out light bulbs, what I did do is debugging, identifying memory leaks, refactoring legacy code, migrating data… etc., would you be interested in talking about that instead?”  If the interviewer insists that you still have to do light bulbs then do the best you can, but take note that here is a potential team member who tries to assess you by inference instead of asking you directly about things that matter for this position.  Is that a sign of a good team?

Last thing that I want to tell everyone is that technology is hot right now.  It’s one of the most desirable jobs to be in.  A lot of people who are not passionate about it or don’t really know it are choosing to do it for the perceived payoff.  They are getting resume coaching, interview coaching, they are buying books on how to do coding puzzles and such.  As a person who is making the hire/no-hire decision (something that I had to do for the past 12 years) you are trying very hard to separate good from bad.  The costs of making a mistake sometimes are pretty huge.  I’ve given people a little slack when it came to proving their coding skills and almost always regretted it.  Because we made the wrong choice we have invested months into people and told other qualified candidates that the position was filled.  If you have examined the company, the job requirements and asked the relevant questions to make sure you can have a long and prosperous future with the company - say so.  It’s not begging or bragging.  It can be something simple like: “From what I saw I think I am a good fit for this because… “ – that goes a long way!

Thanks and Good Luck!

Shameless Plug: I am always looking for good people to help build out my team.  If you are interested in talking – get in touch with me via LinkedIn or Twitter.

Labels: , , , ,

Tuesday, October 01, 2013

Find me at Silicon Valley Code Camp this Saturday 10/5/2013

I will share my experience with Developer Communities and APIs in this session:

http://www.siliconvalley-codecamp.com/Session/2013/different-style-apis-for-different-audiences

The session is at 11:15AM on Saturday.

Session Brief:
DocuSign has had an API for close to 7 years over this time we have created five version fo our API. Over time we realized that it was not about SOAP vs REST - it was about making things accessible to the right audience. In this session you will learn what choices we made and how they captured various audiences