
Spent 50 hours on a take-home assignment only to be ghosted - bra-ket
https://www.reddit.com/r/cscareerquestions/comments/bgq8l0/spent_50_hours_on_a_takehome_assignment_only_to/
======
LastZactionHero
I've been in that spot. Not quite 50 hours, but and not exactly ghosted, put a
lot of real time and dedication into a lengthy project and questionnaire, to
get back a 'no, sorry'.

I responded for some clarification: Where could I improve? What would make me
a more attractive candidate? Nothing. We're a pretty close-knit tech community
(Boulder) so it felt like a real slap in the face.

I manage dev hiring at my company, and when I give take-home assignments, I
make sure to give them a timeline of no more than 2 hours. If you get to that
point, it's okay to tell me what you _would_ have done, as I should be able to
tell by that point if you know what you're doing and could accomplish it.

"Busy" is not an excuse. If you've got the time to interview someone, you make
the time to treat them respectfully and provide quality feedback.

~~~
Balgair
I'll echo this issue with certain companies on the Frontrange. It's good to
see that I'm not the only one that is disappointed at the behavior. I'll agree
with others, that it's the 'litigious' nature of CO that prevents the feedback
and fear of lawsuits. That said, if the company is that afraid, then the
mangers must know that the good hires out there have been burnt a few times by
now and know that the time they put in will be wasted. You may as well just
throw out the tests at this point and focus on networking. You'll only garner
fools and the desperate with these tests, with a 'lucky' few that will prove
exceptions to the rule, not the other way around. Frontrange tech is small and
_very_ close knit (there are only so many good breweries around here yall!),
word gets out fast.

~~~
whenchamenia
Thats the california mindset moving in. Colorado is not what I would call
litigous.

------
lmilcin
I have almost two decades of experience as a software developer, working for a
number of big name companies.

First, I will never accept home assignment. There is lots of problems with
this even if intentions are good.

I assume this kind of request tells me something about the organization and
the manager making the request.

I will ask if it is company policy or local initiative. Sometimes managers
just don't know any better.

I would politely explain why I won't comply. I will propose alternative
solution which is session over Skype that lets me show how I work while I
gather requirements, design, implement and verify the solution

Lastly, I will observe the manager dealing with the unexpected request and
grade based on how she deals with it. Remember, they want to got to know you
to get better deal, you should do the same.

~~~
rogerkirkness
Why would you not do a paid take home assignment when it's the way your
potential employer is approaching hiring? Or do people ask this unpaid? We do
paid two hour assignments, I feel like it just helps people show their style.
And it's a helpful preview of where to coach them too.

~~~
lmilcin
Because any work delivered in such circumstances has no value (it might be
done by your friend for all I know). It creates incentive for candidates to
waste time polishing the solution. Most importantly, if you are an employer,
think you are probably turning away your best candidates as the only ones that
will continue are the ones that are OK with this b __ __*t. Maybe they don 't
know any better or don't have other concurrent offers to work on or they don't
have current job or are not putting effort at the current one. In any case it
is likely that they are not your best candidate unless you are best employer
in the world that they will do anything to work for. Funny thing, best
employers in the world don't ask candidates to do home assignments.

If I am on the market I want to find and chase some number of potential
offers. Ideally, I will get all those offers at the same time to pick and
choose the best of the pack. This all happens while I have other engagements
with my current employer, while I am closing projects, etc. I don't have
infinite amount of time. A request like that would drain all my available
resources and prevent me from taking part in other processes.

------
joker3
Don't spend 50 hours on a take-home for an interview. Instead, email the
company and very politely explain that they're delusional. You probably won't
get a response to that either, but at least it takes less time.

~~~
salarycommenter
Counterpoint, I botched a coding session at a FANG interview. They wanted me
so they gave me a take home coding problem. I spent 40+ hours over three days
banging it out.

Got the job. 57% increase in compensation. 550k/year combined.

Totally worth it.

Only negative is it's months later and my right shoulder still hurts a bit.
Getting old sucks.

~~~
mamon
Ok, but FANG is a different matter: those are established, respectable
companies. You shouldn't do the same for small, no-name startups that try to
use those take-home assignments to extract free labor from you.

~~~
salarycommenter
I agree, the risk reward has to be there.

But I don't interview at companies unless I really need to get in. If it were
some lousy startup and I'm interviewing there it's because I am hard up and
need the job or it's tactically where I need to be next to get where I am
going.

