Time TrackingΒΆ

We use [Freckle](http://letsfreckle.com) as our time tracking tool. It has resonable pricing tiers and is one of the most beautiful, intuitive and useful apps on the internet.

# People

Every employee has one account. Freelancers can also be added as users, they are not able to see every project.

# Projects

For every customer project we create a project in Freckle.

If one customer gives us several different projects, we would also create several different projects in Freckle. In this case we would group the projects alphabetically, by giving them similar names like CN: Foobar and CN: Barfoo (where CN is a shortcur for the customer name).

Additionally we add one project for our own company. When we have company meetings that are not related to one specific project, we will track the time here.

Finally every team member get’s their own project as well. When you are doing some research about some new technology or working on a personal side-project and you feel that the work could be (some day?) relevant for the company, you can track your time here.

# Tags

Every entry should have a tag. We try to keep the list of tags as short as possible. If you are not sure about the available tags, just have a look at the tags page on Freckle. If you think that we will need a new tag very often in the future, announce it to the team and describe the reason.

Currently, we have the following tags:

## django

This is the core competence of our company. Our day to day web development is tracked under this tag. If the gros of your work was writing .py files, you should probably tag it as #django.

## html-css

This is the second most important tag that we have. It covers anything that touches html, less, sass, css files.

## js

JavaScript and jQuery related tasks will be tagged as such.

## design

When doing work in Photoshop or just quickly creating vanilla Bootstrap markup for a prototype, it should be tracked as #design.

## open-source

Sometimes we have to update old open-source apps or react to issues or pull-requests. This is usually not covered by any customer budget, so it should be tracked as #open-source on the internal company project.

## documentation

As the name suggests, when time is spent writing documentation (usually user manuals for the customer), it will be tagged as such.

## FREE*

Sometimes we are involved in a customer project but for some reason we don’t want to tag the task as billable hours. In these cases, we add the #FREE* tag to the other tag that describes the task.

## communication

Whenever we talk on IRC, Skype, Hangouts, phone, email or in person for an extended amount of time, we tag the time as communication and roughly describe what the conversation was about (just a few words).

## maintenance

This covers simple tasks like adding content to the CMS. Usually those are tasks, that the customer could do themselves but for some reason prefers to delegate the task to us.

## codereview

Like the name says. When we do codereviews for a colleague, we tag the time as such.

## server

All tasks that are not real programming tasks but infrastructure tasks are tagged as #server. This includes setting up new Webfaction servers, adding cronjobs, running deployments, restarting the webserver and so on.

## infrastructure

When setting up new subdomains or setting up a new server to install an internal tool (like Gitlab), this is not really programming work and it is also not server work (in the sense that we sell this work to a customer). Instead, this is internal infrastrucutre work and should be tagged as such.

## setup

When you need to mess around with your local development environment in order to be able to start working, you can track this time with #setup.

## research

When venturing into unknown territory where new technology needs to be used, a lot of time is usually spent with trial and error, googling, reading READMEs, setting up test-servers or local instances and so on. This time can be tagged as #research.

## finances

Time spent on updating our internal finance tracking app or creating and sending invoices will be tagged as #finances.

## acquisition

Time spent for answering emails to potential customers or spent for meetings with potential customers is tagges as #acquisition.

## management

Anything that doesn’t fit into any of the above tasks but somehow seems to be important to run the company an be tracked with #management.