views:

235

answers:

8

I've been developing in C++ for over a decade, for quite a few of those years as a full-time job. But I still find things about the language I wasn't aware of.

I've worked with MFC for years, but there are still big areas I know little about.

And so on. Yet if I was applying for a job I'd call myself an expert in both, because otherwise I wouldn't sound very experienced with everyone calling them-self an expert after using something for a year or 2.

So how do we distinguish between experienced developers, like me, and those who know the entire thing inside out, wrote parts of it, know undocumented features, etc?

A: 

I think the term "expert" is a bit ambiguous. As you said, there are those who can use the tools well, and there are those who are versed in the internals. A marksman could be an expert at riflery, without knowing exactly how the rifle works internally down to every detail. A driver could be an expert at racing, without understanding how every detail of the automobile works.

If you've been using a particular set of tools for over a decade, and you can code efficiently and quickly, rarely finding a problem that stumps you for too long, I'd say it's fair to call yourself an expert. Just make sure this isn't mistaken for "expert" with regards to knowing the internals inside-and-out.

Jonathan Sampson
+1  A: 

I'd say it depends on the company you're applying with. With your experience, in the vast majority of companies you'd probably be called an expert. If you'd apply for a job at Microsoft (where there actually are guys that wrote MFC) you'd be 'experienced'.

So for all intents and purposes, I'd say you're an expert :)

Hans Westerbeek
+6  A: 

Being an expert is the self-realization that you'll never be an expert.

George
Especially in a constantly developing world such as software development. There's always a need to stay up to date an learn new things.
Tony
I might have a slightly different definition: that being an expert is possible but only if one has a very narrow focus. Most of us have jobs which require broad sets of skills, and in that kind of environment I agree completely with your definition.
RenderIn
A: 

A expert can be less than decade experience. By example how define an expert about technologie release since less than decade ?

For me an expert is someone to know this technologie better than average people.

shingara
No, then he's "above average". We end up with too few levels that way - beginner, OK, expert.
John
A: 

The meaning of the word expert is dependent on the domain, and is probably relative anyway. One person is more expert than another. Only two people are unique: the most expert and least expert persons in a given domain. Even this assumes that it is possible to tell whether one person is more expert than another.

Daniel Earwicker
But is it relative? Let's say you are ranking yourself 1-10. 10 means you literally know exactly how the entire code base works, all the quirks and un-documented features, etc. That seems pretty non-relative. The problem then is most of us who like to think we're pretty hot then have to mark ourselves as 8/10 by comparison, which HR people will discard when someone else claims 10.
John
@John - but how does Mr 10 guy *know* that he literally knows exactly how... etc.? Someone else may come along and - in an extreme case - seem like more of an expert than the original Mr 10. Brendan Eich created JavaScript. But at times it has seemed like other people are more expert than him, e.g. Doug Crockford. This is a totally matter of opinion, of course, but that's why I say it's relative. If you need to get through some HR filter, just say you're an expert. What matters to the actual interviewers is that you are *more expert* than any other candidate they can afford.
Daniel Earwicker
+13  A: 

An expert is a person who has made all the mistakes that can be made in a very narrow field.

-- Niels Bohr

Nick D
+1 Nice quote from physics
Tom
Good quote. Funny, but also quite true.
Beska
+1  A: 

"An expert is one who knows more and more, about less and less" - Can't remember from who!

Jas Panesar
Ofek Shilon
knowing != remembering
John
remembering != applying != applying effectively
Jas Panesar
A: 

In the book Outliers, by Malcom Gladwell, he shares research that shows that the magic number seems to be 10,000 hours of actual hands-on practice before one has actual expertise.

Being an expert doesn't mean you know everything, but it's safe to say that you pick things up quickly, you know how to teach yourself, and you know where to go look for information you don't know.

Walt Stoneburner

related questions