Basically if I am spending the time interviewing I am probably willing to do
whatever it takes to get the job.

------
Guest42
Having worked at a startup I would not be surprised if they used that
assignment in order to get some of their work done. The startup I worked at
wanted to use Kaggle competitions in order to improve their AI code that they
ripped from other sources (all while the marketing team made them look as if
they were a legit company at the top of the field).

~~~
sonnyblarney
I don't get this.

A few lines of code by some random person are not going to help your company,
unless there is 'deep insight' i.e. maybe some high end AI thing, etc..

Code needs to be owned, maintained, up to spec, documented, integrated.

There's nary some random person can do remotely with little guidance that's
going to help.

The 'coding' part isn't that hard, it's all the details etc. that matter.

You'd waste far more time and energy trying to get the right person, the right
bit of code, changing it to suit the common architecture etc..

Obviously there are ethical questions, but they're moot if it's a stupid
exercise to begin with.

------
lm28469
> I was desperate for a job

> decided to put everything else on hold

> That in turn is making my life miserable ... anxiety attacks

> Why get someone's hopes high just to fuck them right in the face

> because there were a bunch of typos in it.

Overall if OP manages to process it the right way it'll be a very good life
lesson. Never put yourself in such a weak position if you can't accept defeat.
Also, if it took him 50 hours, either the task was way to big or he wasn't a
fit.

\- Spending a lot of time on something doesn't equal success

\- Don't get miserable over things that are not in your control [0]

\- Don't trust companies, they're money printing machines, not charities.

\- Most people don't care about you / your time, unless it's in their direct
personal interest

\- Always have a backup plan

[0] [http://www.sacred-texts.com/cla/dep/dep045.htm](http://www.sacred-
texts.com/cla/dep/dep045.htm)

~~~
retiredcoder
I see your point to not trust companies but even I after over 10 years in this
industry sometimes get fooled.

For me personally, I cannot live a skeptical nor cynical life and I usually
deal with people not companies. When I start the interview, I get the sense of
their people, and if I find them to be decent I move on with the process. Most
of the time my expectations are met fortunately. So, I can’t really blame the
victim here.

------
w0mbat
Startups always claim the project will only take 2 hours, but doing a half-
decent job takes more like 2 days, and in real-life you'd spend 2 weeks or
more on it to do it properly (tests, localization, documentation, performance
tuning, etc).

I am not sure how you are supposed to make a choice between doing it quickly
and being called "sloppy", taking a realistic time and being called "slow", or
any of the points inbetween.

~~~
travisjungroth
I had a company give me an assignment to create an API for matching an order
book. Business logic, web API, “must be production level code”, documentation,
set up instructions, and tests. Estimated time: 2-3 hours.

I did it in 6 because I enjoy that sort of work and considered myself fast. I
sent it to them along with an email saying there was no way someone could do
it in 3, let alone 2, and I wasn’t interested in moving forward.

~~~
peteradio
Why would you send it to them with no intention to move forward. They probably
derived some benefit from their shitty maneuver.

~~~
snazz
Maybe to rub it in that they were letting a good candidate slip out between
their fingers?

~~~
travisjungroth
Yeah, that was definitely part of it. It was a mix of ego and desire to be
helpful. I was going to finish the thing anyway, and I knew my feedback would
be taken more seriously if I finished it first versus complained up front.

One of the cofounders called and tried to get me to interview, but I explained
that between this and the call I’d had with the other cofounder (“What is the
lowest possible salary you’d be willing to accept?”) I wasn’t interested.

~~~
Balgair
> “What is the lowest possible salary you’d be willing to accept?”

Oh man, the 'Jerk' tax then automatically sets the salary up 15%. For just
that comment alone.

------
MivLives
I'm hunting for a job right now and this stings. I've had multiple companies
just stop responding after 2 or 3 interviews. The weirdest one though was the
company that after four interviews emailed me to "schedule next steps". The
next steps turned out to be telling me they wouldn't be hiring me but to apply
again in six months.

I have no problem being rejected but make sure you are actually doing so, a
form email is fine. Ghosting me is not, and I don't need a phone call telling
me you're not hiring me.

~~~
jeffdavis
A phone call is generally regarded as more respectful than an email when
delivering bad news.

