I'm applying for jobs and had to take a online test which was on sql. I did not know the subject of the test ahead of time (although sql was hinted in the job description) and although i had sql on my resume, I didnt touch it since I graduated from college and did horribly. Would it be reasonable to email the hr and ask for a retake after I had some time to prepare?

  • 43
    @MechMK1 Any normal human being would take some time to remember things they haven't thought about in a while, and possibly need some reminders. Expecting candidates to be able to answer basic questions about anything on their resume during an interview is reasonable, expecting them to be able to pass a test on that topic without preparation is not. Although it being on the job description should tell you to prepare. Commented Feb 20, 2020 at 12:24
  • I know SQL, C#, JavaScript and Python... but I'm an Expert in C# and SQL and Novice with JavaScript and only know Python in passing. Does your resume reflect these concepts (as mentioned by others)? I "know" python but not really...
    – WernerCD
    Commented Feb 20, 2020 at 15:23
  • 1
    @Cypher that's exactly what this question is asking about doing.
    – Alex M
    Commented Feb 20, 2020 at 17:26
  • 1
    @AlexM Sort of, but there is a small difference between applying again from the start sometime in the future (fill out application, send resume, and go through the whole process from the start), and just re-taking the test (so not filling out a new application, and not sending a new resume, etc). The difference (aside from time) is that re-applying does not require permission, but the other does. Hope that clarifies.
    – Cypher
    Commented Feb 21, 2020 at 0:55
  • @Cypher That makes sense, I do see the distinction.
    – Alex M
    Commented Feb 21, 2020 at 19:44

12 Answers 12


I suggest you take this as a learning experience and not beg for a re-take.

What technologies they have listed on the job posting are things they could potentially ask about in the test. You should have prepared in advance.

