I'm in the midst of writing my CV and I have come to the part where I am listing my skills and technologies used.

One thing I am torn on is how to refer to my skills, from what I see there are four options:

1. Years Knowledge

The traditional way seems to be jotting down all time between when they first learnt it and now. I.e if I learnt a language in January 2010 then I would say I had 3 Years 9 months experience, regardless of how often I used the language.

The disadvantage of this is you risk getting questions which are way above your knowledge bounds because you haven't used that skill solidly for 3.75 years.

2. Years Experience

This method sums up the total amount of time spent actually using the skill. So what was previously 3 years 9 months might instead be listed as 3 months, the total time spent actively using the skill.

The disadvantage of this is that your skills are significantly reduced compared to the people who use method 1 (based on people judging by CV)

3. Proficiency Level

This method is basically to say a skill then how proficient you think you are in that skill. I.e

C# - Novice, Java - Expert, ect.

The disadvantage of this is that not everyone measures novice and expert the same as every one else. So this hints at nothing than that you might have used that skill.

4. Just Skills

An alternate method is to just list the skills you have and not provide a metric, for example a list might then look like

c#, java, ruby

with no indication of proficiency. The interviewer can determine that in the interview themselves through questions.

The disadvantage of this is that you give no indication how good you might be in any of these skills.

Obviously 'better' is going to be highly subjective. The purpose of the question is instead, which is more likely to provide a relevant measurement of my skills without appearing to be less skilled comparative to people using other methods


5 Answers 5


As a recruiter, here is what your options mean to me.

  1. Years knowledge. This is not in any way a useful measure, and if you use it I will interpret it as 'years of experience'. If I find you haven't actively used the skill for that many years, I will think of you as one who exaggerates your claims, and I will doubt everything else on your resume. Don't do it.
  2. Years experience This is a nice easy way of specifying your knowledge, which is unambiguous and well understood. Recruiters are aware that people can have different skill levels with the same years of experience, but that's what interviews are for. For resume purposes this is fine. It allows me to weed out the people who can't possibly have the skills I'm looking for. If somehow you have skill level way beyond your years of experience, talk about what you've done and how you acquired that skill specifically.
  3. Proficiency Level In general this isn't a good measure, because people are generally bad at estimating their own proficiency, especially if their proficiency is low. I've seen literally dozens of fresh college grads claiming to be C++ 'experts' based solely on the fact that their C++ project got a really good grade. using this probably won't harm your chances, but try not to exaggerate too much. If you have been actively recognized as an expert by someone, for example you were tasked with training others in the skill, or a formally recognised expert, then absolutely mention that. If you have worked with obscure or unusual parts of a programming language, or you've succeeded in a really challenging project, mention those specifically. If you know how, when and why to override a new operator in C++ I'll be impressed.
  4. Just skills Given the disadvantages of the other methods, this seems a tempting option, but if I'm looking for a C++ developer its a waste of my time to interview you if all you've done is a few weeks on a home project. You absolutely need to give some indication to distinguish between the skills you are good at and the skills you have only touched on.

tl;dr Your best bet is years of experience, coupled with descriptions of what you have done with those skills.


The purpose of the question is instead, which is more likely to provide a relevant measurement of my skills without appearing to be less skilled comparative to people using other methods

It depends on you.

I've personally mixed all four on a single resume to promote my strengths and de-emphasize my weaknesses. Since the "years experience" is primarily used by HR, I tend to exaggerate the skills I need to bypass HR (years since learned) and undersell the skills that don't matter for the position but show breadth of knowledge (years used).

The end goal is painting a fairly accurate picture of what you're selling - you, because as you say, you'll need to back the resume up in the interview.


I find that a combination of stating your proficiency level and skills is the best approach. That way you won't get blindsided by someone in the interview. Just because you used PERL for 3 years does not mean you are an expert. You may have just been maintaining basic scripts.

Start out by listing the technologies you are well versed in. Then move onto technologies you are comfortable using, but not an expert by any means. Then go on to list the technologies you have used, but not regularly.

Example: Java: High proficiency - used regularly for past 5 years (list java related technologies)

Perl: Moderate knowledge - used on an infrequent basis to manage XYZ.

COBOL, C: Have used once or twice while maintaining a legacy project.

Don't list anything that you wouldn't be comfortable explaining how you used it in an interview.

EDIT: Why this order?
For technical positions, you want the interviewers to know what skills you have at what level. If the position was for a Python developer, but your main skill was Perl, you would still list Perl first, and Python further down. This gives the interviewer an accurate representation of your skills. They may be willing to invest some time training you in Python, but if you falsely represent your knowledge of a technology, that can leave a bad impression in an interview.

  • 1
    If you need to doctor your resume to fit the position maybe you shouldn't be applying.
    – aglassman
    Sep 13, 2013 at 19:34

Here's what you do: Aim low!

If you've only had a year of professional work experience in Java, but you learned Java in 2009, then put that you have 1 year of experience on your CV. Definitely list it as a skill, but mark your knowledge and proficiency as something low, like 3 out of 10, for instance. Don't be afraid to be humble!

Next, think about the things you accomplished during your yearlong tenure working with Java. Did you improve a process? Did you generate a certain amount of revenue for the company? Did you implement a new feature in the software that made your users happier? Find impressive examples and list them in your CV.

In your cover letter, don't mention the experience or your rating, just mention what you accomplished. Your accomplishments are how recruiters and hiring managers will differentiate you from other candidates. Why? Because you are absolutely, 100% correct! People interpret years of experience and skill levels differently.

By highlighting your accomplishments, you show the hiring managers and technical recruiters that you can take your skills and do something important with them.

I interviewed for a Java position when I had very little experience in the language. I worked on a small project and read up on access modifiers and sample Java interview questions and then went in for the interview. I rated myself low on the interviewers' 1-10 scale and then proceeded to nail every question they threw at me. It made a lot bigger impression than all of the people that preceded me who rated themselves 8 out of 10 but who couldn't remember the difference between private and protected. I got the job.

  • Very good comments. However, it depends a lot the application process. At many places there are screeners without much domain knowledge, reading through the applications and might throw away humble skills. Sep 13, 2013 at 20:17

You may find you have to tailor these to the requirements of different jobs. If they want 5 years of experience in technology "X" you should highlight that fact.

The intitial review of your CV may be by a person who is not familiar enough with technology to differentiate between someone who knows what they're doing and someone with 3 years of experience.

A cover letter may the place you stress how well you know the technology (details included in CV) eventhough you only have 4 years instead of 5 years of experience. You don't want to draw attention to this fact by literally indicating the number of years, but someone could do the math by looking at your job experience.

You must log in to answer this question.