~~~
aetherson
There are definitely people who feel like this, but I'm with your parent
poster -- I do not want to have an uncomfortable conversation with you about
why you're not giving me an offer. This isn't a breakup. We weren't dating.
You can just send me an email.

~~~
retiredcoder
I’d guess they opt to do so not just to give you a chance to provide feedback
but also liability.

------
DoubleGlazing
At most I will do a one hour take home or online test. If I am requested to do
anything more than that then I will politely decline.

My reasoning is that a potential employer can find out what they want abut me
and my skills by looking at my employment history and by speaking to my
referees. To invest several hours in a test that carries no guarantee of at
least an interview is not an investment I want to make when I could be
spending that time with my family, or working on other applications.

Another way of looking at it how I explained it to a recruiter who was annoyed
that I wouldn't do his clients weekend coding test. I asked him if he would
expect his client (off the shelf software house) to spend 5+ hours doing a
coding exercises to prove their worth to a single potential customer - with no
guarantee the potential customer would acknowledge their effort? After some
hmmming and haaaaing he said no, he wouldn't. So I asked, why should I?

------
andrew_
The take-home-task and white-boarding culture around interviews is horrendous,
and unfortunately pervasive. I've worked at startups for the last 10 years of
my career and I can emphatically say that there are a lot of them out there
don't participate in either practice.

(General statements with lots of holes based on personal experience and
general subjectivity ahead)

White-boarding is for recruiters, hiring managers, and the devs who volunteer
to step into interviews, so that they don't have to properly vet a candidate.
It's lazy, and very often unrealistic.

Take-home assignments display a general lack of respect for the candidate's
time, are often nothing like the work actually being done at the company. And
are a lazy, passive means to gatekeep the hiring process.

Interviews that cover/ask about basic algorithms without acknowledging modern
development practices and critical thinking (e.g. where and how to find the
answer) aren't indicative of creativity or flexibility of the the teams you'll
eventually land in, nor the company on the whole.

\---

The best advice I give newer, less experienced developers is: Build a public
body of work in one way, shape, or form. Build relationships with people who
can be good references. And lean on both as points of confidence when looking
for work or being recruited. Look for companies with which the first person
you speak with has a technical background, and actually understands what the
role is for.

~~~
collyw
> Build a public body of work in one way, shape, or form.

This can be pretty difficult. Most places you work for will not have your work
as open source. And if its backend work then there is not a lot to show the
public in terms of end results. The sort of thing I am good at are building
relatively large scale projects, it's not the sort of thing that I can do in
my spare time without spending months.

On top of that, I have offered people examples of code that I have in
bitbucket and they still insist that you do their pointless c"oding
challenge". Evey company thinks that they are special.

------
alwaysdoit
Say what you will about the merits or necessity of all-day in-person
interviews, at least the company is investing a roughly symmetric amount of
time into the interview process.

~~~
scarmig
It's more time on the company side, if anything. Each hour of interviewee time
probably costs two hours of interviewer time, and that's before accounting for
hiring committee time, the cost of real estate for the rooms, recruiters,
interviewer training time, etc.

------
nobleach
Our recruiters discourage us from sending out "take-home" tests, but I have to
admit, I'd rather see a comprehensive "can you build an endpoint that fetches
data from other places - some in parallel, some in serial - and build a
response?" type challenge instead of "can you reverse a string?" or "can you
find the next permutation of this number sequence?". Yes, it'll take about an
hour or so to pop something up on your GitHub. But it'll show me how/if you
handle errors, if you add logging, if you write some tests. I get that not
everyone has the time (or desire) to devote to this but... I sure do hate
doing the "CS-secret-handshake" to make myself believe a developer can solve
problems.

~~~
crispyambulance

       > ...can you build an endpoint that...
    

Wait, you're expecting someone to whip up an endpoint that pulls in arbitrary
parallel and serial data sources, handles errors, has logging and also has
tests IN ABOUT AN HOUR?

That's kinda optimistic!

~~~
tene
How long would you expect someone to need to write code that makes a few HTTP
requests (or read files or whatever other data source is specified), some kind
of parsing or decoding (probably JSON) to get the URLs for more requests, and
spawns a couple of threads?

Nothing about that sounds tricky or time-intensive to me in any language I've
used very often. An hour sounds perfectly reasonable to me.

I'm curious where you're coming from here. What part of this would you expect
to spend so much more than an hour on?

