Importance of a Personal Development Plan
I first need to mention, this post is intended to be and interactive one as I will be posting a question to all the readers at the end, looking for some good feedback to help me with my training plan at work.
I am always amazed at the lack of personal responsibility many (the large majority) developers display. Obviously skills that are learned act like building blocks and will carry you a long way. The problem is that our industry is one of the most dynamic and rapid changing of any out there. If you do not keep up with the ongoing industry innovations you can quickly find yourself being left behind and unmarketable. It is nice when you work for a company that is training minded and helps develop their employees but that is not the norm, and even then you still need to make a personal effort to progress your development skills. The only person that is going to truly look after your well being and future marketability is yourself.
It has been interesting to observe over the past year or so how many open mid to senior level software engineer/developer positions are available. Many of these positions have been open for quite some time too. I have spoken to a few of these employers to ask how their recruiting efforts are going. I consistently hear the same echo, we have plenty of applicants just not finding people with the skill set we are looking for. Sure enough, the skills they are looking for are technologies and methodologies that are relatively new to our industry.
Some good news for the readers of this blog. By the sole fact that you are reading this post means you are among the top 10% to 15% of developers who are actively engaged in developing your craft. One of the departments I worked for had 68 software engineers. Of that group I only knew of 9 (13%) that were active BLOG readers, attend user groups or local geek events, frequently reviewed or read software books/journals/magazines, earnestly downloaded and experiment with beta software just because they wanted to, not because you were required to, or was part of some open source project giving time to make something cool to better our industry.
You can probably tell by now I am a strong advocate of employing people who are self motivated and will personally take charge of developing their skills. I hire people for what they know not what I can teach them (entry level positions excluded from that). Unfortunately I still have to work with and manage the other 85% to 90% who need to be told what to do.
NOW TO MY PLAN:
I changed companies several months back. My new employer is training minded and very supportive, the unfortunate part is they have no formal training direction or requirements for the members of the IT department. As one of the companies Solution Architects I am seeing huge discrepancies and lack of standards throughout our department. One of the first things I want to implement is a mandatory book reading list. There will be three (sounds like a good number) books that every engineer will be required to read and signed off on. There will be an accompanying class/lab that goes along with each book to give some hands on reinforcement.
First Book:
Needs to target programming style and software construction. I have already chosen this one, I could not think of anything better then “Code Complete 2” by Steven McConnell, I am currently working on the class lab material for this book now. I am hoping this book and accompanying lab material will help get the developers on the same page regarding software construction standards.
Second Book:
Will be on Design Patterns. I have not solidified my choice here yet only the category. There are lots of good titles to choice from here. Obviously there is the original design pattern book “Gang of Four” and newer pattern books like ”Head First Design Patterns”. What are your thoughts here?
Third Book:
I have nothing slated here yet.
The question for you all is, if you were going to have three books with accompanying lab/presentation material which was going to be mandatory for all developers to read what would they be? Like many corporations we are multi platform so the books do not necessarily need to target a particular language but we are striving to standardized most our systems/applications on the Microsoft development stack so .Net is going to be a big part of our future.
Thanks
Scott Nichols


