News for hackers. Stuff that matters.
Re:Microsoft changed how it interviews software developers by solatic on Monday December 31, 2018 @01:33AM (#18793391)
Dogfooding their process is going to give them adverse results here: Microsoft is paying them to take all the time they want, but good candidates won't be so willing to spend so much time. Already, they're up to a full day of interviews, which is ridiculous. One of the worst parts of current FAANG interviewing is how long it takes to get to the day of interviews, needing to take off from work to attend the interview day, and then getting rejected nonetheless. Not only does this process ask for too much commitment on the part of candidates, it selects for candidates for whom such a commitment is less relatively costly - i.e. people who are currently unemployed, students, etc, and while there are many such people with great talent and potential, respectively, they're also less likely to be strong candidates than people who are currently employed.

One of the key issues in recruiting is how to make hiring decisions quickly. Good candidates don't have the patience for your internal politics to resolve over a month or two to figure out whether they're getting an offer or not; they're just going to interview with other places in the meantime who will beat you to the punch.

Take a resume off the pile. Email or text to schedule a call. During the call, talk about relevant experience / past projects, what each side is looking for, etc. Make a decision during the call whether you want to invite the person for a two-hour interview, and schedule it during the call, first offering an evening time slot for the interview. In the first hour, talk about culture, problem-solving and teamwork approaches, engineering attitudes. In the second hour, pull out an actual current problem and solve it collaboratively. If all goes well, send an offer, and offer to set up a dinner to talk about / negotiate the offer.

It should not take more than a few hours to make a decision on someone; it should not require a candidate to take paid time off. Your hiring pipeline's average lead time should be measured in days.

Re:Microsoft changed how it interviews software developers by denzil_correa on Monday December 31, 2018 @02:40AM (#18793542)
One company wanted approached to interview me for the position of a "scientist". Their initial step of the interview process was to spend 4-6h on some "challenge" they designed. I told them, I can't spend 4h of my time on the 1st step where I have no clue what my hiring manager even does! I made a counter to their proposal as all my research projects are publicly available. My counter was similar to your proposition. I asked them to pick any of my research projects and talk about it, I told them I just need a 5 minute heads up. Of course, they didn't take me up on it because they required "commitment from the candidate". I chuckled on the irony in that last phrase. Interview is a 2-way process and it seems a lot of people have bought into some of the kool aid.
Re:Microsoft changed how it interviews software developers by jrx on Monday December 31, 2018 @04:25AM (#18793789)
I can share with you one hiring insight I have that goes against your sentiment. I've been hiring for hedge fund research roles for the last three years interviewing ~30 candidates over that period.

What I've learned is that it is a very weak signal to talk to candidate about "their research" unless it's immediately and directly applicable to what we were doing as a company, so that we can talk about it as equal experts, which never really happened in our case. Previous research done by candidate was, like research almost always is in a narrow and specialize niche. Every candidate I was talking to was very good with talking about their research and from my perspective at the time of the interview it was impossible to validate and evaluate their claims. That conversation could convey the character of the candidate but I couldn't evaluate their ability to do new research.

Instead, presenting candidates with the same problem, that in our case took around 3 hours to solve, in our case proved a good way to compare candidates a bit more objectively and test how they approach solving problems they haven't seen before which is more applicable to what they'll be doing on the job.

The downside of that process is that during three hours you can only test so much, but hiring is a really hard thing to do right and we didn't want to take more of candidates time as we did value it highly and found that to be the sweet spot for us.

Re:Microsoft changed how it interviews software developers by Traster on Monday December 31, 2018 @08:23AM (#18794375)
The upside of asking candidates about their research is it does a good job of verifying what their contribution is in often highly collaborative environments. Too often I've seen candidates who've worked on super exciting stuff, but not actually been the key contributor. This is way more common in junior roles though.
Re:Microsoft changed how it interviews software developers by denzil_correa on Monday December 31, 2018 @11:09AM (#18795139)
> That conversation could convey the character of the candidate but I couldn't evaluate their ability to do new research.

It all depends on the questions asked to the candidate. You don't ask them about their research which is publicly available in any case. You ask them questions that let them reveal their thought process about their research. Now, it's up to the interviewer to come up with good questions to make this happen. The interviewer has to be well prepared and think about questions. You don't need to be an expert to ask good questions.

I'd like to reiterate that this applies to research/scientific position where pushing the boundaries is a crucial aspect of the job. In case you are looking for a very specific skillset, things may be different.

Re:Microsoft changed how it interviews software developers by kamaal on Monday December 31, 2018 @03:58AM (#18793729)
>>I told them, I can't spend 4h of my time on the 1st step where I have no clue what my hiring manager even does!

You had a lucky escape. I had the same from a company. Which was arguably a 2 full nights worth work if done right.

I took the challenge. Did it, it passed their functional test suite which they provided. Unit test cases, git repo, documentation etc etc all in place.

They came back saying it was not enough. So it's not like if you do the take home project, they let you in.

Also its a tad little irritating to make people work for so long, make them do everything. And even then with perfectly working solution turn them down.

Re:Microsoft changed how it interviews software developers by pjmlp on Monday December 31, 2018 @04:37AM (#18793824)
I had one which took a similar effort, passed all their unit tests, then they went into radio silence and after trying to understand what was going on, the only feedback I got was "we were expecting something else".

Further inquires about what was wrong, given that it was working as per specification got zero answers.

Re:Microsoft changed how it interviews software developers by bartread on Monday December 31, 2018 @05:14AM (#18793912)
For a long time I worked for a company that used a coding test as the first stage of the selection process. We advised candidates not to spend more than about 90 minutes on it, although I'm sure spent more. There was also no time pressure: we had some people take weeks to return the completed test due to exams, holidays, family commitments, or whatever, and it was no big deal.

Anyway, this all seemed perfectly reasonable until I went for a job I'd been approached about by an agency with a similar test at the beginning of the application process. They'd asked me to build a simple calculator and said it should take no more than 2 hours.

No big deal, but it was the weekend before I had 2 hours free where I could do it due to other commitments. Pushy recruiter didn't understand this but, whatever[1]. Should have been a red flag straight away.

Anyway, I put together a working solution with comprehensive tests, send it off to the recruiter and on Monday hear... nothing. That's right: nothing. Gave it a few days, got in touch with the recruiter and still nothing. No, "sorry, it wasn't good enough." No feedback on what might have been wrong with it. Nothing.

I was absolutely incensed. The whole incident gave me a different perspective on pre-interview tests, to the point where I'm no longer really interested in doing them for "unknown" companies. I made an exception to work with an organisation where I had several friends, so was confident that even if I didn't pass I'd get some decent feedback on why.

The most significant effect, however, has been on my own approach to recruitment. At the moment we don't, and I have no plans to introduce, programming homework as a pre-screener. Rather we take a much more personalised approach. We're also in the situation where we get few enough applicants that we can afford to talk to all of them, although this won't scale and will have to change.

Still, it's hopefully uncontroversial that before you invest the 5-6 hours (across 2 people) required for a 2 hour technical interview (in our case an exercise where we work together on a problem), you do need to some sort of pre-screener to weed out the people who really can't code: https://blog.codinghorror.com/why-cant-programmers-program/. I wouldn't say this is 99 out of 100 programmers, nor anything like, but it's certainly the majority. We therefore do a half hour telescreen, which is a fairly informal chat about what the candidate has been working on, what we do, and then - of course - there's a very simple programming task at the end. This takes an investment of roughly 90 minutes on our side (again, 2 people). We're explain the format to candidates in the invitation, which gives them an opportunity to decide whether they want to go through with it or not.

Even if candidates don't pass, and it's usually on the technical task that they fall down, we give them feedback, including pointers to how they can improve their skill level.

(Apologies, this came out much longer than I intended.)

[1] There's some merit to the "well, do you want a new job or not?" mode of thought but not much. E.g., in my current role I advise candidates not to do our technical interview after a full day of work because they're not likely to perform at their best. Obviously not always possible, but it's about ensuring they set themselves up for success: if you dislike your current job enough to be looking for another one don't you want to make sure that when you get an interview you do everything you can to do well in that interview? This is obviously very different to expecting candidates to jump through hoops under time pressure just because "commitment".

Re:Microsoft changed how it interviews software developers by itsthejb on Monday December 31, 2018 @04:40AM (#18793831)
Once I wanted to interview for a company that wanted me to implement a FULL chat client, including the full range of auxiliary features, for step one...
Re:Microsoft changed how it interviews software developers by oarabbus_ on Tuesday January 01, 2019 @06:19PM (#18803039)
>Interview is a 2-way process and it seems a lot of people have bought into some of the kool aid.

What too many people choose to forget or ignore is employment itself (at least in CA) is a 2-way process. The employer is not doing you a favor by employing you, despite how many people have drank the kool-aid to the contrary. You and the company have entered into a mutually beneficial agreement. Unfortunately, many people don't have the means or desire to walk away when an employer veers into "you should be thankful we let you work here" territory.

Re:Microsoft changed how it interviews software developers by kluyg on Monday December 31, 2018 @02:02AM (#18793453)
Yeah, if only it was all unicorns and rainbows. What you describe is how I imagine they interview for director / VP positions. With hundreds (thousands?) of applications per day for software engineering positions, all with perfect resumes, what you describe just doesn’t scale. Software engineers do 1-2 interviews per week each, it’s part of the job. I might be a minority, but I would refuse to spend two of my evenings per week interviewing people. I’d rather spend time with my family instead. I think asking candidates to get a day off for interviews, which happens like once per year or even less often for each candidate is more reasonable than asking your employees to work evenings each week.
Re:Microsoft changed how it interviews software developers by solatic on Monday December 31, 2018 @10:17AM (#18794800)
> Software engineers do 1-2 interviews per week each, it’s part of the job. I might be a minority, but I would refuse to spend two of my evenings per week interviewing people.

Why are software engineers doing interviews at all? What makes software engineers qualified to interview people (especially when you consider the need to avoid hiring bias, problematic statements by interviewers that expose the company to legal suit, etc.)?

I'm not saying that companies should go to the other extreme and have all interviews conducted by HR - that presents its own set of problems in that HR doesn't know how to evaluate candidates for technical skill. But expecting hiring managers to open up a few evenings per week in the irregular and relatively uncommon circumstance (if it's common, then you have problems with churn on that team, and you should consider firing the manager) in which positions open up on their team to evaluate potential direct reports is not even remotely unreasonable.

Re:Microsoft changed how it interviews software developers by em-bee on Monday December 31, 2018 @10:37AM (#18794902)
i am right now preparing to fill two positions, and i am looking to interview at least half a dozen people maybe more. due to my schedule i can't really interview more than one per day, so this is going to take a week or two.

i do want the opinions of the people already on my team, because a big part of the interview process is to find out how well they work together. for me hiring is a team decision, not a top down mandate. so yes, all of my software engineers will be doing interviews. there is no way around it.

on the other hand i agree with you. these rounds of interviews should not happen to often. if our team grows, i expect to add two more positions every quarter. (i don't know how realistic this is, but this just to give you an idea of how much interviewing workload i expect.)

Re:Microsoft changed how it interviews software developers by em-bee on Monday December 31, 2018 @03:48AM (#18793689)
if i am looking for a different job, i'll not just interview with one company, but several. even more so if i still have a job and i really need to weigh the options to decide if the new offer is really better.

there is only so many days i can take off. with two weeks holidays, i might spend all of my holiday budget for this year.

Re:Microsoft changed how it interviews software developers by ghaff on Monday December 31, 2018 @10:09AM (#18794763)
I'm not sure what you think is a reasonable alternative. In general, having some F2F on-site interviews is in everyone's interest. I'll agree that there should be some reasonable pre-screening before everyone makes a significant time investment. But the reality is that if you're job hunting you may well have to take some time off--especially if the opportunities aren't local.
Re:Microsoft changed how it interviews software developers by em-bee on Monday December 31, 2018 @10:22AM (#18794827)
i was mainly responding to this: I think asking candidates to get a day off for interviews, which happens like once per year or even less often for each candidate is more reasonable than asking your employees to work evenings each week.

by stating that it is most certainly not just once as i am likely interviewing for multiple jobs.

i don't know what the solution is, but i think it is reasonable to say that some compromise is necessary, and as much as i value your (and my) time with family, if we want to grow our team so that we are not having to work overtime as much and actually get more time for our families, then we'll just have to make some sacrifices.

apologies for being a bit polemic.

actually, i do have a solution for myself. i only hire young people fresh out of university who don't have a job yet. higher positions are filled from within. ask me in a few years how well that's going.

Re:Microsoft changed how it interviews software developers by ghaff on Monday December 31, 2018 @10:31AM (#18794868)
>i think it is reasonable to say that some compromise is necessary

I'm honestly not sure it is. Half-a-day to a day of on-site interviews (possibly after a phone screen) is how most companies have been filling professional roles for decades. Certainly it's an easier process for people doing it out of university. And it's easier to do locally when a candidate can often just take a few hours off. But, while many debate some of the specifics of how companies screen for technical talent, I don't see widespread pushback against candidates coming in for on-site interviews of some sort.

Re:Microsoft changed how it interviews software developers by elcomet on Monday December 31, 2018 @03:31AM (#18793656)
Why would you work on evenings? Interviews can and should happen during the day
Re:Microsoft changed how it interviews software developers by em-bee on Monday December 31, 2018 @10:40AM (#18794936)
it depends on how many candidates you have. a few months ago i was hiring for a position, where i didn't get a single candidate who was able to take time off work. (ok, i had one who took an extended lunch break, but the rest were evening or weekend only)
Re:Microsoft changed how it interviews software developers by apple4ever on Monday December 31, 2018 @01:54PM (#18796211)
Absolutely.

That being said, if a candidate just couldn't take off work for whatever reason, I am willing to do an evening interview.

Gotta be flexible, on both sides.

Re:Microsoft changed how it interviews software developers by denzil_correa on Monday December 31, 2018 @02:33AM (#18793521)
> I might be a minority, but I would refuse to spend two of my evenings per week interviewing people. I’d rather spend time with my family instead.

It seems to me this is an issue with your employer not the interview process.

Re:Microsoft changed how it interviews software developers by kluyg on Monday December 31, 2018 @04:08AM (#18793754)
I was referring to this: > invite the person for a two-hour interview, and schedule it during the call, first offering an evening time slot for the interview.
Re:Microsoft changed how it interviews software developers by xedarius on Monday December 31, 2018 @02:05AM (#18793461)
I completely agree with this. It's a process that's practical, fair and scalable.

I'm currently interviewing and so far I have had a 48 hour weekend project, a 3 hour code assessment, and I'm expected to endure 3 days of interviews. I'm fairly close to throwing in the towel and saying I can't be arsed with this.

Re:Microsoft changed how it interviews software developers by haspok on Monday December 31, 2018 @07:28AM (#18794225)
I very much disagree with you: the more experienced the candidate is, the more the interview is about the company and the work environment, not just the candidate. I.e. it is a two way street, and the candidate has to decide in the end whether he/she wants to work for that company or not. There is simply no way a 1 or 2 hour interview can provide this information - this is why you need more time, and this is why I do think the process described in the post is a great way to interview.

This may not apply to all companies or situations, but for a Microsoft-sized organization this is the way it should be done.

Re:Microsoft changed how it interviews software developers by solatic on Monday December 31, 2018 @10:43AM (#18794958)
If you're Microsoft-sized, then if anything, your interview process should be less strict, not more strict. At organizational scale, enforcement processes become more important than culture. That means building out custom standardized entrance exams, regular "induction days" with mandatory internal courses for new hires (wherein it is your job in the first few weeks or even months to just go to those courses during normal working hours), deployment pipelines which guide new junior hires by enforcing minimum test coverage, style conventions, passing static code analysis, etc.

Your hiring needs should reflect the size of your organization, and your hiring process should reflect your hiring needs. If you hire relatively infrequently then it makes sense to go over individual resumes and have infrequent evening interviews. If you need to hire hundreds of people this month just to negate churn then you have the resources to build out the kind of enforcement-process-oriented above since you surely need that kind of infrastructure anyway. Everything in between is just a matter of degree and where your company is on the process-vs-culture balance as a function of its size.

Re:Microsoft changed how it interviews software developers by ghaff on Monday December 31, 2018 @09:31AM (#18794616)
I sorta agree on the latency although there are a lot of unavoidable reasons that happens including but not limited to travel schedules of the decision makers and the need to interview multiple candidates.

However TBH an in-person day with 4 or so interviews (perhaps post a phone screen) is absolutely standard for all sorts of professional positions and has been for many decades. I can only think of one case where I just had an informal in-person lunch instead--and that was a case where I knew the company's owner very well.

Re:Microsoft changed how it interviews software developers by c1sc0 on Wednesday January 02, 2019 @05:39AM (#18805364)
I sometimes wonder if a shortcut would be to hire & Fire quickly but only for short-term contract work. After X time as a contractor devs can upgrade to a full position.
Re:Microsoft changed how it interviews software developers by C1sc0cat on Monday December 31, 2018 @07:06AM (#18794163)
Realistically your not going to schedule interviews in the evening unless its a tap on the shoulder interview for senior roles

Any serious interviews will take a day extra traveling, your prep time etc - I agree about having 4-6 interviews in a day is just stupid.