~~~
jacobsenscott
All your doing is testing if someone memorized the same APIs and libraries as
you have, and has recently done whatever project you just did that's just like
this (except it took you a week, and now that you know how to do it you think
someone else should be able to do it in an hour). But your company already has
one of you and doesn't need another.

~~~
nobleach
In my case (the GP here) no I don't care WHAT framework/language the candidate
users. But they DO have to know how to use a webclient of some sort. And any
person with experience in any common stack should be able to perform a data
fetch. If you can't do that, you're probably not a fit as that half of what
our microservices do.

Regarding whether my company would like, or needs another me, you'd have to
ask them. I believe they'd say they would like several more of me. And there's
nothing wrong with that. I provide a good amount of value.

~~~
souprock
data fetch, in parallel: MOVDQA xmm2, XMMWORD PTR [esi+ecx]

data fetch, serial: REPNE SCASB

I also can use a webclient of some sort, which is handy for looking up
instruction timings.

------
ramraj07
While going through a data science internship a bunch of my colleagues applied
to this rideshare startup that's (in)famous for having "high standards" and
having this comprehensive take home problem that took a week to complete. It
was obvious from what others spoke that the type of people they were looking
for does not match our profiles, but they gave this challenge to everyone who
showed interest and never took anyone after that anyway. To be fair they did
interview some before rejecting them.

I feel like such large take homes should only be done if you really think the
candidate is a good fit after some interviewing.

~~~
harlanji
> I feel like such large take homes should only be done if you really think
> the candidate is a good fit after some interviewing.

For me to consider them a good fit they’d request money to complete the
assignment. Fixed would be A+, hourly would be C, free would be F.

An interview is one thing, like a free consultation. Take-homes and even all-
day/3+ round processes are pushing it.

------
AnimalMuppet
If you're hiring, and you do this kind of thing, you're only going to get
people who are desperate, which tends to not be the top talent. Top talent
usually has options, and won't put up with this kind of garbage. So if you're
doing this, you're filtering to get lesser talent that will put up with being
abused. Is that really the hiring filter you want?

------
j2bax
I do occasionally give take homes that could take this long but it is only
when the candidate is purely junior and doesn't have much/any work to review
and show for themselves, but shows a lot of promise from a general employee
perspective. I always let them know that they are welcome to use this work in
their portfolio. I also let them know that we have senior level staff
available to answer any questions they may have as they are working through
it. We want to know how they approach problems, how able they are to figure
things out, and if they know when its appropriate to reach out for help. I
would never use this work for anything outside of this testing environment. If
you are wanting to make a major career jump and haven't spent a whole lot of
time building up your Github or filling out your portfolio, be ready to jump
through some serious hoops.

~~~
andrew_
> but it is only when

I hope you're compensating them for the time. Junior, or otherwise, that's
disrespectful of the candidate's time.

> be ready to jump through some serious hoops

Eesh. This is just an abject example on just how bad the hiring process has
become.

~~~
j2bax
>I hope you're compensating them for the time. Junior, or otherwise, that's
disrespectful of the candidate's time.

Typically, we provide a small compensation for the candidates time, although
it probably doesn't amount to a lot per hour.

>Eesh. This is just an abject example on just how bad the hiring process has
become.

To be fair they can jump through hoops on their own and build up a body of
work through personal projects etc and we will make a hiring decision based on
that or we will provide them beautifully designed test assets and ask them to
make something functional to the best of their ability. When they are done,
hopefully its something that they can be proud of and build upon, whether we
hire them or not. We put ourselves at their full disposal to help them
wherever they are at as they complete the test project.

------
bengale
Ouch. 50 hour lesson on not being taken advantage of though, so there's some
value there.

------
stakhanov
Been there, done that. Spent considerably more than 50 hours on it too. Not
because I broke the rules but because they made it a point to specifically
emphasize that I should take my time rather than submit something half-assed.
-- I will not be so naive in the future.

Now I specifically ask how many other candidates for the same spot are in the
stage of the take-home exercise. If it's more than half a dozen, forget it.

It depends on a number of further factors: Anything up to 48 hours I might do
for free. For anything more, I would push pretty hard on them paying for my
time to make sure they have skin in the game. A number of reputable companies
do this now.

~~~
xvector
> Anything up to 48 hours I might do for free.

