Before you start reading:
I didn't know if I should post this here or on Workplace, but since my question is more about the "programming language" part I thought it would fit better here. My apologies if it's not the case.
Also, I'm aware there is a similar question here, but the context is slightly different and I thought it would be better to post another question rather than digging out the old one.
About a few hours ago, I was asked to complete a "C++ intermediate" test for a job application. Turns out this test doesn't look like it's tailored for "intermediate" programmers to me.
Even though I clearly don't consider myself as a skilled C++ programmer, I don't think I am an absolute beginner either. I've been practicing C++ for a few years now, along with other programming languages and more conceptual things such as algorithms and design patterns. I if were to describe myself as a programmer, I'd say that:
- I'm not an expert in any language, but so far, I've known enough things to handle every projects that were given to me.
- If there was something I didn't know, then I learned it "on the fly" and was able to go on with the project I was working on.
- I have a working experience in C++.
Yet this intermediate test asked me about very specific questions like the impact of the overloading of the operator "new", or string manipulations with
memmove and so on. I know these things can be useful, but even in a business context, I never had to do such things. I had to do other specific things, but too bad, it wasn't part of the questions asked.
Obviously either my idea of what an intermediate C++ developer is supposed to know is wrong here, or this test isn't made to measure global intermediate skills. I mean, I thought I was an intermediate programmer, but that might be because I took in account my ability to find answers to my questions quickly. So I might be more a "beginner developer with the ability to look like an intermediate developer (given a few minutes)" rather than a true "intermediate developer".
So I'll consider the first hypothesis to be true, and say that this kind of test is quite good at measuring programming skills.
How can you effectively measure your programming skills in a language in order to comply with these tests? What are these tests actually trying to measure and what can I improve to get better at them (and potentially be hired for a job...)?