I highly doubt this opportunity is going to go anywhere even if you do re-take the test as first impressions are usually key.

  • 1
    Another learning: clarify as good as you can upfront what the interview will be like. Many companies will openly tell you whether it will just be a nice talk or some sort of test. If it is some sort of test, better come as prepared as you can be wrt the job description / what you advertise on your resume. (feel free to ake any of that over into your question if you feel it enhances it, or not if you don't^^) Commented Feb 20, 2020 at 19:20
  • I think it's also worth adding that if this is a dream company opportunity, it is possible to reapply to the same company 6 months or a year from now with the benefit of additional experience. Totally agree that there is 0% chance of success for immediately reapplying though. Commented Feb 22, 2020 at 0:28
  • @FrankHopkins - Yes, they should have asked what the application process was going to involve up-front. And if they tell you there's a test, there is nothing wrong with asking politely what the test is about. They might not tell you, or they might be vague, but there is nothing wrong with asking. Commented Feb 24, 2020 at 16:34


The point of such tests is to determine if you know the subject matter well and therefore would make a good candidate for the job. "Cramming" to pass the test is nearly as bad as not passing the test - they're not looking for "I managed to pass the test" they are looking for a knowledgeable professional. There's limited ways to do that other than taking a candidate's word for it - tests, takehome projects, whiteboard coding... All designed to see if you will be successful in the role based on the skills needed, not as ends unto themselves.

A request for a re-take, for reasons other than "I was really sick and whacked out of my mind on barbituates," will cause you to be looked at even more negatively. Wait and apply for the next similar position that you are confident you qualify for and (ideally) pass the test/interview/project.

  • 8
    "they're not looking for "passing the test" they are looking for a knowledgeable professional" Pretty much disproven by the fact that their screening mechanism is a thorough practical exam that's administered without advance notification, no?
    – Alex M
    Commented Feb 20, 2020 at 17:30
  • 4
    they're not looking for "passing the test" if that were true then failing the test wouldn't disqualify the candidate but that's clearly what happened here.
    – TheBatman
    Commented Feb 20, 2020 at 18:43
  • 17
    @TheBatman the point is likely that "passing the test" is not a sufficient criteria and in particular passing by force (e.g. retaking until you pass) is not gonna help at all, because they don't look for how good you can be if you know the topic and type of test but how good your general level is. (And yes, being able to get up to speed is also a valuable trait, but not the one they are looking for with the test). Commented Feb 20, 2020 at 19:24
  • 19
    Don't be deliberately dense. They are looking for someone that knows SQL. How do you want them to verify a candidate knows SQL? Beyond 'taking their word for it', there's a limited set of options all of which people whine about (tests, takehome projects, whiteboard coding...). Interviews aren't done to find people who ace interviews, they are done to find people who will be good at the job, but there's only so many ways to validate that in a limited amount of time.
    – mxyzplk
    Commented Feb 20, 2020 at 21:18
  • 4
    @mxyzplk-SEstopbeingevil I used to give trick tests to see how well people really knew C++, I worked at Bloomberg where we gave 45 minute tests with someone on the phone with you. None of these "ambush" tests are good indicators of ability. If you want to know how good someone can be. Give them a little project that utilizes those skills you want to know if they have. If you don't pass their "test" you don't ever get a chance to show them what you could be. They want trick ponies, let 'em hire trick ponies. Go find a company without ambush tests.
    – boatcoder
    Commented Feb 21, 2020 at 15:39

Would it be reasonable to email the hr and ask for a retake after I had some time to prepare?

It's not unreasonable.

It's also perfectly possible that the HR decides not to let you retake the test.

As such, I suggest you also consider looking for other job options while you wait for their answer. Learn from this, and next time try to prepare if you see hints of topics that may come in the evaluation.

  • 38
    I would also add that if you need time to prepare for a test on a skill, it probably has no place to be on your cv.
    – Aida Paul
    Commented Feb 19, 2020 at 23:23
  • 3
    @TymoteuszPaul Harsh, but also not an unreasonable take.
    – corsiKa
    Commented Feb 19, 2020 at 23:24
  • 1
    @TymoteuszPaul you are quite right
    – DarkCygnus
    Commented Feb 19, 2020 at 23:39
  • 2
    @TymoteuszPaul depends on the test, make up of your CV and such. You can differentiate between basic knowledge and expert level knowledge and the same can be true of what tests look for. Both need not necessarily match. I'd put it the other way around: "If you put something on your CV, expect people to ask you about and assume you know it in detail. If you don't, make that clear on the CV." Commented Feb 20, 2020 at 19:28

No, that would defeat the point of the test.

The point of these tests isn't to evaluate your level of skill in a programming language. The point of these tests is to cheaply provide the HR department with a metric with which they can use to justify tossing your resume in the bin. They've got hundreds of applications for each job, and they need something that can cut that number down to something more reasonable without costing them a lot of employee man-hours and thus money.

Job applications are a numbers game; rather than getting hung up on failures, just keep spamming your resume to employers in response to their job openings and eventually you'll hopefully get lucky and get a job.

  • 8
    … And take a moment to run through your CV, and brush up on most of the skills you list there. Commented Feb 20, 2020 at 16:23

Just ask.

If you want to work there, ask.

The answer will go one of two ways:

They'll say yes, you'll retake the test, and get another shot.

They'll say no, and you'll probably never talk to them again.

It's not a strange thing to really want to work somewhere, or to believe in yourself, so it's not likely anyone would hold that against you in a way that might damage your reputation externally to that interaction.


Yes, if…

For the sake of balancing other answers, I would highlight in which circumstances it would be OK to ask for a re-take (and detail a bit more Dukeling's comment).
Indeed, I think it's alright to have your SQL skills a bit "rusted" and been caught off-guard if you didn't prepare for it. I feel comfortable listing skills on my CV that I don't, right now, remember on the tip of my fingers but that I could retrieve within a few hours/days refreshing. (It seems reasonable to be proactive about the refresher if it's listed on the job description, though.)

So I think that asking for a retake is acceptable if you can justify you have been caught off-guard.
This is the case for an in-person interview where you can't really say: “Let me go through this tutorial quickly so I remember how it works, and I'll answer you” — wasn't your case, though. The other situation is a time-limited online questionnaire; where, similarly, you don't have time to browse documentation.

However, if you'd been given couple days to answer an off-line exercise, I wouldn't bother, because in such case you have had time to get up to speed and successfully complete the challenge.

In any case, remember that arguing you have been caught off-guard when SQL was listed in the “required skills” of the job description doesn't show you in a strong position I am afraid.


although i had sql on my resume, I didnt touch it since I graduated from college

Perhaps you should update that in your resume that you took college courses in SQL. Don't list it as a "skill."

Would it be reasonable to email the hr and ask for a retake after I had some time to prepare?

It doesn't hurt to do a follow up email and explain SQL is not your strong suit. It's unclear what position you applied but given they are testing your SQL, it's a sure bet the position may be heavily invested in SQL and as such may pass on your current skill level. I'd say you have a 0% chance of going forward with a re-take on the test but at least you can follow up with a simple thank you and explaining sql is not your strong suit.

However, it's not uncommon for programming position to want SQL. At the very least you'd be writing procedures and queries. It's a good idea to invest time into this area if it is not your best. You're probably not expected to know db admin but at least you should be able to write queries and procedures to get back data set and know how to parse that data set into meaningful tables or rows in the programming lanuage.

  • The problem with resumes is the uneducated gate keepers that require you to play bingo. Whoever solves that one is going to make a lot of money, but as long as you have to play bingo and ambush testing, this kind of crap is going to keep on keeping on.
    – boatcoder
    Commented Feb 21, 2020 at 15:41

Do it!

Enlightened organisations, their HR and hiring managers included, will rightfully see you coming back to try again as a very positive signal.

It's impressive when a person has the tenacity and the willingness to put their ego aside to not be perturbed by initial failure, learn what's required to succeed and confidently try again. Indeed, those characteristics are exactly the ones you'll need to excel in any technical role.

Yes, it's possible they're the type of organisation that take a more cynical view or have rigid process that obliges them to refuse, but if they do it doesn't matter, you wasted no effort by asking and there's no downside for them either. You miss 100% of the shots you don't take!


As a hiring manager, I wouldn't consider you for a hire even if you passed on second try with 100%. When a skill is requested, the assumption is that you have the skill ready, to an advanced level (not necessarily perfect), not that you are 'able to refresh or learn it'.
Consider they would have asked for 'english speaker', and you fail and say 'well if I would have known I would have refreshed my english'.

  • Most of the time, the list of skills in job posting is of very little value. I literally laughed out loud when I read the bit about "the assumption is that you have the skill ready, to an advanced level" - that's not at all true for job posts in the United States. Commented Feb 23, 2020 at 0:53

I'll give a reason not to ask for a retake in your situation. You say you feel you were caught out. I haven't read the job advert but as I see it there are two possibilities. Either you misunderstood it, or the advert was misleading about what the job entails. In the former case, that happens, it's not the job for you, move on. In the latter case, do you really want to work for a company that advertises a job as doing X and it turns out to be 90% doing Y?

  • 1
    "In the latter case, do you really want to work for a company that advertises a job as doing X and it turns out to be 90% doing Y" - that happens all day, every day, at virtually every company. Commented Feb 23, 2020 at 0:54

Don't ask for a retake.

It's one thing to fail a test. This happens to everybody.

But failing to accept that you failed would make you look childish.

Failing at exams happens even to the best. You could be perfectly prepared and fail because of a headache or stress with your girlfriend/ boyfriend. These things happen. Just accept it, don't look for excuses.

In this way, you can try to find another position at the company and maybe even get it. By not accepting that you failed and asking for a retake you come across as not knowing the rules of the game.

One more thing. I have taken plenty of tests for jobs. Normally, I was notified of what the topics of the test was to be. Is it possible that it was mentioned and you forgot or didn't pay notice? If not and you were just sent a link, you could have asked about the subject.

But yes, if SQL is included in the requirements on the position, you should be prepared to demonstrate it spontaneously e.g. during the interview.


I asked for retake ones, explaining that I had internet disruption during the test.

But it was actually true, because we had power outrage in our part of city.

You can use the same reason.

You must log in to answer this question.