I wouldn't even suggest this. Anything over 1 hour is biting into my own
valuable time. Your take-home challenge should not take longer than a coding
challenge I'd do for another company (and those are around 30 minutes).

If they don't care to spend phone or on-site time interviewing me after this,
then they were never worth applying to in the first place.

~~~
stakhanov
I should clarify: By 48 hours I mean that my comfort zone would be a 48 hour
timespan from getting the assignment to handing it in, which might be 10hrs
spent actually working on it.

Some companies do impose a limit like that, to reign in people who would break
the rules and put massive numbers of hours in to get an edge over people
unwilling to do that. ...this limit is something I agree with as good
practice.

Also, as a bit of context: I tend to work remotely. When interviewing for a
remote job, I don't think I would prefer it if they were to fly me in. That
would most definitely be even more time wasted, plus the time I spend on a
plane is doing nobody any good, neither them nor me.

------
jjav
About a year ago a recruiter from a NYC company called me about a role which
sounded interesting.

Then they said the initial part of the interview was to write a project for
them, which essentially amounted to "rewrite memcached in go".

I must assume they were looking for free labor under the guise of an
interview. I strongly suspect there was no job. I offered to do the work for
$200/hr, never heard back.

Actually, I did hear back over six months later when the same recruiter
contacted me again with the same story. I reminded him that we already talked
about this long before.

Never do work for free under the excuse of an interview.

------
brycehamrick
I've hired dozens of developers and I do use take home assignments but
primarily to weed out obviously unqualified candidates. My objective is to
keep good developers interested through the entire process but arrive at a
"no" decision as early as possible. My take-homes typically take qualified
developers 15-20 minutes to complete but require some amount of research to
complete (e.g. third-party API documentation). I've found that if you ask too
much of candidates too early in the process you lose a lot of good ones.

~~~
collyw
Nothing that you have to research takes 15-20 minutes of time unless you are
literally cut and pasting a Stack Overflow answer.

------
chucksmash
Everybody is weighing in on whether coding tests are good or bad, and whether
or not they personally would do one.

Framing them as either good or bad (or would vs would not take) misses the
point though. What we're discussing isn't a binary thing, it's an elasticity
curve from something like (effort required / lucrativeness of job) to the
willingness of the candidate to complete the assignment.

On that basis, I'd say there definitely are cases in which I would spend 50
hours on a take home assignment with even a 1% chance of success. There are
also cases where I wouldn't spend five minutes on a take home assignment with
a 100% chance of success.

If you're going to give take home assignments, the effort required should be
in line with how amazing a job you're offering. If you're offering people
$1mm/yr to work on <that thing you love>, putting a huge filter out in front
is probably in your best interest. If you're trying to get someone to move to
SF for $70k a year...

As a side note: if you're going to have a take home test, have the decency to
make the scenario interesting and the answer illuminating.

------
SergeAx
I've been on both ends of this story: as a developer candidate and as a
manager willing to fill the position.

Story 1: test project for about 10 hours, done according to industry
standards. HR asked to refactor it so the code base would be read-accessible
via webserver. I've declined it as a bad practice, learned enough about the
company.

Story 2: put 10+ hours into inventing interesting take-home case and writing
spec, gave it to 5 candidates, gave every one of them a half-hour code review
session, accepted the best one.

I am having fun while writing code and prefer to work with similar people.
It's okay if you don't want to build a take-home project for me, there are
lots of software engineers who will and it will be more fun to have them
around.

And, by the way, you may chat with cook for hours about food, ingredients,
sauces and hygiene, or you may ask him/her to just grill a steak right here
and taste it.

------
jrockway
I have done the takehome style interview before. I spent about a day on it,
then said "here's a day's work, there is an API and a backend with tests,
writing the frontend would be straightforward" and they said "go away unless
you do it all". I went away. They had enough of a programming sample to make a
hiring decision.

As a hiring manager, the takehome is very tempting. Candidates put their
Github profile on their application. You go and look and there's nothing there
except some make-react-app template. Their work experience on their resume is
bullet points like "enabled solutions for the business through synergy", which
they've been doing for five years. But they write you a cover letter about how
much they like your company, so you want to give them a chance. You read on HN
about how whiteboard interviews are unfair. So with no data, you reach for the
takehome. If they can do some assigned work, then they'll probably do well in
the role that they've applied for, and that's a good hiring decision. And they
said right there in the cover letter that they'll do anything to get this job.
It just seems natural.

