Blended Teams (the New Norm)
This week, oDesk released its "Online Work Survey" for Fall 2012. As you might imagine,…
So, you’re a solo developer who just scored a large project and feels a wave of anxiety at the mere thought of finishing all its components in time?
It’s probable that you could use a few tips on how to streamline the process of development and keep everyone happy. Here are 8 project management tips for freelancers aiming to complete intricate web projects on time.
The road map of your project is a document which should be part of your contract with the client, serving as an outline of the project to help you follow and track its progression. A great road map will include all its features and delineate the plan featuring all stages of project development, such as research, design, development, testing, and deployment.
Every step should have clearly defined goals and suggest where the project should be once a given phase is completed – moreover, your client should sign off each of those after completion. Your copy of the road map can include more technical details – from methods to implement in each feature to technologies deployed in every segment.
A firm contract specifying all details will help you to avoid lags in development due to late payments or unclear deadlines. The contract you draft should protect both its parties – you and your client – while at the same time providing specific information about the project, such as payment schedule, deadlines, consequences of missing deadlines, project scope, due dates, cancellations policies and guidelines for intellectual property. Instead of relying on one of the templates you can easily find on the web, just contact a lawyer – a great contract is well worth the expense.
This is something that will prevent you from losing on consistency throughout your project. You should establish a visual guide with information pertaining to fonts, colors and any other visual elements. Common visual elements include headers, sidebars, forms or body content. This style guide should be signed off by your client to avoid future misunderstandings.
Another key guide is a coding guide which doesn’t need to be project specific – it just makes your life easier when working on other projects or taking in new people on board who aren’t familiar with your style. You can follow an existing style guide like Zend or start from scratch – the important thing is that you’re consistent.
Yes, documentation takes time and seems like an unnecessary burden but you should remember that seeing your project in a few years, the code might make little sense. Not to mention the fact that programming styles evolve over time, making it additionally hard for you to pick up the work as you left it a long time ago.
That’s why it’s best to document as you code – use clear language and logical progression. Always explain the purpose and function of a feature. Documentation will help you to train your client to the software as well – end-user documentation allows others to easily spot any usability issues or features you forgot to add.
Meeting are there to be constructive and valuable – even if you’d rather code away in the confines of your office. But remember that your project wouldn’t be there if not for your clients and collaborators, so sit through every meeting and be mentally present. Take notes to retain details from the meeting in your agenda – show that you’re attentive and provide excellent service. Having to go back to the client asking for clarifications shows that you didn’t pay attention during the meeting and consequently lose time for all parties involved in making the project happen.
It’s a fact that many freelance developers don’t use version control in developing their projects, but when a larger one rolls in, you’ll simply have no choice. One accident can mean days of work lost, so whether it’s SVN or Mercurial system, you should protect yourself from deleting or overwriting code. Version control also enables developers to track their progress and provides them with much-needed flexibility in experimenting with various methods of feature implementation.
Large undertakings have lots of parts and each will have a deadline of its own – missing one can put the entire project off schedule. Discipline yourself and stick to deadline marks. Write them down somewhere where you’re bound to see them such as in an online calendar. Remember that deadlines work both ways – you should give them to the client as well for tasks such as providing you with deliverables or conducting reviewing periods.
There are lots of tools available to help you manage a large project when developing it on your own. LiquidPlanner is excellent for reporting and scheduling. Project Bubble will help you to keep tabs on the development of your project and its relation to the budget. A classic, Basecamp includes all information you need in one robust user interface, keeping all of your projects, collaborators, tools and files organized.
Tackling a large web project as a solo developer is challenging, but who doesn’t like their freelancing career to grow by leaps and bounds? Large projects mean important clients, who bring in recommendations and new jobs. By employing tips listed above, you’ll make sure that your clients know that they’re dealing with a professional who is able to develop the project within budget and on schedule.