How to Improve Your Productivity Using Agile Techniques
Posted September 10, 2010 in How-To, Programming
Improved productivity is the goal of every freelancer.
Ever since I started my one-man business, I have looked for ways to improve my productivity and get things done faster. There were a couple of methods that seemed to lead to small improvements, but overall none of them proved efficient.
That is, until I discovered agile techniques. In this post, I’ll discuss some of the ways that agile techniques can help improve a freelancer’s productivity. Specifically, I’ll look at agile methods in general and at Scrum methodology.
Agile Techniques are Team-Oriented
A couple of months ago I was researching agile methods to see if they would help improve my productivity. While studying agile development methods such as Extreme Programming, pair programming, and Scrum I was disappointed to learn that these methods were designed for teams and not for freelancers.
I decided to examine the methods further. I asked myself the question: Why are agile techniques team-oriented?
I discovered that agile development methods are team-oriented because a single person inevitably makes mistakes, mistakes that go untracked and unfixed. This means that the end product has poor quality and stands against the very nature of the agile manifesto, which tries to ensure high quality in each iteration of a product’s development.
If a team develops the product, errors made by one member are discovered by others and fixed. Each member has a specific role. Some may even have passive roles, as their only task is to listen, observe or moderate–such as the moderator of a poker play agile technique, or an employee that hasn’t got a scrum role, but attends a Scrum meeting.
Therefore, agile methodologies were designed and work best with teams that are usually larger than three or four members.
But, adjustments can be made
Despite the fact that it is really hard to successfully apply agile methods to developers working alone, some tweaks can be made to certain methods and therefore use them to improve your own productivity and work flow.
One that can be modified is the Scrum methodology. Scrum is an iterative framework that was designed to serve as a management tool for software development projects, but it is also widely used to manage development teams too.
What Is Scrum Methodology?
Scrum contains a set of practices and three predefined roles. The project manager is usually the Scrum master and maintains the processes. There’s also the product owner, or someone who represents the client and a team of developers.
In summary, the Scrum roles are:
- Scrum Master
- Product Owner
- Development Team
Scrum uses sprint periods of two to four weeks during which a potentially releasable product increment is developed. The features that are implemented during a sprint are chosen from a set of high-level requirements needed to be done. Which of these requirements go into a sprint is decided at the beginning of the phase.
The product owner or the client informs the development team about the items in the requirements list that must be completed first. The team than estimates how many of these items can be completed during the next sprint. An important issue with Scrum is that, during a sprint, requirements of that specific sprint cannot be changed. This ensures that the development team is focused on its tasks and doesn’t get distracted.
A key principle of Scrum is its recognition that during a project, the customers can change their minds about what they want or need. These modifications are introduced to the project development only between sprints.
Scrum requires daily meetings, which may seem Sci-Fi to some. Don’t worry because the modified Scrum version that works for a freelancer is simple and straightforward.
Scrum for Freelancers in Two Easy Steps
Scrum can be adapted for freelancers by implementing the following steps:
- Client meeting–one each week
- Sprint planning meeting–one each week
The starting point for implementing scrums is to develop a prioritized list of outstanding client requirements or needed features, having for each item in the list a priority, a description, and a developing estimate.
The client requirements and features list are built during the first client meeting. This list can be modified afterwards during each weekly client meeting. During these meetings, list items should also be prioritized as the client wants. Estimates should be computed by the developer alone and communicated to the client.
The next step would be to define a one-week sprint and start developing the items in its list while making sure that distractions aren’t sidetracking the development task. The success of each sprint depends on the ability of the developer to estimate development time required for each task and stay on track. The items that are added to the weekly sprint should be selected according to customer’s priorities.
If the client wishes to change any features of the product during a sprint, you mustn’t waste time discussing this with him. Instead, you should advise your customer to point the modifications during the weekly meeting he has with you. Of course, this can have side effects, but if you explain your development process to your clients during the first meeting with them, they’ll stick to it and love the fact that you have strong management capabilities.
Using this technique, you could have one day a week during which you meet with all your clients that you’re currently involved in a project with, and leave the rest of the days for distraction-free development process.
But, you can further improve the process!
Scrum Methodology and the Pomodoro Technique
You can improve the adapted Scrum methodology with the Pomodoro technique. It is a time management method developed in late 1980s that uses a timer to define work periods of 25 minutes followed by short breaks. Each period is called a pomodoro (Italian for tomato). The technique is based on the concept that frequent breaks can improve mental agility.
Five basic steps are required to implement this technique, in the following order:
- Decide on task to be done.
- Set the pomodoro timer to 25 minutes.
- Work on the task until the timer rings.
- Take a short break.
- Continue with the third step or the first step if the task is completed.
It is also recommended that a longer break is taken every four pomodoros.
This technique blends the one-man team Scrum as the first step––that of choosing a task––is embedding the sprint list of the Scrum methodology. Moreover, the Pomodoro technique is related to concepts such as time boxing and iterative and incremental development, which are all characteristics of agile development.
Final Thoughts
This technique may seem a bit complex, but it is easy to manage it. You can do it with sticky notes or whiteboards, or by using dedicated apps. And, just in case you don’t have a timer around, you can use Focus Booster App, which was designed to work with the Pomodoro technique.
Your Turn
What methods do you use to improve your productivity? Share your thoughts in the comments.
Image by IDS. Photos
Related posts:
- Improve Your Professional Productivity – Get Rid Of Distractions
- The 20 Best Productivity and Personal Development Blogs
- 10 SEO Techniques All Top Web Sites Should Use
- Hit a Plateau? 4 Ways to Improve Your Skills
- Freelance Web Designer Tools And Productivity Management
The Unlimited Freelancer is Now Only $19
Unleash the true potential of your business. Get The Unlimited Freelancer and start transforming your freelance business,
now only $19.
Try searching "Getting Clients" or "Productivity"
Free Report
Sign up for our product discount list to get a free copy of Why Some Freelancers Thrive and Others Barely Survive. You can unsubscribe anytime.
Forum Discussions
Popular Articles
- SEO Techniques All Top Websites Should Use
- When a Client Can't Afford You: Why It's Still Better to Bid High
- How To Stop Scrambling For Clients And Get A Steady Stream Of Paying Gigs
- A Simple Way To Stop Clients From Rejecting Your Proposals
- 3 Reasons Your Rates Are Still Low (And How To Start Raising Them)