For that reason, it's something I keep in my back pocket. (So far I've used it
0 times, though.) You can definitely have a Github repository that is more
valuable than any takehome would be. You could actually talk in detail about
the sort of engineering problems you've solved on your resume, and the
takehome wouldn't show me anything new. But the reality is that the vast
majority of candidates do neither. They work all day, so the last thing they
want to do when they go home is write some open-source software. I get that.
They have no idea what a resume should look like, since they've never been in
that resume screening or interviewing role, so they write whatever some
professor in college told them to do. ("It must fit one one page," is what I
was told. I have learned that the opposite is true, if you want a job anyway.)
So having some way to determine "can this person program at all" is valuable.
But it's very time-consuming for the candidate, so is not ideal. A smart
candidate will say "nope". A naive candidate will spend 50 hours on a 2 hour
task and be mad. So it's probably not ideal.

(As an aside, what is the deal with these boot camps? Every single applicant
has the same exact react app in their Github, and an entry for building it on
their resume as though it was work experience. I sifted through 100 such
resumes recently and almost have a script to determine which bootcamp they
went to based on which files are in their Github. Is anyone getting jobs this
way!? I am beginning to think that it is some social experiment involving
bots.)

~~~
xvector
> They work all day, so the last thing they want to do when they go home is
> write some open-source software.

Or they are not allowed. A lot of companies like Apple don't let devs
contribute to open-source.

(Still not an excuse for a take-home, as you note.)

------
sixhobbits
I know how frustrating it is for candidates but having been on both sides of
this, I sympathise with tech leaders at startups who are on the hiring side
too.

We used to send out open-ended programming assessments as part of our hiring
process. It's really hard to keep track of everything without an ATS and good
internal processes and even with those it's hard to predict how many
candidates will drop out at this stage so there's a strong incentive to invite
too many and risk getting swamped than vice versa.

Not proud of it but I've definitely kept candidates waiting for several weeks
due to being unable to keep up with the rate of submissions.

I think there's a non zero chance this guy is assuming too much malicious
intent and could get a positive response still

~~~
eropple
_> I know how frustrating it is for candidates but having been on both sides
of this, I sympathise with tech leaders at startups who are on the hiring side
too._

Don't. Because it's a self-inflicted problem. The "tech leaders" (aside: this
is a gag-worthy phrase) do it to themselves through inflated requirements and
no real holistic understanding of what they either want or need in a role.

Hiring well is not difficult. Hiring well with stupid expectations is, and
that is firmly and inescapably the fault of ye olde "tech leader", and
sympathy is undeserved.

------
pastor_elm
There is a middle ground for these types of assignments.

Have your interviewee come up with a potential design and ask them to
highlight some specific concepts or programming methods. Then cover an
individual component in person, pair-programming style.

Don't know why more companies don't do this.

------
ThinkBeat
I think take homes are pretty good. I have done them and I am now providing
them for new applicants where I work.

It is amazing how many people have a resume that looks good, and seem solid
but they cant code in any reasonable way.

We do phone screen, bring in applicants that have a good resume and presented
ok on the phone part. If we like them, we give them a take home assignment
that is based on our technology stack, everyone gets the same one for each
posistion.

They committ it to our github, we spend some time looking through it. We bring
back the best performers for a second interview where they can present their
work and talk about the experience.

If we like that we hire them :)

The quality of our hires have gone up once we started doing it.

I understand it is not for everyone.

------
gerbilly
Take home assignments usually indicate that the company has a 'take home'
culture.

If they find it so easy to ask someone to work on something in their free time
when they don't have any leverage, imagine what'll happen when you work for
them.

------
shkkmo
I've only done a very small amount of hiring, but I honestly can't imagine
assigning take-home work over an hour or two without paying the applicant for
their time. I can't see how an ethical engineer can do otherwise.

~~~
crankylinuxuser
The answer is that HR is _not_ ethical.

But it's easy to use a ton of home-time as a low cost filter bubble. You pay,
the company doesn't.

And they're not required in telling you why they said no or ghosted you.

------
maxgiraldo
Regarding take-home assignments, if you do decide to incorporate this into
your hiring process, I think pulling a page out of Aaron Swartz's "How I Hire
Programmers" [1] is a good place to start. Important points being to keep the
task small and non-proprietary. If it is legally and financially possible,
then also pay the programmer for her/his/they time.

