GTD for Software Development at PayrollHero.com

We have been practicing different aspects of Getting Things Done (GTD) from David Allen at PayrollHero.com for the past year and in our previous projects at ubertor.com and outsourcingthingsdone.com for the last 10 years. It is a great way to manage all the different items that we have in our minds

I had an opportunity to get a refresher course in the basics from Tim Stringer GTD coach, entrepreneur and founder of technicallysimple.com. We were hosted by the good people at The Office on August 29th, 2012.

Have you ever felt overwhelmed keeping track of all the things you need to do? If you do then you should consider reading Getting Things Done.

My main takeaway from GTD is your brain is great at thinking not at remembering. So you should develop systems that you can trust so that you can get all your ideas, dreams and projects out of your head.

In this article I would like to take you through PayrollHero.com process of GTD. This is our own particular flavour of GTD so feel free to tweak it for your own purposes. As I deal mostly with organizing tasks to be developed by our engineering team I will be drawing many of my examples from there.

The ideal usage of GTD will allow you to maintain your perspective on your goals and control of your tasks. This is done by making decisions on actions and outcomes and regularly reviewing work that you have taken on. We have 5 levels of perspective and do 5 things to do to remain in control of our tasks. Our goal is not do more or less here we want to do what is needed and have a trusted system in place so that we do not lose track of anything and take the appropriate action at the appropriate time.

How We Keep Perspective

  • Level 5 – This is our Big Hairy Audacious Goal (To coin an over used phrase) for PayrollHero. These are the 3 or 4 reasons and goals we hope to accomplish in the end with PayrollHero.com.
  • Level 4 – The major theme within PayrollHero.com. PayrollHero has five major themes Scheduling, Rollcall, Attendance, Payroll, and Human Resources. Here we try to define what the vision is for each of these themes.
  • Level 3 – Features are like a new project that is going to add some functionality to the  system. This is were we determine the overall purpose of the feature.
  • Level 2 – Enhancements are individual tasks that make up the feature
  • Level 1 – Tickets are similar to enhancements but are smaller in scope. These are usually Bugs, Tweaks, and chores.

How We Maintain Control

1) Collection

We collect all ideas into a central repository for task. For this we use a web app called Asana.com and we use Googles Drive to share assets like pictures, mock ups, and drawings.  All these ideas are organized into the perspective levels so they can be evaluated later. Anyone form the team can submit an idea.

2) Processing

All this stuff needs to be processed and evaluated. We set aside a specific chunks of time our different task boards depending on the needed frequency. For example: We process bugs daily but Enhancement, Tweaks and Chore get processed weekly.

3) Organize

We normally do this at the same time that we process new items. This is where we prioritize our Backlog and usually happens right after we have processed all the new tasks.

4) Review

Next we review the other tasks in the list to make sure that we have everything needed so they can be worked on by the appropriate people. This can be done at the same time as you organize all your tasks. This is also made a lot easier if you are able to brake your tasks into chuncks that will only take at most a day to complete.

5) Do

Now that everything is processed, organized, and reviewed the appropriate team member can start to do work. This is our pre-defined work. We have a pretty strict ticketing system so there is very little unplanned work. When it does come up we have to say to ourselves. This is going to distract us from our my main goal today do I have to do it now or can it be deferred until later. 99% of the time it can be deferred until later and gets ticketed. Otherwise it gets incorporated into the ticket that was already being worked on. Lastly it is really important to schedule time into your day and week to define work this is were you can review your tasks

If this looks like work that is because it is, my position is pretty much dedicated to doing this day in and out, but it pays out huge dividends in what we get done and having the trust that we haven’t forgotten anything

Thanks for reading. Do you have any best practices for completing work?

Do You Work to Live or Live to Work?

I find myself reflecting on past travels from time to time…

Today I was reminded of a vivid bar night that took place while visiting some friends studying at the Sorbonne. It was 4am and I got into a conversation with a Swiss-German Tech Entrepreneur over how Europeans Work to Live while he thought that North Americans Live to Work.

I like to think we build companies with the spirit of Let My People Go Surfing.

So, how does “working to live” get implemented at the PayrollHero.com Whistler Office?

I guess like all things – It all depends…

There are many work schedule options anyone can elect to participate in including:
  • 4×10; three day “weekend” every week.
  • 5×9 and take every other Friday off.
  • Late morning start so you can ride the powder.
  • Work weekends and play weekdays when the hills are bare.
Pretty much we’re open for anything as long as you:
  • Have consensus with your pair if you are pairing on a new critical feature.
  • You attend the Weekly Engineering Meeting (Monday’s 15:07-16:07).
  • You present at the daily huddle on the days you are working 16:37-16:52.
  • If you are working on a new feature; you would be expected to attend all ideation meetings.
We understand and encourage the need for flexibility on snow days in the winter and 30 degree+ days in the summer.
What sort of work schedule would you be interested in?