30 Comments
Jordan Walker
September 10th, 2010 at 9:19 amMy productivity increased exponentially with a mug of coffee or a good run in the park.
Web design portfolio
September 10th, 2010 at 11:33 ami’ve recently undertaken some agile methodology training and it’s great.
Markdamo
September 10th, 2010 at 11:37 amI’m a freelance developer and I have heard of Agile development methodologies but never got a chance to try them but I will now using your methods. Great tips thanks so much.
Kirstine Vergara
September 10th, 2010 at 12:39 pmProductivity for me is being able to finish my tasks before 10 in the evening so that I have 2 hours to watch a movie. :) I guess being productive is all about setting your goals and actually taking actions, whether with or without the aid of any methodology.
I’d like to share with you an article on Effectively Programming Your Goals. Hope you find this useful.
OfficeHax
September 10th, 2010 at 4:04 pmAwesome article. The company that I work for uses SCRUM and I like it a lot. It really does enable you to focus on the task at hand. It also helps to prevent work overload since you’re required to give an estimate of what you can accomplish for each sprint, rather then having work thrown at you on a daily basis. This puts a lot of responsibility on the project owner to prioritize tasks and organize work loads in a logical manner. I like the pomodoro technique as well, but it gets a little annoying to ‘have’ to take breaks.. Are there any free web apps for SCRUM? (we use a paid web app)
Adam Bluhm
September 10th, 2010 at 5:38 pmI agree with OfficeHax. I really like the idea of the Pomodoro Technique and it generally works for the first half of the day but then it begins to get annoying after a while. I find it’s difficult to stop what I’m working on and ‘have’ to take breaks (especially when I’m on a roll) so I tend to keep working and start skipping breaks.
Anyone have any suggestions how they worked Pomodoros into their workday?
Bogdan Pop
September 11th, 2010 at 3:05 am@markdamo Great to hear that!
@kirstine Nice article. However, I don’t think that kind of goal programming session ( which seems more like a meditation) would work for a lot of people. And I don’t think that doing such a session will help much. I mean, how exactly do you know what the most important task for a client’s project, if the client barely knows what he wants and says multiple ideas for how to end a project?
Being relaxes sometimes helps boost productivity, but I think that most often people find themselves in @adam’s position (being on a roll). Short breaks may not break that, but taking a few minutes to fully relax will definitely ruin that rhythm
@officeHax Unfortunately I don’t know any free webapps for SCRUM. I do know a free app for Pomodoro technique (http://www.focusboosterapp.com/). Anyways, I’d be great if you shared the app your using a work, even if it’s paid.
Peter Saddington
September 11th, 2010 at 1:05 pmGreat article. Thanks for sharing!
Fleire Castro
September 11th, 2010 at 9:59 pmThis one of the most interesting post I’ve read this week on my feed so I have to comment. I have recently taken on a huge project that requires a modified methodology such as SCRUM. I understand I should research more on this topic as it is really interesting.
Lindsey Niedzielski
September 17th, 2010 at 1:29 pmGreat post Bogden. This is a great resource for freelancers trying to integrate the Scrum Methodology. We have a community for IM professionals (www.openmethodology.org) and have bookmarked this post for our users. Look forward to reading your work in the future.
Gdynia Lakiernictwo
February 9th, 2012 at 3:43 amBlacharstwo Gdynia
Biggest Online Casinos
March 5th, 2012 at 7:19 amRegularly internet casinos ask for people to choose one through a number of signup bonuses. Although this particular preference could possibly supposedly look to be rather simple, it is really not so. Most beneficial 100 % free bonus deals you can find.
in orlando
March 12th, 2012 at 8:14 amI have discovered some significant things through your blog post. One other thing I would like to say is that there are lots of games on the market designed specially for preschool age young children. They include things like pattern acceptance, colors, dogs, and models. These typically focus on familiarization in lieu of memorization. This helps to keep a child occupied without feeling like they are studying. Thanks
Trackbacks