All Projects can be Successful
No matter your field of interest, it is the one discipline that knows no bounds. We are constantly bombarded with requests for how long it will take to accomplish a task, when will the project finally be done and the sometimes inevitable “why are you late”? With so many years behind us in this field of study why do we continue to stumble through this endeavour, look at any newspaper and you will hear of a government project of some sort that is behind, talk to any software developer about a project that went longer than expected and they will spin you a never-ending story.
This isn’t to say that all projects are late or fail - that would be impossible (and quite honestly a bit sad) - so what is it that makes these projects so successful? Is it the methodology? Rational, SCRUM, Agile, PMP? Is it the tools? MsProject? BaseCamp? Sharepoint? Homegrown?
Personally, I think it is none of the above. Good, successful projects always come down to the same 3 things; Teamwork, Communication and Honesty.
Teamwork
I’ve always been a believer that software teams should not be assembled to construct products. They should be constructed based on fit to the team. When bringing someone new into a team you need to look past their resume skillset and look at their interpersonal skills, how they interact with people, how will they fit? You don’t need 5 super technical, introverted senior developers; you need people who complement each other’s skills. Some of these are go-getters, some are thinkers and some are pure “give me the task and I will crank it out” doers. Whatever the case, as a leader you need to focus on assembling your team first, after that the delivery of the product will come and it will be better for it. Great products are by-products of even greater teams.
Communication
In this day and age, nearly everyone has an electronic device that can do something (smartphone, Email, phone, iPod/iPad, etc) but does it really improve your interaction with someone? Think of the best interaction you had with someone where you were trying to get your point across. Was it over the phone? Was it via email? Or were you standing beside them drawing it out on a piece of paper for them? Hand-in-Hand with communication is the listening component - I can give you all the warnings in the world, provide all the status reports you like, but if no one is listening what value have I brought? Successful projects hinge upon great communication;
Me: “Ok this is coming and it’s going to derail us”
You: “Ok I hear what you are saying, we need to address this”
The worst thing you can do as a Project Leader is ignore someone’s concern for a threat coming down the road; A) because this person has taken the time to analyze the forethought and B) because you hired them to do A).
Honesty
>In software projects, your estimates will make or break your project, end of story. Too often I see people either grossly estimating their work to give themselves additional time or the complete opposite where they thought they could get it done quicker than was expected. Honesty isn’t about being honest with others, it’s about being honest with yourself (most people aren’t going to lie about their status on a project), you need to be able to look at the work laid out in front of you on your plate and determine what it’s going to take to get it done. And if you can’t give that number to your manager then you need to sit down and walk the estimates, this will allow you to better understand the problem at hand and get better at your own estimations in the future.
I’m sure there are a couple of other tenants of a good, successful projects – leadership immediately springs to mind – but then I am reminded of how I can leave work for a week or 2 and come back and my team is still functioning on the project without me being there on a daily basis (which I think is a great facet of great teams – topic for another blog post… hmmmm!)