- Drilling down multiple levels for greater understanding. Being the "anti-poser" by knowing what's really going on under the hood. Sharing this insight with others. Amazing what a difference maker this often is.
- Subject matter expertise. Can you stay two steps ahead of your customers by getting behind their eyes and seeing what they need before they do?
- Continuous improvement. (I know, a B.S. term if there ever was one, but it's true...): "Good enough" is never good enough any more. Get better or someone will eventually eat your lunch.
- Communication skills. We all suck at them so much that this is often a bigger speedbump than technical shortcomings. We have much to learn from ants.
- Vision. Another nebulous term, but one that often makes a difference between arithmetric and geometric growth.
- Determining priorities. (Are we really working on the best thing?)
I think he was referring to the "title-itis". Titles make absolutely no sense and they seem to be used as a currency by employers and as resume trophies by programmers themselves.
To many times have I seen mediocre programmers negotiating themselves into a BIG title simple because the employer didn't want to give that person a pay rise (titles are free you see). Once they get the title, they sit on sit for a few months and then they fuck off to work for another company. This way they keep their title AND get a pay rise and all while being mediocre.
I'm sorry, as pan69 pointed out, I meant what's left for career progression (without going into management). When a truly senior developer comes along he will be stuck at the same level as the "good enough" (in a bad sense) guy, maybe even at the same pay.
Where do I begin?
- Drilling down multiple levels for greater understanding. Being the "anti-poser" by knowing what's really going on under the hood. Sharing this insight with others. Amazing what a difference maker this often is.
- Subject matter expertise. Can you stay two steps ahead of your customers by getting behind their eyes and seeing what they need before they do?
- Continuous improvement. (I know, a B.S. term if there ever was one, but it's true...): "Good enough" is never good enough any more. Get better or someone will eventually eat your lunch.
- Communication skills. We all suck at them so much that this is often a bigger speedbump than technical shortcomings. We have much to learn from ants.
- Vision. Another nebulous term, but one that often makes a difference between arithmetric and geometric growth.
- Determining priorities. (Are we really working on the best thing?)
I can go on and on, but you kinda get the idea.