I was given an opportunity to apply for an internal Junior dev position within the company I am working at (they would not have considered me due to my degree otherwise)

I come from a non-CS/SoftEng degree (but related) thus no exposure to C++. I 'passed' the interview/written test through pseudocode and was granted the opportunity to do a take home test, which I managed to 'complete', albeit I did not interpret one of the requirements correctly which resulted in wrong algorithm. I believe my code was ok and I tried to implement many C++ features to show my understanding.

I was told I had potential but the difference in experience expectation was the main factor for rejection. I spent 2 days learning a lot of C++ to complete this, and hiring knows. Do I have a leg to stand on if I spend some more time to implement the correct algorithm or should I just accept this rejection? (I do not have a lot of free time to complete until later this week).


  • 4
    Your code may not be very bad, but all this company has to do is find just one person, who did better than you.
    – user8365
    Commented Aug 11, 2014 at 17:14
  • 1
    a "difference in experience expectation" sounds like they want a candidate with more in-field experience, not like you failed the test per se.
    – GOATNine
    Commented Sep 7, 2018 at 19:29
  • Accept it, wait a year and re-apply (an dspend the intervening year 1) asking yourself if that is the career that you really want, and 2) learnin C++ and coding hobby projects)
    – Mawg
    Commented Sep 9, 2018 at 8:03

3 Answers 3


I'm sorry to say, it sounds like you should accept this rejection.

When I set coding tests, it's because I want to see whether a candidate has a good enough working knowledge of a language. I want to see whether they understand the standards and pitfalls of the language. I want to see that I won't have to spend too much time teaching them the basics.

You spent 2 days learning C++.

Here's what I would do if I were you:

  • Check the job requirements before applying. If they specify you need to know C, Java, Python etc - consider whether the role is right for you.
  • If you're interested in a role which involves programming - find a reputable school near you and invest some time and money in learning to code.
  • Always ask for detailed feedback from a rejection - then act on it. Here, you've been told that you don't have enough experience. You don't. There's no argument you can make to give you more experience. Either apply for roles to which you're more suited, or spend more time improving.

A job rejection is usually final. Work on getting more experience and then apply again.

  • Thanks. The hiring manager knew my lack of syntax knowledge. In hindsight I was probably too much of a risk. Though, I did manage to learn a lot about C++ so at least I got something out of it! Commented Aug 11, 2014 at 14:42
  • 4
    @aqualight213 - Programming is more then just learning syntax. The syntax is the simplest part. Understanding how to implement something the correct way without creating avoidable bugs is what seperates experience programmers from novice programmers. One can be taught in a short amount of time ( days ) the other takes a great deal longer.
    – Donald
    Commented Aug 11, 2014 at 15:48

Do I have a leg to stand on if I spend some more time to implement the correct algorithm or should I just accept this rejection?

It probably doesn't make sense for you to resubmit the corrected algorithm.

The judgement appears to have already been made. It seems that your lack of experience was the main factor, rather than the incorrect algorithm, and that won't change overnight.

Instead, continue learning on your own. Gain more C++ experience. In another 6 months or so, apply for a position should one come open.

  • 1
    I will continue going through Stroustrup in my spare time. I would not have considered a programming position outside of this opportunity though it is a good skill set to have regardless of my tertiary background. Thank you. Commented Aug 11, 2014 at 14:43

I wouldn't bother. Though I would work to broaden your knowledge of internal systems if C++ is going to be the language you're tested on for an internal job posting.

It would be one thing if you had some coding error but picking the wrong algorithm to implement is a very big flag to a technical review. Algorithm selection, by and large should not depend on the language (though there are some cases where it could). If you knew what one you were supposed to pick, but implemented poorly from lack of depth in the language, well that's different than picking the wrong one altogether.

  • 1
    I don't think I understood the requirements. I think I would have sorted out the correct algorithm had I more time. Possibly just lack of experience with programming/architecture/syntax/libraries. Commented Aug 11, 2014 at 14:46

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .