As an independent contractor working on software projects, nobody is standing over your shoulder that you can call “boss.” There isn’t a strict set of coworkers around you. You won’t always know what to expect from day-to-day. Priorities will forever continue to change, but you still need to be focused on delivering exceptional value for your clients.
Who exactly is your client? A false Trichotomy:
- The Product Owner / Person paying for your work?
- The Product Owner’s Users / People who will use your software?
- Your teammates / People whose success depends on your delivery?
All of these people are your clients in one-way shape or form, but the only person whom you have contracted to work with and be paid by is the Product Owner.
Tracking Your Time
When should you be tracking your time? Always. No matter what you’re doing, you need to find a way to fit regular time monitoring into your workflow. Without the ability to consistently track your time, it will be impossible for you to have an accurate record of what you spend your time on.
Time tracking is essential. Are you checking the email? You should have a time log entry set up for that. You probably check email every day, so track that time.
Slack Driven Development
What about reading slack? It’s tough to track your time as you flip through slack channels, and no one is going to pay for that. An excellent question to ask yourself is “What am I working on right now?” As you get better at tracking your time throughout your workday, this will begin to come naturally. It will become more comfortable over time, and this discipline will improve your productivity, due to heightened focus.
As soon as you find yourself diving into the rabbit hole, you should quickly identify the task that you need to give your focus. Start logging time to it, and keep on that task until it’s complete. As you move through your work, it may become reasonable to switch to another function within the same project. Context Switching comes at the expense of productivity, so it’s important to do your best to stay focused on task once you start the clock on it. Over time, you’ll find yourself consciously assessing the tradeoff between switching projects and merely continuing on the project that you already started on.
Always Be Delivering Value
While you’re flowing through your tasks for the day, you may notice that you are already .75hrs into a task and you haven’t been able to create any value in the time you’ve spent thus far. It could be a good time to pause and consider the work that you’re doing and the reasons for the apparent lack of production during this time.
In some cases, you may find that this can be an indication that the approach needs to be re-thought. Many times I’ve seen myself in this situation, only to re-assess, and within the next .25hrs, discovered a new, more straightforward, more efficient way to deliver the same value that I had intended to when I sat down to work on that task. I’ve now managed to spend 1 hour and provide what I expected to. I’ll undoubtedly bill this full hour to my clients because I spent the first 45 minutes discovering how to deliver the value in the first place.
In other situations, after 45 minutes, you may realize that you’ve learned enough to produce some artifacts from your findings. This artifact can also suffice as value delivery in the right circumstances.
What If You Didn’t Accomplish Anything?
Sometimes, you’ll spend 45 minutes of work on a task that a client didn’t ask for, but you wanted to take the initiative. You should scrutinize this sort of work very carefully. How does the client receive this value?
If you can’t answer that question well, then don’t log the time to the client’s account. There is some risk we take on as freelancers, and if you’re not producing value, you cannot bill the time. Take what you learned from your investment of your time, reintegrate it with your understanding of the solution you’re implementing, and bring it to your team for consideration. Perhaps the team can find a way to make your initial research valuable, and if that’s the case, you’ll likely be the one tasked with working on the new deliverable.