We came to the conclusion that what we are asking should be fun for you to do. Something you might even do without us asking.
Also, it shouldn't take you more than a few joyful hours. If it does, you probably aren't the person we're looking for.
We gave the task to a couple of trusted folks beforehand, people who we would love to hire if they weren't already doing something they loved, and they said that the tasks were pretty straightforward and quick to do.
We already tried doing it the other way around, and we realized that it just didn't work. The guy that turned out to be the best was the one we almost rejected because he had a bad resume and cover letter.
We don't want to make that mistake again.
If you think it is too much to ask, well, I guess you just don't apply. <shrug>
This response seems to me thoughtless, cliche-ridden, and inordinately smug--rockstaresque even.
That "I guess you just don't apply" really doesn't seem to be the product of the thinking you claim to have put into this. Obviously there are people who might apply even if they think it's too much to ask on spec. Obviously there are people who might apply even if they are motivated by something other than mere fun. Obviously there are people who might apply even if it takes them a lot more than "a few joyful hours." Saying such people probably aren't the ones you're looking for is beside the point--beside the ethical point--except insofar as it's a pretty clearcut instance of your shirking all responsibility (it's all their fault if they underestimate their chances, or ignore the injunction to do it for fun) with the kind of callous indifference to the work and time of others captured neatly in your closing shrug.
Tl;dr? That wouldn't surprise me.
No, I read the whole thing.
> Obviously there are people who might apply even if they think it's too much to ask on spec.
First off, I don't think you know what spec work means. It means asking someone to do work and then paying them for that work if you like it. That is not what we are doing. We are asking applicants to implement things that will be of no use to us, because we already have them, as a demonstration of both skill and determination.
> except insofar as it's a pretty clearcut instance of your shirking all responsibility
What responsibility am I shirking? If you want the job, then you do the thing. If you aren't confident enough in yourself, then so be it. It isn't my job or responsibility to be your mom and encourage you to apply and tell you that you are good enough and you should go for it! You should know that already.
> with the kind of callous indifference to the work and time of others captured neatly in your closing shrug.
As I said, if you are doing the task, you are doing it because you enjoy it and maybe you can use it as a learning experience or on your portfolio. It isn't a callous indifference to work -- we're asking you to do different work. Instead of a resume and cover letter, we're asking you to program.
>What responsibility am I shirking? If you want the job, then you do the thing.
Was "shirking" too severe? You disclaim, patently and unapologetically, responsibility for the effort that will be put into applying for the position by applicants who will not get the job.
You disclaim that responsibility by saying in effect "it will be fun, and if it ain't fun, don't do it, and if you do it and don't get the job it might be good for your portfolio, or good experience."
Your choice here was between devising an application procedure that actively and consciously tries to minimize the futile endeavors of most applicants or devising one that does not but instead leaves the responsibility for that minimization entirely up to applicants themselves.
You seem to like the second choice, suggesting it really is not at all your responsibility; it's all on the shoulders of the applicant. You're not (the applicant will be distressed to hear) his mom.
Yet elsewhere you seem to want at least a little to acknowledge that there is something to be said, at least publicly, for taking the first choice: You wondered whether you were asking too much. You advised applicants only to do it if it's fun and so on. It seems to me that that's an example of trying not to be callously indifferent to the work of others.
I was merely trying to point out that that's not good enough. It should be obvious, I think, that this, your, strategy for minimizing wasted effort on the part of applicants is not going to work.
The alternative strategy of many employers is to impose the more effortful parts of the application procedure only late in the process and only on applicants they are already interested in. They do this even though it's more time-consuming for them. They take that responsibility. You don't, and shrug.
But let me do you the honor of citing you again: "so be it." I'm certain you have no reason to worry about this. I'm sure Reddit will get its rockstars and continue to rock.
And if you ever want a lesson in supercilious condescension (the "I'm not your mom" stuff is embarrassingly amateurish), look me up. I take payment in advance.
P.s. I didn't use the phrase "spec work" and if I had I wouldn't have used it to mean, in accordance with your bizarre and presumptuously corrective definition, "asking someone to do work and then paying them etc..." Clearly that's nonsense. Spec work is the work, not the asking. I did use "on spec", and used it as a standard modifier to qualify the meaning of "work" as work which is done speculatively in hope or expectation of gain. In this (hardly broad) sense you are asking applicants to do work on spec. Joyfully.
You weren't kidding, thats for sure. Though I do agree with gist of your response.
For me personally, portfolio would be the first filter. I would only engage people that I felt's portfolio reflected the qualities that I was looking for. If they don't have a portfolio then sure, they have to build something anyway just to prove that they can build something but that is a limited subset most that would be applying will have previous work that can be submitted.
As well I don't see how a few hours could provide anything beyond a very amateur quality mock-up. Sure a few hours and some jQuery UI elements could make something pretty, but I am assuming that you are looking for a little more depth than someone that can just throw some jQuery UI widgets on a page.
For me, I would be looking for someone that has deep dynamic language understanding, a deep understanding of event based programming and how events can be used to decouple UI elements and how that can create elements that can be dropped into a UI framework and auto wire itself up to data events. Someone that understands promises and it's relationship to asynchronous callback based programming constructs. I personally would be embarrassed to submit something that only had a few hours effort in it, because it most assuredly not going to cover all of those core aspects and the ones that are covered are not going to be fleshed out in a detailed level that one should be using to exemplify the state of their skill.
I wish you luck (i mean that with all sincerity), and I do hope the people that chose to engage in your interview do truly enjoy it. For me, it crosses to many personal boundaries to be comfortable with employing such recruiting tactics.
I would like to ask that you come back and give us a postmortem on how the exercise went and ask that any HN'rs that participate contribute to that conversation. I am generally interested in the outcome and the perception of the participants.
Which is preferable for the programmer, too, since the up-front, likely 'wasted' time is spent doing something enjoyable. The investment in writing a cover letter only comes after.
You still let the main assumption stand - i.e. looking for and hiring people who is ok with wasting of their productive time.
... And something that you guys just so happen to benefit from. I understand what you're saying, but it still smacks of exploitation in my opinion.
Regardless, most real "rock star programmers" (as much as I hate the term) aren't going to be blowing a day or two on spec work.
First, it's not exploitation. It can't be. It could only be exploitation if reddit were somehow planning to benefit from their implementations--e.g., if it would actually deploy one in production.
Second, I think you're making a false assumption that "young individual with wonder-lust" putting in "significant hours" on a task like this is time wasted. I've spent far more time writing IRC bots just for the fun of it, but was that time wasted? Of course not. I learned new skills, gained new knowledge, and was able to approach the real world of software development with the confidence of having actually implemented my own project end-to-end.
Though I think the two projects differ substantially in their difficulty, either project would benefit implementor in itself even apart from any prospects of getting hired.
Did you miss the part where they're using this as a recruiting screen?
Obviously I know they're using it as a recruiting screen. It's completely appropriate for them to do so.
The point is that having a ready-made recruiting screen is benefiting from the implementations.
> Well, first off, it's supposed to be fun. If you don't see the joy in either of these puzzles, please don't apply.
If you don't consider implementing something like tgrep fun, you're in the wrong line of work. I've actually thought of something like that before, for my own logs, but never gotten around to trying it out. They want people who consider what we do fun -- if you don't, they don't want you.
This is a silly statement to make, and honestly I'm tired of seeing this sentiment repeated.
Different people find different things fun. A big part of the fun in implementing some random project is yourself identifying the problem and coming up with a possible solution. Just trudging through someone else's spec is missing the fun aspect of problem solving.
Furthermore, for me at least, there is a tradeoff to when a project loses it's "fun" and just becomes grunt work. When there's a large creative aspect to it, that makes it fun. When the problem is fairly well-defined with an obvious solution but just needs to be fleshed out, that leans towards tedium.
For someone to assume that anyone that doesn't find their exact types of problems fun is in the "wrong line of work" is being a presumptuous prick.
If you want me to implement your spec that takes more than 15 minutes or so, then a) you are a great non-profit for a cause I care about, or b) you have to pay up.
But it's true, I'm not who they're looking for, and I don't want to work for reddit. I'm sure plenty of 21-year-old reddit fan(boy|girl)s will leap at the chance, and good for them.
My time is too important to me to waste on entering a competition for a job, so I am clearly not who they are looking for.
I was recently asked to write a simple CRUD page for contacts (name, address, etc) as a pre-interview test and that's well within the above.
You have to keep in mind that people can't apply for many jobs if they are all doing that, though. You're going to severely limit the number of applicants you get. It'll limit it to only people who really want to work there, but also to people who have enough free time to throw away to do the interview.
When you're in a position of power, either because jobs are rare or yours are uniquely appealing it's very easy to fall in to this mode, but that doesn't make it right. Especially in a case like this where you'd expect a high number of applications you're likely to dismiss out of hand (ie, sorry, no high school students) - at the very minimum you should be willing to do that first screening before you request anything needing a time investment.
To be quite honest I would look at some half implemented Reddit mock-up as a half implemented amateur example of someones work. I want to see fully working apps that a developer can explain to me what portions they built and why features where built.
To be honest I would be embarrassed to use a few hour throw together as an example of my work. When I have far better examples of applications that are professional and complete.
My intent is not to be arrogant about the matter but the reality is there are very few professions where asking someone to work for free to get a portfolio piece would be met with a straight face.
Lawyers do pro-bono to help the downtrodden doctors do research work to advance the state of the art but nether do routine work to get a portfolio piece. So unless you are asking someone to do state of the art groundbreaking research work or it is charity (open source) to ask someone to do it for portfolio work is akin to asking a lawyer to take your DUI case or a doctor to fix your problem to get some portfolio work.
Just how exciting is "standard benefits" to anyone here?
leaves the impression that the company is just looking for cheap young talent,
if you get hired and start to ask for more salary - they will hire new young talented people
Edit: typos
Now as a person that hires and specifically hires technical personally and is technical himself, I am sensitive to the fact that it takes a trained eye to spot talent and that their are a lot of posers out there. But in my personal opinion you guys are offloading the task of being good at spotting talent onto the prospective employee which I am not totally in agreement with.
Personally, I would not ask an up front prospect to code anything other than a 10-15 minute exercise (in interview) and if I where to have someone build something, it would be the final 3 prospects, it would be a real business problem, and I would compensate them for their time. I think the practice of competitions for a job borders to close to exploitation for my comfort, further I have seen better talent selection from a skilled interviewer than I ever have from an arbitrary competition.