As a freelancer you usually find yourself working on several projects at once. Whether you’re working on different projects, handling different clients on the phone, or working on some small fixes on the side, having more than one commitment is what most freelancers consider normal. I usually work on at least two different projects at any one time, commitments in my free time, such as work for friends or the aforementioned side projects, not included. Don’t even get me started on writing, accounting, handling client emails or phone calls.
Am I complaining about it? No, it’s my choice. I could work on just one projects at any one time, but what fun would that be? The important thing is to know how to handle your commitments. About a year ago when I started working as a freelancer, I usually only worked for one client full time. That meant sitting on site for eight to ten hours a day so there wasn’t much room for anything else anyway.
But over the last few months the situation has changed. I’ve found myself committing to several projects, writing more and doing more smaller things on the side. So I’ve had to come up with some strategies to deal with my commitments efficiently and avoid me burning out.
One project at a time
This may sound contrary to what I said above, but I mean something a bit different. Work on a single project for a certain amount of time. The amount of time isn’t important, rather that you have a set amount of time to focus on one job without distraction.
A context switch is very expensive – computer scientists learn that in college.
Letting go of the information, history and problems of your current project and finding your way back into another one generally isn’t accomplished in a matter of minutes. The hardest part is getting your mind to focus on a new pile of information, and to be able to pick up where you left the project. I’ve found it’s pointless to try to force it all into your head immediately. Take a short break and do something entirely different, maybe go for a short walk, or do anything that frees your mind.
Unfortunately we often can’t switch off the usual distractions of a normal business days like e-mail or phone calls. Emails are easier as they don’t need to be answered immediately so you can set aside time every day and answer them all in one hit.
It’s not so easy with phone calls. A possible strategy could be to answer them and commit to doing the resulting tasks at a particular time. Sometimes the clients will want something done immediately, but oftentimes you can hold the task off for a day or two. That will require that you be organized enough to know in advance when you next have a block of time to set aside to that project.
Once you’ve dealt with distractions, the next step is to get right back into your project. To get back into the flow you have to…
Gather all the information you need to get into your project. Close everything concerning the last project and open everything you need to get started and back into the flow with the new one. If you have to, read up on the specifications on code or bug reports. Start by making a list of things you need to do next. That way you force yourself to think about what needs to be done and to get every piece of information that helps you to figure out your next actions.
Don’t Leave Broken Windows
Set milestones for the time you’ve scheduled for the project. The milestones could be as simple as “Implement functionality to send messages between users”, “Finish the design for the main page” or “Finish accounting for last month”. Make sure they aren’t too far out of reach and can actually be done in the time available to you.
You won’t always reach all these milestones, but they will help you to know where you’re up to in your project when your block of time is completed. You can then put the project to rest until you get back to it without wondering what things were left undone. If you can’t complete all your milestones due to various circumstances, that’s fine. Just ensure you don’t leave broken windows. For example, leaving broken code in the project will most likely prevent other people working on the project to work efficiently, or might even leave the project unusable.
The other thing about cleaning up after yourself at the end of the time you assigned to the project is that you don’t have to think about the broken window when you get back to it next time. You can start a new task immediately.
Yes, projects need to come to an end eventually. It’s part of their life cycle. The important thing for you is to find the point when they’re actually finished. Some projects accompany you over a longer time. As long as there’s work to do, that’s fine. But when they can’t come to an end, because your client doesn’t want to, decisions take ages or the client changes his mind every week, things get painful. The project doesn’t feel like work, it feels like an extra weight you want to lose, but it just won’t go away no matter how hard you try.
Finishing a project is a very fulfilling thing. The work that needed to be done (usually) leads to an outcome that satisfies you and your client, and everyone’s happy. That some money will flow into your direction is a nice add-on. But the most important thing is that you can move on to your next projects. There’s always new work to be done, and unfinished, older projects always stand in the way of fully focusing on them.
These outlined steps might sound rather straightforward, but it took me a while to get used to working this way. I’m always haunted by work that’s not done. While there’ll always be more work that you’d love to finish, these steps can at least help to speed up the progress and complete jobs quickly and efficiently.