Possibility and Probability

Coding Python and making businesses…

3 October 2016

Managing projects

by admin

In most workplaces, software developers have someone who tells them what to do and when to do it. Managing projects usually is the responsibility of a Project Manager, Scrum master, team lead, or even just “the boss”. But what happens when you don’t have that guidance? Or of you are working on side project by yourself? Here’s how I manage my projects. If you are going to succeed on a project you’ve got to have a plan. A plan has a start, an objective, and the series of steps that have to be taken to get to the objective. Sometimes at work you won’t get a lot of detail about the steps to get to the objective. On a side project, the objective might be so blinding that you don’t even think about the steps.

So what do I do?

So as your first step: Clearly write out the objective. Then ask yourself “What has to be done to make this happen?” Usually this results in two or three “big” things like “learn this framework” or “write the code”. By themselves, these aren’t too terribly helpful. But… if you recursively ask the “What has to be done to make this happen?” question, you will find those big questions start to break down into smaller steps. At some point you will have a series of small steps. At this point I like to try and take a look and see if there’s any particular order things should be done in. (Or if I’m in the mood for a certain task, etc.) At this point I’d highly recommend using a system like Trello. Simply put your steps into Trello as cards. As you are putting them in there you will probably notice that there are themes between the cards, like some are front-end tasks, others are data modeling task. If it makes sense organize the cards into lists where each lists is a major topic. Once the cards are in Trello, I like to take a minute and try to order them. I like to put the important or need-to-be-done-soon cards at the top of the list. This way later when I’m deep in the work and I need to know what to do I can just look at the list and pull the next card. I tend to have two more lists: “Doing” and “Done”. As I start working on a card I move it to Doing and when I’m done I move it to “Done”.

Let’s talk about Kanban

What I’ve described here is a basic Kanban workflow. There a million different workflows out there, but for me I find this one to be pretty effective. You should choose the one that works best for you. Trello’s format works really well for managing projects because it shows you at a glance what needs to be done and what has been done. Its quick, easy, and free.

But I have a project manager! Can I still use this?

YES! I have often found at work that the boss will set goals for the sprint that are a little bit big. I’m the type of person who needs to have more details to make sure I don’t forget anything. I tend to take my high-level goals, which usually are encoded in Jira, and break them up into tasks that I track in Trello. Yes, I’m managing projects that are already being managed. It’s like inception. This methodology really shines for side projects where you’re the only one on the project. The breakdown of tasks will tell you:

That last one is really nice. You can calculate an actual percentage to tell you (or a client!) how close you are to being done. In the beginning your estimates won’t be 100% accurate. But over time you will find you get better at breaking down tasks and eventually estimating the time to complete them.

In conclusion

When it comes to managing projects, either your own or someone elses, all you need to remember is this: Break big things down. Repeat until things are small. Order small things. Do small things. Get things done. :)