Matt Sencenbaugh's terrific essay is getting some well-deserved attention: On Being a Junior Developer.
But the title is misleading: this isn't just a great regimen for a junior developer; it's a superb list of goals for a master developer as well. Here's Sencenbaugh's list:
- Read other people’s code
- Plan things out
- Have an opinion
- Ask questions
- Explore new technologies
- Embrace unit testing
The essay is tightly-written, clear, and filled with choice nuggets such as:
Ask questions about peculiar things, there is often wisdom and learning to be had.
I wouldn't remove a thing; all his goals are admirable and wise.
My only addition would be:
- Communicate. Developers find it easy to work with computers, challenging to work with other developers, and nearly-impossible to communicate with non-developers. You must constantly strive to improve your communication skills and overcome your natural desire to spend all day inside your cube, emitting nothing but code. Practice writing, speaking, and listening constantly.
Sencenbaugh, of course, clearly has the communication thing down pat!