I just wanted to check something and hear a second opinion:

I am currently in the recruitment process of a big company. I have more than 8 years of experience with software and have been working in important companies, even abroad.

I had five (Yes, 5) interviews: with HR, a technical test (2 hours programming), a technical interview and a couple more.

I am in the final one now, which consists in writing a program. I spent more than 25 hours on this program and even that I am far to finishing it; it´s massive.

The question is: Do you consider "rude" if I tell them I am not going to finish the program?

(I think 2000 lines of code can help at least a little to know how does a person write software)

  • 9
    If you are sure this so-called test does require over 25 hours of effort, I would wonder if they are using you as a free code monkey. – Masked Man Sep 10 '16 at 18:53
  • 2
    That aside, it is not clear to me what your issue is here. It happens all the time that people do not know the complete solution to an interview question, and say so without hesitation to the interviewer. What makes you consider this could be rude? – Masked Man Sep 10 '16 at 18:55
  • 2
    Barely normal? It's not normal, but why does that matter? I can't tell what practical problem you're trying to solve. What constitutes a win for you in this scenario? Being hired? Gracefully bowing out? Staying in the running without spending further time on this project? – Lilienthal Sep 10 '16 at 19:46
  • 2
    Maybe they are not testing your programming skills anymore, but rather your persistence, or your reactions and behaviour towards unreasonable requests. "How long will he try before he quits?" is an important question for a recruiting company. – daraos Sep 10 '16 at 20:44
  • 4
    You might want to check whether that problem ,should take that many hours. You may be discovering that you don't have knowledge that they think you should have. – keshlam Sep 10 '16 at 21:04

No, spending over 25 hours on a programming exercise is not normal.

However, are you sure you've understood the requirements and are tackling it in the right way? My previous company used take-home exercises in its interview process, and this was a regular anti-pattern (and a sure way to fail). I suggest you get in touch with the interviewer to confirm, this is a far smaller sin. (Best of all would have been to scope it out when you received it, but too late for that now.)


No, I don't consider it rude to tell them you won't finish it. It was incredibly rude of them to ask you to do that much work without payment.


That definitely sounds odd. In my opinion, an appropriate amount of time for a take-home interview problem is 1-8 hours and a few hundred lines of code at most. I see two broad possibilities here:

  1. This company is asking for something far too sophisticated to be used as an interview problem. Does it seem like something that might be used in production? Is there a spec for it longer than a few paragraphs? Does it interact with multiple external systems? What exactly is it that makes it so complex? Was it not clear to you as soon as you got the project that it was roughly this level of complexity? If any of this is the case, you are well within your rights to give them what you have and tell them that you won't put any more work into this problem as an interview problem. I wouldn't worry about rudeness on your part as it's very rude of them to be using candidates to do production development work, and you probably don't want to work for a company that would do that.

  2. You have misinterpreted something about the assignment and are doing something far more complex than what the company intended. Maybe you missed an easy way to do something, or fully implemented something that they expected to be left as a mock or black box, or something like that. If you suspect this might be the case, you should stop working on it and have a discussion with your contact at the company. Tell them about how much time you have spent and what approach you have taken to the parts of the problem, and see if this along the lines of what they expected you to do, or if there was some miscommunication about some aspect of the assignment.

  • First of all many thanks for your good answer. If I had to bet, I will definitely bet for the first option. We are talking about a software with a spec of 6 pages, that comunicates with external system, persist data on DB, requires Jasmine precise tests... – stack man Sep 11 '16 at 11:49

Asking you to spend 25 hours on a programming test is reasonable if (a) this is to pick the right one from two or three final candidates, and (b) the company pays you for the time. Also, all the conditions of the job (for example pay, benefits and so on) should be clearly agreed at that time, because spending 3 working days on a paid test would be ridiculous if you then don't agree on the salary.

Now I can't see many companies paying you for a three day programming test. Well, in that case the three day test is not reasonable. There will always be a probation period when you get employed, so if there is a problem with your skills, it can be sorted.

  • I can´t agree more with your answer. The "funny" thing is that we only know the salary range, not the salary itself, as long as nothing has been negotiated. – stack man Sep 11 '16 at 15:13

Not the answer you're looking for? Browse other questions tagged or ask your own question.