The Standalone Programmer: Best Project Management Tips
Introduction
I have read many books on successful projects, project management, development life cycles, qualitycode, etc. One of the pit falls I have discovered with many (if not all) of these books is that theymostly focus on team development. Most stress the need for quality assurance people, at least 2developers, project leads, etc. Unfortunately, this is not always realistic and can seem overwhelmingwhen a single developer is faced with large projects. I have been the only programmer at myemployer for about 3 years now. I am fortunate that my boss is an ex-programmer and has a goodeye for architectural details and big pictures. However, all of the architecture, design, development,debugging, testing and refining work falls to me. I do not have a staff to assist with thedevelopment, QA or testing so for just about every aspect of development my company needs, I'mon my own. Many of the projects I have worked on have been very small and accomplished in just acouple of weeks, but others have spanned 3 years and are continuing. To combat this problem I have been endeavoring to train myself on the best practices and solutions to my problem. Many of theconcepts outlined in the various books can be easily applied to one-man-shows, but others cannot.As a result I have searched for alternate solutions to the various problems I have encountered. Mostif not all of the solutions I have come up with are not original and many of you will already knowwhat I know and much more. I decided to write this article in the hopes that it would help someother developers AND that I could obtain feedback from the CP audience on best practices andtechniques for success. I have broken this article into 2 primary sections. The first deals with myobservations and techniques regarding the non-technical aspects of my job. The second deals withthe technical aspects.
Disclaimer
Before I begin I just want to say that I am no expert and the contents of this article are myobservations and techniques. You may have better techniques or think that mine are terrible. Iwould love to hear from you. I am interested in improving my abilities and skills and I am notegotistical about my views in this regard. So, if you have a comment, positive or negative, pleaseleave me feedback and explain what you think. In fact, if there seems to be consensus on better ways of doing things then I will probably update this article to include those better techniques.
Preview
As stated before, I have divided this article into two sections. Before I get into the details I am goingto list the various bullet points here.
NON TECHNICAL
1Set personal goals2
Read, Read, Read
3Come out of the closet 4Meetings are not all bad, just mostly bad 5After hours is off limits6Set reasonable expectations7I'm not a programmer, I'm an architect
TECHNICAL
1Plan, then code2
The right tool for the right job
3Fix bugs early4Develop good coding habits5Know thy enemy6Documentation is your friend
7Form over function1
Leave a Comment