I’m a software developer. Often times when dealing with recruiters, they want a compact list of technologies you’ve worked with and how many years of experience you have with each.
E.g.:
C++ : 3 years
Java : 5 years
Oracle : 10 years
ColdFusion : 1 year
Almost all of the software developer jobs I’ve had have involved multiple technologies. E.g. I will be writing code in C# and JavaScript and writing SQL Server queries in furtherance of various goals.
Do recruiters expect software developers to, or do software developers actually try to prorate their experience based on clock or proportional time? E.g. if I work for three years on a project where one third of a typical workday day is spent writing, debugging, etc. Java code, one third is spent writing, modifying, debugging, etc. Oracle database queries, and one third is attending meetings, does that count as one year of Java, one year of Oracle, and one year of general office experience, or would that be three years of Java and three of Oracle?
If it’s the second, how often do you have to use a technology for your experience to count as full-time? I’ve had jobs where I had to learn a specific technology for a one-off one month project - it doesn’t seem fair to say that just because I had a one-month Visual Basic 6 project that I get to say that I have 5 years of Visual Basic 6 experience because I had that job for 5 years.
Analogies with other occupations are welcome. E.g. if a probation officer is assigned a population of about half property offenders (thieves, burglars, robbers, etc.), and half sex offenders and they have this job for 10 years, do they end up with 5 years of experience managing sex offenders or 10 years of experience?
I count the way Pixel_Dent counts. If I had a job for 5 years that involved C++ and SQL Server, that’s 5 years of C++ and SQL Server. If in the middle of that time period I also worked part-time for 6 months on a Java project, I’d count that as 6 months of Java. So… concurrent.
What I’ve had are recruiters pestering me for numbers of years of experience in every technology they care for. Some even send questionnaires out with a long list of technologies and demand a number for each line item. These practices are what inspired the question. I think I’ve lowballed myself in the past by e.g. saying I had half a year of experience in X even though I had used it for three or more years because I only really got my hands dirty in it maybe 5 or 10 hours a week.
I think the shopping list of mandatory experience can get pretty ridiculous for software engineer ads so I think most people round up and/or count experience in parallel. Heck, for some of the ads, if you had to gain all the experience on the list sequentially, rather than in parallel, then the only possible candidate would be Methuselah.
As ridiculous as those job ads can be, maybe it simplifies things to look at it from the prospective employer’s POV. When they say “3+ years C++ experience” they mean something like “We want someone that hasn’t just knocked together one or two trivial programs in C++. We want someone that has had to work on long projects, that has had contact with multiple APIs and has had to refactor (legacy) code”.
So ask yourself questions like that. In my own case there are languages and APIs I had some contact with over a period of, say, 2 years, but I would be reluctant to put “2 years’ experience” because I know I only did trivial stuff.
OTOH if I’ve been coding like a maniac for 18 months, and have had to learn a great deal every day about an API/SDK/language, and now feel I know it like the back of my hand, sure I’ll round up to 2 years, maybe more.