[1]
[http://www.aaronsw.com/weblog/hiring](http://www.aaronsw.com/weblog/hiring)

------
filthius
Any take home project for an interview should be delivered or mirrored from
your public GitHub profile. Bonus points if you slap a GPL license on it.

------
deftnerd
This spurred me to think of a neat way to help the community.

A site that takes requests for opensource code packages or modules (or
refactors or contributions) and lets applicants work on one of those.

The hiring company could select what skills they want to test the applicant on
and the applicant could pick among any number of matching requests for open
source work.

------
hellow42
This reminds me of when I had to work a full day at the startup for free, in
order to check if we were compatible.

~~~
overcast
You agreed?!

~~~
greenyoda
If they worked for free it would be illegal in the U.S. (violation of minimum
wage laws).

------
georgehayduke
Anything that takes more than a couple of hours should be compensated. This
includes "training days".

~~~
ghaff
You hear this a lot but it's really not practical under a lot of
circumstances. For starters, it will often be a violation of your current
employment agreement.

I do get the issue. I've been in jobs where having a writing sample or even
giving a presentation on some topic were pretty much non-negotiable and, if a
candidate didn't have those ready to go, they'd have had to prepare them. But,
at least in those cases, it was a topic of the candidate's choosing so they
didn't necessarily need to create something custom.

~~~
C1sc0cat
I suspect doing it for free might be as well - especially if its a sneaky sole
a production problem for us.

------
paulcole
> But I was desperate for a job

This is the key point. If you're truly desperate you have to try anything,
including 50 hours on a take-home assignment.

Yes, those 50 hours could be spent applying for other jobs, but if you're
desperate that's what you should be doing with hours 51+.

~~~
MivLives
This is why these threads can be frustrating for juniors with no experience.
Yeah sure, if you have ten years of on the job experience you can refuse
companies that make you do take home tests. If you have zero years then it's a
lot harder. My hit rate for interviews has been about 1/20 for actual
interviews per sent job applications. If there's a coding challenge and it
gets me to the next round so be it.

------
soared
I have been paid a fair hourly rate for two of the take home assignments I've
completed.

------
pyb
I don't know how to reconcile this new trend for take-homes, and more
generally, ever more arduous recruitment processes ; and OTOH, the usual
claims that there's a deep shortage of good candidates for software
development jobs.

~~~
scarmig
"good candidates" are those who meet two conditions: 1) competent and 2)
suckers, in the sense that they'll put in a lot more work than they'll get in
compensation.

The process successfully selects for good candidates.

------
silveroriole
Am I the only one who likes take-home assignments? Not for 50 hours, but I’d
far, far rather spend some of my weekend comfortably coding on a chunky
assignment than be asked stupid ‘cracking the coding interview’ questions in
person.

------
mnm1
Yup. I did a similar assignment although much shorter. The company then
decided not to hire anyone. Never gave feedback or even looked at it. Since
they I won't do this type of shit anymore unpaid. If they pay, we'll see.

------
masterjack
Given that it was a data science interview is it possible they were expecting
it to be a fast simple thing (some pandas, some sklearn, you’re done) and
instead he did some long slow manual thing so they rejected him?

------
tokai
I like the comment about putting the project in his portfolio. He should hold
the copyright for his code, unless he signed it away.

~~~
greenyoda
Regardless of what was signed, I doubt that the company would own the
copyright if the developer wasn't paid anything for it (and didn't even
receive feedback). A valid contract requires that each party receive something
of value.[1] And the company can't claim it was a "work for hire" because it
wasn't paid for.

[1]
[https://en.wikipedia.org/wiki/Consideration_under_American_l...](https://en.wikipedia.org/wiki/Consideration_under_American_law)

------
HeWhoLurksLate
Little mirror, if your work blocks it:

[http://archive.is/fQP23](http://archive.is/fQP23)

------
unstatusthequo
I would absolutely send them a bill for the time. Oh you didn't pay? Small
claims. Then it's also public record. My guess is given the facts you'd fare
pretty well.

~~~
jstarfish
What exactly are you claiming?

The company said "do some work for us for free" and the applicant accepted. A
compensation claim would go nowhere.

This is more in the state Department of Labor's jurisdiction but they won't do
anything about it either.

~~~
C1sc0cat
Minimum wage law maybe :-)

