Companies shouldn't give candidates homework assignments
gayle.com
gayle.com
Personally I like homework, because it allows me to show my strengths (actually writing code that is solid) without being "under the gun" in terms of interview pressures. I love being able to discuss the code I wrote and talk about areas it can be expanded and improved, and why certain decisions were made. In my mind, that process is closer to the job I'm often interviewing for than questions like "explain why Bellman-Ford uses v-1 relaxations"
I do disagree with the premise though. As someone who's worked in the tech field for 15+ years and has been on plenty of interviews, I for one would much rather do a short homework assignment than have to stand in front of a few people and white board shit in real-time.
Here are reasons why it's a solid idea:
1. Way more closely simulates a real work environment. I've never had a job where I get the assignment moments before I have to code it, use a whiteboard to write code, am severely time-boxed and have a group of people watch me work.
2. More inclusive. Your work stands out more when someone isn't making judgements based on looks, age, gender, etc.
3. If you complain about having to spend a couple hours outside the interview on work, maybe you don't really want the job that bad enough. People will spend weeks on an unpaid open-source project but then complain about 2 hours for something that might get them a great job.
Having said that, I agree with you also that the interview can be a great time to go over the homework and ask questions, talk about why a particular strategy was chosen, etc.
I would personally love to see more interviews go away from whiteboards and more towards homework.
For the brief stint that I did interviewing, I had candidates whiteboard after doing a homework assignment, but all I had them do was step through the very algorithm they had implemented in the homework using a very simple input dataset. None of them had any issues with the whiteboard, even those who were clearly very nervous/anxious.
Building software is hard enough as it is. I doubt making the coding tasks open book is probably not going to allow in many (if any) unqualified candidates.
Maybe I'm talking to more than one company and don't feel like subjecting myself to this absolute nonsense over & over. Maybe I'm just feeling out the opportunity without having to worry about solving a made up issue and hope it conforms to what the employee reviewing it considers good.
What other in-demand professions(based on demand vs. qualified candidates) make potential employees sing & dance, and then go through a full interview process on top of that?
Do accountants have to balance a fictional company's books or find the most efficient structuring of a fictional company's taxes across multiple jurisdictions before being allowed to have an actual conversation with a peer about the role?
a) setting up a git repo with working code in it (including tests, dependencies and whatever else) so I don't have to worry about inane(but taxing) decisions in terms of project structure/code style. Also, verify it works before sending it out to candidates.
b) including clear & detailed instructions on what is expected
c) given the test to current employees (blind) & timed them on it (allowing for the fact they know the domain & technology)
d) make it somewhat representative of day to day. i.e. I have 0 interest in spending time configuring and doing anything which is a 1-off task such as authentication etc..(unless the companies primary product is security/auth)
In short, make it easy for me to prove myself.
It sounds like you don't think much of testing, if you're expecting tests to be handed to you. Testing is hard! Writing good test cases can be as hard as writing the code itself. If your tests are inane, then you're going to catch the easy bugs and miss all the hard ones.
And when on Earth do you get clear and detailed instructions on what is expected? At least in my current job, I feel like half of what I do is turn vague expectations into crisp technical requirements. If part of the assignment is for you to write a function, I can't include test cases for you because I don't know what type signature you're going to pick for the function. This isn't an inane detail. In some ways the signature of the function is more important than the implementation: the implementation is local to the function, but the signature is going to effect the structure of all of the code that uses it.
Should have been clearer They should have tests to cover their code (not the code I'm going to right).. This cuts down on me adding testing libs needed, any setup, and laying down a pattern for their expectations(wrt tests). With expectation dev would add tests to cover their code.
> And when on Earth do you get clear and detailed instructions on what is expected?
On the job, I have easy access to the information/easy access to the people with the information. Not to mention personal relationships with the people I need to query.
My usage of 'inane' refers to things that a dev on the job won't be doing 99.9% of the time. Things that take effort & thought to setup(initial project setup) but don't really give any insight into whether a dev can write & architect code well. All the things a company already has in place.
I did do two coding exercises, though. In one case, the exercise was very fun, and I was able to use it as an excuse to work in a language that I didn't work often in. In another case, I really believed in the company, but I would only do something that took about 1-2 hours.
I'm a qualified accountant, and have, during an on-site interview, been asked to update a company cap table based on some information about additional fundraising and employee grant transactions.
> before being allowed to have an actual conversation with a peer about the role?
It was a great screen for them and something to talk about durning the interview.
That said you still do need to do some coding during the interview though. We've had enough candidates bring in professional interviewers to solve the coding portion of our remote interviews that there is no way we would trust that the candidate actually solved the homework themselves. We no longer allow any remote interviews due this alone.
As an employee, I see it the opposite way. If a company is offloading interviewing costs onto interviewees in this way, then I am competing as a commodity and the overall offer is unlikely to be good. A company with this sort of process can afford to test everyone and pick up the 0.1% of folks who are geniuses that don't know that they're worth $150k+ at a salary of $60k/yr.
If I'm not imposing costs proportional to what I'm expending, I'm unnecessarily weakening my negotiating position and setting up the wrong incentives. This is why it's a good idea to get your customer service complaint resolved through tying up a phone agent, making a complaint on twitter, or generating a paper trail that concerns the "no regulatory incidents" department.
I've happily spent weeks on unpaid open source projects and I complain about it. Mostly because homework requires no effort or investment on the company's part and it's too easy to hand it out to everybody and then toss candidates' hard work away after it's submitted because they don't like your name or something.
These days I mostly ignore homework requests and point companies to my GitHub profile. I haven't lost any good jobs that way. Companies that erect hoops that make it clear that their time is massively more valuable than yours before you're hired are going to treat you the same way once you're hired.
I disagree that homework is necessarily more realistic. IME all homework assignments have been the same kind of garbage asked by whiteboard happy companies - how to reverse a binary tree, etc. Pointless crap that has no relationship to 99% of real jobs in tech.
When I was running interviews I organized a 1 hour test during interview that was as realistic to the job in question as I could make it. I truly don't see why that isn't the standard.
When my last gig got over I went through 10 places over a month and a week to find my next place. If homework was always only 2 hours each time that would be half a work week. The last homework I had to do actually needed some environment setup, but things had changed in some library etc. and I went through nearly 2 hours to setup environment I needed for the assignment. The homework was timed, I had 24 hours to complete from time it was sent. Somebody was sick that weekend and as a consequence I did not finish the assignment.
Supposedly applying for a job should take some hours to tailor make your resume, your cover letter and so forth, then some time to travel to interview and now extra hours to do homework. As far as might get me a great job it's been my experience that what it gets me is a job where people value getting things done but also having fun while doing it, with some foosball games and other perks littered about an open office all seemingly decorated by the same team working globally. There will of course be opportunities to determine the technical direction of projects and perhaps the company as a whole! etc. etc. Perhaps I am fortunate that all my jobs are great, but on the other hand if that is the case I am more likely to go for the job at the place that doesn't make me do the extra hours as opposed to the one that does.
on edit: of course people do complain about having sex infrequently but it is the infrequently they complain about, not the having.
What if a large group of developers banded together and said "We'll only interview with companies that offer us a range of choices on the interview process, because we want to be able to choose option(s) that suit our strengths. We do this because not only because we want to put our best selves forward but also because this helps nudge companies to explore the space of various interviewing methods, which ultimately makes the companies better off as well because they get better long-term matches."
I think it is better for everyone this way. It is more accurate, it is less pressure and less demanding on the candidate, and it doesn't require an engineer sitting there asking intro-CS questions to a stranger instead of working.
e.g. If my thousand lines of code are being weighed objectively and fairly against a thousand other applicants' code, so be it. If they get bored of reading and pick one near the top that isn't terrible, that's bullshit. And if mine is the top entry, I'd better not get passed over because someone didn't like the color of my tie.
(Experience bears this out, though I didn't find out until much later into my tenure)
I think of jobs more in terms of relationships -- if we don't mesh, if we don't get on, then neither party will get value from the relationship and it's better to find out sooner than later.
P.S. I really suck at writing on whiteboards, it feels like my handwriting transforms into one of an 8 year old.
Speaking from experience, shooting 1~2 very detailed hypothetical situations (i.e. 'homework') to a candidate 1 hour prior to their interview and asking them to think of responses to a few 'hard questions' that they will be asked to 1) answer and 2) explain their reasoning during the interview tends to work well. This usually reduces candidate anxiety, helps the evaluating committee get a better look at the candidate's approach to problem solving and validates (or not) their previous experiences, and improves the flow and time management of interview itself.
Note: I'm a senior recruitment manager within the corporate HR Team of a Korean Engineering & Construction firm
Given a choice of spending 2-3 hours on a take home assignment vs. 1 hour of writing code on a whiteboard in front of 3 or more developers, I'd choose the former any day. It's not even close.
The author is taking one end of the spectrum and painting it as an endemic problem. It's not that.
edit: my strong preference for homework vs whiteboarding is because that's how I've solved problems and accomplished tasks for years. Whiteboarding to "see how I think" is not at all how I would think if I were work for them.
Someone nailed it finally
I would especially like to call out Uber on that as a couple of years ago they wanted me to write some local public transportation service endpoint integrated with Google maps in order to get to the onsite interview. Told them I don't have time for that with my full time job and they just shrugged and were like 'ok, no worries, we look forward to seeing you on X'. So I guess it was also a sucker elimination round.
You can look at the test process in terms of game theory where one player deals with several players who are not all equally qualified and have incentive to get the prize. So the adversarial mechanics will eventually ensue and folks will try to "game" the system. If you invent whiteboarding as defence, folks will try to invent leetcode as counter measure. If you invent homework as defence, you can bet sites pop all over that allows you to search problem and frameworks and download the common solutions with a click.
Sounds like a lucrative business, especially if you can introduce enough variety into the downloaded code to prevent detection by a system like the anti-plagiarizing systems colleges use.
As long as the interviewer isn't a stickler for correct syntax when I'm writing stuff on the whiteboard.
If demand were truly inelastic (what a "shortage" would imply) then rates/salaries would be rising and the on-boarding processes would streamline.
Their behavior appears to telegraph that there is no actual shortage.
Although from personal experience, I've been rejected from several companies and gotten more than one amazing offers at the same time (i.e. in the same "I want a new job" career cycle). So maybe the categories aren't that clear cut.
What this translates into industry is that managers and companies continuously grind through candidates in an attempt to find 10x rockstar ninja cliches, rather than finding diamonds in the rough and trying to just train people.
Of course, there are going to people who are worse than that level of quality. Maybe there should be some sort of guidance for them, that even if they fail interviews, they should at least get feedback as to how they can improve themselves, instead of being stuck in bad interview death spirals.
That means they're easy to push around.
Some of us do and some of us don't find it all that terrible. I've declined interviews with homework and told the company I didn't think their interview process was reasonable. Companies are looking for leaders in addition to code monkeys - having a stance on what's reasonable that you can support and explain in a professional manner might lose you a few job opportunities, but it might also win you some respect and serve as a signal that you're mature enough to evaluate the landscape and make judgement calls about what actually is reasonable, which is something managers (people leaders) and architects (technical leaders) do on a day to day basis.
On the other hand, I find whiteboarding to be fairly reasonable for most candidates. I recognize that are a few candidates with social anxiety problems who might only be able to perform ubder an alternate process but in these cases, I think it's reasonable for the candidate to ask and then for the company to accommodate.
Supply and demand in the job market is only one component of the bargaining power. Social norms and many other factors play in.
The field of Organizational Ecology [2] also can offer some metaphors about what is happening. Both herd behavior and organizational inertia are significant factors that explain how companies interview.
[1] https://en.wikipedia.org/wiki/Inequality_of_bargaining_power
Also, I think it's really a stretch to call it abusive. If you feel like the test is too much of a time commitment or you don't think the company is serious, you can just not do it you know?
Either way, you should reconsider your application.
I think for some candidates it really was a way to get hired when we wouldn't bothered to invite them for an interview (across the country).
I do think homework shouldn't be send out as a default by the recruiter. And the hiring party should make clear about the intention.
A homework should not be done on company product code, and it should be in some way standardized, i.e. we had a pool of 4 homework exercises that we send out depending on profile.
As a candidate I like these exercises if they are not too big. I have applied somewhere once and they asked me to read a 16 pages journal article within 4 days, to present. (It was not a job in academia but industry). In the end I think I was rejected because coming from a different field than the interviewer I emphasized the wrong aspects for him. They were not aware of some aspects I presented and would have expected from a candidate. So there is a danger in vetting candidates this way. Just because you have them time, they don't need to be a copy of you .
- We pay all candidates for the test project, whether they pass or fail. The original article did not mention paying for homework, which we concluded was the only fair way to treat the excess time candidates spend helping us make a decision.
- Passing the test project means you move on in the process; we don't knowingly pit two candidates against each other.
- The project and a corresponding scoring rubric are predefined by position.
"So please explain to me what you did to attract 121,498 applications for this job, the reasoning behind paying $500 to each & every applicant for the the time they spent interviewing, and why each applicant has a name like John Doe1, John Doe2, John DoeN, etc."
I'm OK, within reason, with these homework assignments if they come after some kind of initial screening where the company has shown at least the minimum level of interest.
However, as the very first step, it feels off to me.
I don't want to waste 1-4 hours for every job I apply to, especially when I'm not one of the final candidates. I'm often blown off for not being caucasian enough or liking whatever sportsball team or brand of music the rest of the crew is into. To often I feel I'm thrown into interviews because they need to interview 7-10 people. Same with interviews without phone screening, there are lots of questions I can ask that can save both me and the employer time and money by doing a phone screen first instead of driving to their place (mostly talking about 30+ minute or hour long drives). I've been burned too many times with things they forget to mention that make it a job not even worth my time (required 60hr work week, mandatory overtime, etc) things I can find out with a screening.
I think this is frankly ridiculous. What do you think the rest of the interview process is like? At best, it’s cargo culting. At worst, it’s abuse.
Edit: I should add that no guidance was given as to what the standards for “production code” in this phone screen were.
Read /r/cscareerquestions/ to get an idea of the levels of prep that many candidates go through. Not everyone needs that level of prep - especially if they're interviewing candidates at their current job. (No better way to see how not to fail by seeing endless failures)
People prepping 100+ hours for interviews at these big tech companies is completely common. After all, spending 100 hours to get 100k+ more comp is a pretty good tradeoff. It's just sad when you do all that prep but fail anyway.
Off topic/curious: Is the take home project expected to be honor system 'closed book/closed internet'?
While I'll admit that this is atypical, it seems like something a more nefarious company could abuse.
I think it was probably a good thing that he was declined, a company that would do that probably isn't a great place to work.
But generally, I agree. There are enough other ways to screen people for basic competency (20 min tech conversation, looking at StackOverflow profiles, etc.) that it seems unnecessary for anyone except junior developers.
The problem is that it typically doesn’t replace part of the interview. Incidentally, this is my criticism of TripleByte... pass their interview, and you skip to the onsite with a bunch of companies. But you still have to do the full dog and pony show with the client company, except the phone screens, and there’s a substantial time investment involved up front. You need to do a lot of onsites before you recoup that.
I'm biased, I suppose, because I loathe algorithm questions in interviews or whiteboard coding. Neither does a good job of letting me show you I'm not an idiot.
1. Supervisor had candidate sign mutual-NDA, work for hire at $X/hr rate & IP assignment agreement on docusign.
2. Potential future supervisor gave the candidate access to a repo and assigned a production task that should take less than 10 hours to complete.
3. Candidate does the assignment, communicates with supervisor via email/repo where necessary and a check gets cut for the hours worked.
4. Hire/No Hire decision made
Should take less than a week in total.
This would be a violation of the candidate's employment contract at many companies.
Developers are not slaves, and you cannot prevent them from doing outside work while looking for other jobs.
To cut the long story short: I would politely declined that model, even though I think it is sensible.
What about onsite interviews, do you have to tell your supervisor that is the reason you are taking off work? Would they be OK with that?
So I would not do take home exams that could appear to be consulting work etc. Of it appears to be a test, it is fine(r).
Note that this is tricky for open source work too, you are doing on the side. (At least in my legislation). Contributions that are closely related to my work topics I usually ask for a permit according to company policy. For completely unrelated stuff (writing that interpreter in prolog, etc.) I assume my employer is disinterested (they really are). I cannot assume that for contract work with another company.
Anyway, a judge, given a CONTRACT with another company that was not approved has the easiest case in front of them. This is the situation I want to avoid. I wouldn't bet on a judge to dive into the details on what stuff was coded in this situation.
You mention the on-site interview. This is easy. It is not a consulting or contracting gig. So I don't need to get a side-work permit, and they are treated as any of my other absences when I don't supply a reason.
I did one time formally ask (just to see what would happen) whether I could volunteer at the Red Cross, which demanded I sign a boilerplate intellectual property agreement saying anything I made as a volunteer belonged to them. The letter of my employment agreement was incompatible as all IP I made belonged to my employer. The question went all the way up to the corporate counsel, who presumably said "obviously a troublemaker wasting my time with this sh*t" and responded "NO".
I thought about writing the CEO because it was absurd you technically couldn't volunteer with the Red Cross, but of course, there were most likely lots of people who simply ignored the issue and/or ignore what they sign. There were certainly people in my division who appeared to be flagrantly violating the prohibition on an outside business while employed, but no doubt had the sense not to specifically ask permission.
By contrast, it's no one's business what I'm doing on my day off. And interviewing with other companies is almost certainly not a violation of my contract.
If they found out you could get in trouble, depending on the situation.
1) If a potential hire is willing to violate their current employment contract they'll be willing to violate any contract you have with them.
2) If a company is happy to trounce into a legal gray area because it's "unenforceable" it may indicate some ethical questions about their leadership.
If I spend time on your made up assignment, you owe me a detailed response that shows that you actually looked at my work and can critique it credibly.
Using homework as a first-pass screen in your interview process, unchecked, is definitely a smell that you're not using this tool appropriately.
However I use it in the process I've set up successfully as a way to give me something to code-review with a candidate when we do a final interview. It's a small, limited scope project. We give plenty of time to finish it. And the chances are good if you complete it we'll give you a final interview.
I find it helpful because I don't have to make assumptions about the candidates knowledge and skill level from a cold-start. I can ask them questions based on their code. How did you interpret this requirement? What trade-offs did you consider when you chose this data-structure? Etc. If their code shows an aptitude for computer science fundamentals I can ask them questions about algorithmic complexity in Big-O notation or I can scale it back and see if they understand the same concept using more descriptive means. Conducting an interview is hard if you don't have a starting point for a conversation.
For more experienced candidates with a history of open-source work do consider allowing them to present their own code in place of your standard homework assignment. It has the same effect and shows that you respect them enough to review their work. I think that's rather nice.
It seems obvious to me that if a company asks an applicant to do a homework project, then when the applicant submits the project, the evaluation and feedback (positive or negative) should happen automatically and quickly.
The homework was not bad in itself, but was a symptom of a larger problem. Namely, the company was unwilling to invest equal energy into the interviewing process as their candidates. So my first impression of the company was that it was full of brusque assholes that valued their time more than mine. It seemed patronizing.
This was certainly also possible without homework, as in the case of the companies that wanted me to disclose my salary expectations up front, without disclosing what they expected to pay the median candidate. They wanted to reject quickly, so they could reject more candidates, and finally get to the good one that they'd want to hire. As the article author might put it, don't use an evaluation tool as a screening tool.
It's as if you're scheduling a full-day interview but only being present for half of it.
And the thing is, especially if the opening is for a less senior position, observing the person while they are completing the assignment can help you get a much better measure of the person's skills, and can also prevent them having to toil for hours with no feedback about whether they're on the right track. If you're observing, the candidate might come up with a suboptimal solution, but with a few gentle nudges, they might correct course and prove themselves to be a very capable person. And you would have totally missed that if it were homework.
If given an assignment, it is very easy to have them explain after the fact.
On the other hand, I certainly understand that you must vet that candidates can actually produce quality software before extending an offer. I believe we can reach a reasonable understanding where I am compensated at my standard consulting rate of $150/hour for any project or homework you might have. This way, the process becomes fair with my time and it also gives you the possibility to thoroughly test my abilities by risking no more than a token amount.
Thank you, eagerly awaiting your response."
How are we supposed to hire anyone?
If your organization assigns me homework, I'm going to look very carefully at it to ascertain whether the filtering function it serves is meat-grinder'y or not. If it feels like a meat grinder, you won't even get an answer from me as to why I didn't complete it. There just won't be any further contact.
Looking at the profile of the blog post’s author, she went to a prestigious school, worked at prestigious companies, and wrote a book on whiteboard challenges.
It is clearly very heavily in this person’s favor that interviews stay focused on these criteria over actual performance.
Our homework ended up weeding out some impressive looking candidates in favor of people who were less impressive and good at interviews but better at getting things done.
My main problem with all of them is that I don't have a chance to talk to an interviewer real time to ask questions, express my thought process or go though the problem together. The time limit is usually harsh, once I needed 5 more extra minutes and the system shut down the test, zero points, but I had it coded 90% and the rest was in my head.
Test cases are revealed _after_ the code is submitted (or not even at all) which is the reverse of what happens in real life.
They are solving the wrong problem. Yes, hiring is broken, you made it better for employers, but not for candidates. I guess this is what we get for bashing the whiteboard interviewing for years, finally the disruption has arrived.
- Like giving ample time to the test and then deciding from the report if to approve or reject.
- Hidden test cases are to avoid hardcoded solutions. I think these cases don't map to unit tests, they serve a different purpose here.
If that's the case, it's another way to prove my point that these portals are bad. I would expect that the company checks the submitted solutions so there is little reason to write "if (x == 5) return 1" style code if that's what you meant by hardcoded solutions.
Without this, they wouldn't have received an offer.
While I get they said "which are not sufficiently interested in them." but it's still an interview process to see if we should/should not hire.
Opportunity cost, wise: the bottom of the barrel for pay is Day Labor, where I can make about $100/day after a 1-2 day wait list... putting the fair market price of the homework assignment at about $250. The hiring manager did Venmo me $100 for food, which was well appreciated... but unfortunately still didn't give me what I needed to do a good job on the homework. Not that it's directly productive work, but considering head fees are in the 5 figures, a little compensation to grease the gears doesn't seem like it'd hurt even in aggregate. Perhaps it'd incentivize the hiring company only giving homework to better screened candidates, as well.
Makes different points than ones in the article, which are the original reasons I opposed homework. But in addition to all that, it also blocks people without good living situations from the job (perhaps desirable for some reasons, calling it out).
And very little in IT fits that bill.
IT hiring processes are part of the reason I took a sabbatical in 2016. I didn't have time for all this homework plus networking and interviews all for finding a new job on top of a new baby and a stressful day job.
Of my four eventual job offers, yes four, so I was clearly in demand, only one even had homework, and it was a short online logic quiz, not even coding. Everything else was phone/in person interviews.
Screw your homework. If you really need it, this article has a good mitigation plan.
It's like the 'unlimited vacation' rubbish. Like yeah, people area actually afraid of taking vacations or they take too much and got terminated. It's best to know how many days you've actually earned and take what you have than playing those games.
Plus no actual way to verify who's doing the homework assignments anyway as opposed to a live interview however imperfect that is.
On top of that, some sketchier startup founders opened up that they're starting to abuse this to get tasks done for free. So as a candidate why'd you allow yourself for this?
Even with disclaimers like "limit yourself to x hours" or "this shouldn't take more than x hours", some candidates will still spend way more time than that on it.
Employers end up comparing assignments with 200%+ of the "expected" time spent versus people who actually adhered to the timebox. If you're someone who can only dedicate 3 hours in total, whether or not you're in the running might depend on how many other candidates can spend 10+ for perfection or going the extra mile.
I don't like asking for unpaid labor, but I also won't risk my team blowing hours interviewing someone who has no chance of being successful here.
I tend not to code in my off hours any more, because I have different interests now, that require the expenditure of leisure time to enjoy. If I do, it is to solve an immediate need or as a side-project to make money directly, rather than to maybe get another job in the future.
If you want my portfolio, I want to browse your defects database and code repository before we interview.
But I like the idea of homework because you don't need to find an excuse to take a day off from work, especially if you are interviewing at multiple companies.
That's unfortunate, because I strongly prefer the take-home approach over in-person whiteboard exercises. Recruiters are often sleazy, that's really the crux of the problem IMHO.
Personally, I've always had a portfolio free software projects to point them at for review before any in-person interactions take place. I think that's probably the best defense for candidates in this scenario.
The company I work at's primary screener is homework, and it takes us a ton of time and effort to grade homeworks, this argument does not make any sense.
https://adhocteam.us/2018/02/26/why-we-use-homework-to-recru...
That sounds crazy to me. Both from an employer and employee standpoint... If that's the case, it's a waste of time. Why have a test that almost everyone passes?
I've given homework like this before and our pass rate was about 40%.
In general, I'm in favor of any interview process that ensures the best people get the job. From what I've seen, homework assignments increase the likelihood the best person gets the job instead of the person who is best at interviewing. While it does take time on behalf of candidates, I'm not sure there is a better way.
In looking for an employer, I think I might like to filter out anyone who particularly dislikes or does not value homework and/or Fermi problems.
Qualify me a little, then a personal invitation for a test/homework can be considered.
But sometimes it seems like you send in a resumes and the response to a resume submission (even if a human looks at it) is to send you to a test.
To that, "no".
if you cannot work through asking someone detailed questions, to find out how they operate and solve problems, if you cannot formulate words to ask me the right questions... do i want to work for you???
Then I was ghosted afterwards. They weren't complicated. Simple Git/bash, and I did it in about 3-4 hours.
I won't do it again.
I love paid homework in the range of $300-$500 USD/ for a day or 2 of work.
I'm all against unpaid homework (f u pay me) - but paid home work is great.
What's not to like?