I should interview soon for an interesting position and they asked me in an email:

Can you tell me more about your knowledge of C++ (a programming language)? In this way, we could arrange a meeting with XXX.

I know C++ but not really deep. My preferred programming language (or environment, as you like) is MATLAB and I don't use C++ really often.

I think I am really skilled at MATLAB but not (yet) in C++. However, but every time I had to work with C++ I did not have many problems. I would say that it would take me few months (~2-3) to get to full speed with it. I know the basics, the theory etc. I programmed in C++ few times and I can read it with NO problems.

I am scared that if I reply the truth then I will not get either the meeting.

Could you give me your opinions?

  • 1
  • 1
    When I was applying for my first internship, I mentioned that I had some Python knowledge. What I meant is that I had done some Python assignments in school. What it meant to them was that I was the new Python guy, and they immediately set me to working on their existing scripts. Basically, if you don't clarify your C++ knowledge, you need to be prepared to get thrown into the deep end. Commented Nov 27, 2017 at 19:36
  • The main question is do you want to work in C++ if they are fine with your limited background on the language?
    – smith
    Commented Nov 27, 2017 at 22:22

3 Answers 3


You have basically answered your own question. Tell them exactly what you told us. If the fact that you only know C++ basics is a problem for them, you are already providing a solution. You can get up to speed in 2-3 months. Maybe also provide them how you plan on improving your C++ skills.

If you lie about having C++ skills and your job ends up mostly doing C++ and you suck at it, you will lose your job. If you're honest and they can give you the time to get up to speed, you will keep the job and grow.

  • 2
    That is what I did. I told them honestly what my feeling is , as I wrote here. And that it is really on the top of my list to learn C++ and I plan, anyway to do it, shortly after I finish my PhD.
    – desmond13
    Commented Nov 27, 2017 at 10:10
  • This is the correct answer. Whether or not the job is a good fit really depends on what the company is looking for. If they want a diamond in the rough who has potential but needs some training, you probably have a good chance. If they’re looking for someone who can immediately get to work on complex problems, maybe not so much. Either way, you made the right decision being upfront and honest. Commented Nov 28, 2017 at 2:21

Always answer with the truth crafted around what the job description says are the required and optional skills.

If there is no doubt that the key to the job is that expert knowledge of C++ now; then they may be unwilling to wait 2-3 months- but they might. If it is a matter of being rusty - tell them that. If it is a matter of only using it in one class 10 years ago - tell them that. Of course being rusty shows that you used to have proficiency, while only using it in one class leaves doubt in your ability to become an expert.

If it is on a long list of nice-to-haves then your proposed answer is likely to be what they expect to hear about many (most?) of the items on the list. they know that nobody has everything on the list. Past proficiency is great, some exposure is also fine.


I recommend you to describe your knowledge level with concepts and technics of C++ you have used in the past then stating that you would love to have a chance to apply advanced technics like X, Y and Z to get X-Y-Z results.

This will send the message that you know your level of knowledge can improve, that you can self-assess, often, a bad candidate does not know it.

Additionally, that you know the next step to improve. Showing that you are interested about the technology because you know that stuff exists beyond your projects scope/job.

Statements like poor, good, etc. is too generic to get an idea because usually it is translate like: I was worst/better than the average programmer at my ex-employer that the goes does not know. Also, X years of experience is generic because there is so many programmer out there with 10+ years of experience that cannot complete a fizz-buzz test.

So stick to the facts and they will evaluate the learning curve of their projects.

Good luck!

You must log in to answer this question.

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