News for hackers. Stuff that matters.
Re:How Firebase Interviewed Software Engineers by kamyarg on Thursday September 26, 2019 @02:46PM (#21084129)
> The strongest candidates take their job search seriously and are willing to devote a fair amount of time to landing the right job.

... only for the 1-2 top companies they are interviewing for.

I have discontinued multiple interviews because they demanded 4-5 evenings of work for free on short notice, if I am going to spend 10-20 hours per company I have to take two weeks off from my current work to do it. On the other hand I have done the required work if I really want to join a company, but they are only top 5%.

Another problem is, usually what is expected and how the project will be judged is not mentioned beforehand;

- so do I write unit tests?

- do you want docs for running it?

- should it include deployment instructions/code?

- does have to support 5000 req/s?

- how important is clean code for this?

each add more time and these kind of question are never ending.

So unless you are Stripe, Airbnb, Netflix, etc. (Very strong Engineering and better than average culture), I will not bother, will say thank you and be on my way.

Finally, let's say you have done the project and they reject you, they never put a fraction of the time you spent to give you feedback. because that means a lot of time they will spend on someone that will not be hired. Also might open the way for litigation for discrimination in some countries etc.

On the other hand; Once I was managing hiring process of a new grad where we asked her to design a FE+BE system, after receiving it I spent a couple of hours reviewing it, we decided to hire her, she was very enthusiastic and smart, I also sent her our notes and how she can improve the project. Her response was along the lines of "even if you don't hire me I am very grateful for doing the project, did learn a lot" She joined and quickly became a very productive colleague.

Edit: I noticed that the author mentions they keep in touch during the project and provide a code review, had not seen that yet while writing the comment. In that case it makes sense, but the candidate should know they will receive feedback even if they fail which I believe is hard for the team to accomplish but kudos if they did manage to do it.

Re:How Firebase Interviewed Software Engineers by mayop100 on Thursday September 26, 2019 @03:10PM (#21084379)
[author here]

I actually agree with your thesis! You're right that candidates are only willing to put in this level of effort if they are really interested and consider your company a "top 5%" big opportunity.

So it's critical that you convince them that you are in that top 5%! You don't want an employee to join you because their top choices turned them down -- you want to be their first choice.

We regularly won candidates away from Google, Facebook, Uber, Twitter, etc. If you want to build a great team, you're going to need to be able to do this too.

Re: code reviews -- yes, we gave everyone a thorough code review.

Re:How Firebase Interviewed Software Engineers by ses1984 on Thursday September 26, 2019 @04:33PM (#21085225)
>You don't want an employee to join you because their top choices turned them down -- you want to be their first choice.

Why?

Unless you're offering FAANG levels of compensation, isn't it pretty arrogant to think you're anyone's top choice?

Candidates can easily lie to you about this. In fact in my last job hunt I was instructed to lie about this by recruiters who are actually being paid by the company I'm lying to.

I told every company I interviewed at they were my top choice.

Re:How Firebase Interviewed Software Engineers by winenbug on Thursday September 26, 2019 @09:03PM (#21087473)
If it's "arrogant" to think that a startup could be anyone's top choice, then startups would never be able to attract any good talent.

It's not arrogant. It's simply creating a process where you can filter out for folks who are truly excited to build what you're building and believe in the potential future impact. It might also turn out to be a big payday, or not.

Not everyone is simply chasing that 400k TC every year. If you lie about your excitement, a panel of folks who have went through the same process will easily sniff it out.

Re:How Firebase Interviewed Software Engineers by partyboat1586 on Friday September 27, 2019 @04:37PM (#21096044)
Some people are better at pretending to be excited than others. Recruiters for example are very good at it. Not all engineers are bad actors.
Re:How Firebase Interviewed Software Engineers by mayop100 on Thursday September 26, 2019 @05:25PM (#21085714)
Well, then perhaps the test is working as intended! Candidates who aren't sufficiently excited about your company will drop out at this stage.
Re:How Firebase Interviewed Software Engineers by ses1984 on Thursday September 26, 2019 @05:43PM (#21085881)
This doesn't make any sense.

Your intention is to get candidates to fake excitement or drop out?

Re:How Firebase Interviewed Software Engineers by tragic on Thursday September 26, 2019 @06:03PM (#21086072)
I think the idea is that it's easy to fake excitement until you're asked to spend six hours on a take home test. At which point you'd actually have to be pretty excited to do it.
Re:How Firebase Interviewed Software Engineers by uwuhn on Thursday September 26, 2019 @06:20PM (#21086195)
Or desperate.
Re:How Firebase Interviewed Software Engineers by graphememes on Thursday September 26, 2019 @04:14PM (#21085029)
As someone who has given take-home tests let me answer these for you:

- Unit tests? Yes. It will increase your standing.

- Docs? Absolutely. A must have. You will not be considered really otherwise.

- Deployment? See above.

- Support 5k requests? Not unless that is what the test is testing for, pay attention during phone interview about the role and it's requirements, the test will look for this and other generalizations.

- Clean code? Very, very important. Don't try to show how smart you are, show how audience aware you are. Most likely you will be working on a team, a team doesn't want a cowboy programmer.

Something you didn't mention but bodes really well for anything with a front-end interface: hosting. Executives hate running things themselves, so a hosted version will put you at the top of the list.

Re:How Firebase Interviewed Software Engineers by mjfisher on Thursday September 26, 2019 @06:04PM (#21086082)
It's probably worth mentioning that any take home worth its salt will explicitly list what criteria you're being assessed on.

It's crazy how many coding tests are poorly designed and waste a candidate's time. I'm putting together a list of good practice for test design here: https://candidatecode.com/articles/coding_challenge_best_pra...

Feedback and contributions welcome

Re:How Firebase Interviewed Software Engineers by graphememes on Friday September 27, 2019 @12:31AM (#21088453)
A lot of the time they are left out to see how experienced the individual is working in the environment. What do they think is the most important (outside of the outlined criteria)? Treat it as if they are testing your experience, not your literal skill in pumping out code. Anyone can pump out code.
Re:How Firebase Interviewed Software Engineers by mjfisher on Friday September 27, 2019 @01:54AM (#21088861)
The issue there is the problem starts to become unbounded for the candidate; they can't tell what you're looking for, so they don't know how to prioritize their time.

That's a problem even if you have reasonable expectations yourself, because the candidate probably has experienced some tests where the expectations haven't been reasonable. For a (real) example: marking candidates down for not having an analytics integration.

How does your candidate know that's not important to you, even though it was important to the last company?

> testing your experience, not your literal skill in pumping out code

Past a certain point, it gets much more efficient to discuss experience in an interview setting. Good coding tests should be designed to test the skills you care about most to produce a strong hiring signal for the next phase - it's difficult to showcase a full decade's worth of experience in 4-8 hours' worth of coding challenge.

> Anyone can pump out code

I've found that to be depressingly untrue amongst a significant percentage of engineering applicants.

Re:How Firebase Interviewed Software Engineers by james_s_tayler on Thursday September 26, 2019 @08:57PM (#21087444)
I like how this is what interviewers are looking for and then you get hired and there are no tests, the code is a mess and the performance sucks.
Re:How Firebase Interviewed Software Engineers by raverbashing on Friday September 27, 2019 @06:10AM (#21090217)
And they ask a hard algorithmic/CS problem then your job is to build CRUD interfaces
Re:How Firebase Interviewed Software Engineers by james_s_tayler on Friday September 27, 2019 @07:14AM (#21090604)
You nailed it.
Re:How Firebase Interviewed Software Engineers by graphememes on Friday September 27, 2019 @12:30AM (#21088443)
That's why they look for it ;)
Re:How Firebase Interviewed Software Engineers by partyboat1586 on Friday September 27, 2019 @05:47PM (#21096572)
Clean code is so subjective it hurts. Being audience aware basically means trying to guess the company and interviewers coding style from minimal information.
Re:How Firebase Interviewed Software Engineers by lonelappde on Thursday September 26, 2019 @03:07PM (#21084353)
Great story. Instead of looking as recruiting as a cost center, make it a marketing investment. Spend hours with someone, give them a good experience, make them an ambassador for your brand and an external sourcer for their friends and their future self. Use them as practice for your staff to get better as communicators, mentors, code reviewers.
Re:How Firebase Interviewed Software Engineers by kamyarg on Thursday September 26, 2019 @03:27PM (#21084547)
Yes, exactly.

This is also a double-edged sword, if the experience is horrible, you can be sure none of their classmates will apply to you or even their school if you blew it exceptionally.

There is an article by Joel Spolsky about Hiring great engineers that touches on this point also: https://www.joelonsoftware.com/2006/09/06/finding-great-deve...

> Even though only about one in three applicants who make it to the in-person interview stage passes all our interviews, it’s really important that the ones that do pass have a positive experience. Even the ones that don’t make it go back to campus thinking we’re a classy employer and tell all their friends how much fun they had staying in a luxury hotel in the Big Apple, which makes their friends apply for an internship the next summer, if only for the chance at the trip.

Re:How Firebase Interviewed Software Engineers by PragmaticPulp on Thursday September 26, 2019 @03:38PM (#21084671)
> I have discontinued multiple interviews because they demanded 4-5 evenings of work for free on short notice, if I am going to spend 10-20 hours per company I have to take two weeks off from my current work to do it.

Honest question: Would you feel differently if these companies had 1-2 days of onsite technical interviewing instead of take-home problems?

In practice, I rarely get pushback from candidates for our 4-hour take-home problem. We provide clear instructions about expectations, constraints, and boundaries. All candidates have thanked us for allowing them to work on their own time in their own coding environments.

Re:How Firebase Interviewed Software Engineers by davinic on Thursday September 26, 2019 @03:47PM (#21084756)
I would, because interviews require someone from the other organization to be there. Time is a valuable resource, and as long as the employer is showing their commitment, I have no problem reciprocating. Skin in the game is the key.
Re:How Firebase Interviewed Software Engineers by twic on Thursday September 26, 2019 @06:58PM (#21086523)
Why does "skin in the game" matter? Why is that a useful signal about whether this company will be a good employer or not?
Re:How Firebase Interviewed Software Engineers by Doxin on Friday September 27, 2019 @04:04AM (#21089554)
It's not a useful signal about if they are a good employer, but it is a good signal for how likely they are to hire you: asking everyone who applies to take several hours out of their life to do your test is free. Having someone from your team interview them for several hours very much is not so you'll be more careful selecting candidates you might actually hire instead of just taking a shotgun approach.
Re:How Firebase Interviewed Software Engineers by ProZsolt on Friday September 27, 2019 @07:22AM (#21090648)
For me it's a useful signal, it means they value my time equally as theirs. I'm happy to do the take-home test after the onsite one when they only testing that I really know what I said I know but I'm at the finish line. A lot of companies require it right after the phone screening(usually with an HR person who knows nothing). I burned myself that way before. After finishing the take home test on the on site interview after 5 minutes it was clear they were looking for an ops person advertised as DevOps.
Re:How Firebase Interviewed Software Engineers by Doxin on Monday September 30, 2019 @06:35AM (#21113531)
Right, having the employer invest something means they'll be more likely to check for a good fit before reaching for homework as a filter.