An expert in any programming language has:
- Intimate knowledge and experience in a diverse array of designs and implementations the language is commonly used for.
- Familiarity and expertise with the latest methodologies and design patterns,
- Vast knowledge of its distinctive features.
- Even greater knowledge of possible traps and pitfalls.
- A long list of good resources to query when he encounters something he is not familiar with.
- A strong and diverse portfolio of previous projects with that language at different positions (implementation, design).