5

I have received a technical task to do, and i did it 90% perfectly.

But for the very last step of the task, i was not able to implement the best solution (because of lack of skills). I have faced with a problem, and i know that, my current solution is not the best practice, but i still obtained the proper answer.

I would like to write a report, and explain my solution to the interviewer with more details.

Should i specify that i know, some part of my solution is not the best? By doing this, i just show, i am aware of my solution's defect, but it might reduces my chance to get hired.

  • 6
    Yes, you should. Any interviewer that does not recognize the merit of that works at a company you do not want to work for. – Roman Feb 3 at 15:40
  • @Roman that should be an answer, not a comment. – Jenny D Feb 3 at 16:05
8

Should i specify that i know, some part of my solution is not the best? By doing this, i just show, i am aware of my solution's defect, but it might reduces my chance to get hired.

I think it would increase your chances with any reasonable interviewer. If I were deciding between two candidates, both of whom had sub-optimal solutions, but one who attached a note similar to the following:

For task c, my initial approach was going to be to implement a quicksort based solution, but I'm afraid I was unable to get this working in the time available. I therefore used a bubblesort instead, and while that was trivial to complete I'm aware it's not up to par from an efficiency perspective.

...then I'd be much more impressed with the solution with that note attached. It doesn't just show an awareness that the code is sub-optimal, though that's of course a positive. It signals to me as an interviewer that the candidate would ordinarily have put in the time and effort to come up with the best solution, even if that involved asking for help, taking a bit more time, doing more research etc. - and that's incredibly valuable.

(Note of course entirely fictional - it could mention code quality rather than efficiency for instance.)

  • This is definitely the best way to handle a situation where the reason for not implementing the best possible solution is a time/resource constraint. The OP, however, mentions their lack of skill as the reason for not using the best practice. In that case, as an interviewer, I'd be curious why the candidate thinks that specific approach is considered best practice. When a candidate mentions something they're not skilled in as "best practice" I'd consider it not very informative at best. – Egor Feb 3 at 21:57
  • While I'm fully on board with this answer, as a consultant I've dealt with several recruiters who consider any form of self-doubt as a dealbreaker. I suspect this is more common in the "body shop consultancy" field compared to general developer employee hiring. If you're dealing with an almost factory-like approach to being interviewed, it may be better to tick the boxes without raising need for (unfounded) suspicions. These companies are much more comfortable with someone who confidently claims they can get it done as opposed to revealing that they are not perfect. – Flater Feb 4 at 12:10
3

Absolutely. Assuming you were not given step by step instructions on how to complete the task, any reasonable inverview should expect that there are many different ways to solve a problem, and while that 10% may not be the best practice solution, it does get the job done.

You need to be prepared to explain why you went the way you did, and the tradeoffs of using your solution, as opposed to the best practice. Any decent employer is looking for someone who can get the job done, not someone who spends their time chasing perfection (hint: they won't ever find it).

As @Roman mentioned, if this 10% is the reason they don't hire you, you're better off.

Your Answer

By clicking "Post Your Answer", you acknowledge that you have read our updated terms of service, privacy policy and cookie policy, and that your continued use of the website is subject to these policies.

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