I have always struggled to answer the question "How do I become a senior developer?".
It is one of these things that happened so long ago, that I barely remember when or how it happened. Age takes its toll, and I was not clever enough to be blogging back then ( nudge, nudge, wink, wink).
But, as I was today moving some book notes to the blog, it dawned on me what my path was to become a senior developer.
And it happens to be the same path that moved me to the higher echelons of the IT hierarchy.
For me, it all starts with reading a book (or books):
Books give me enough (false) confidence to become a big mouth, to have too many opinions, and to make too many suggestions.
These suggestions translate to a boss getting the (wrong) impression that I know what I am talking about, hence being appointed to solve a hairy problem. Or maybe the boss is trying to teach me a lesson.
And once I am given the chance... OMG! The little gaps in your fake knowledge become huge chasms that you need to jump, circumvent, or fill up.
It is all blood, sweat, and tears.
But the toil nurtures the precious experience that cements your knowledge, your most valuable asset (unless your parents are rich, in which case, it is your parents).
No. I am sure that other people will have more efficient ways, but, distilled, the general formula is:
- Obtain some proto-knowledge.
- Find the courage to speak up, to have an opinion. Remember that there is a thin line between courage and stupidity.
- Be in an environment that will give you an opportunity. This requires both courage and forward-thinking.
- Struggle. Be ready to be wrong. Toil.
- Reward! Real world experience == actual knowledge.
Repeat enough times and your knowledge will become wisdom.
And don't hurry, this will require a lot of time.
Here are some lists.
For the record, I disagree with all of them.