Soft Skills of Software Development (Part 1)

Soft Skills of Software Development (Part 1)

·

4 min read

The processes of Organizing in Software Development (part 1)

The unorganized beginning

The hard work, long hours, coffee head aches, and crying sessions have paid off, you got the job. You called your family, friends, and old high school enemies. You feel validated and like you can do anything. The first few days go by and you feel like things are going well. Tasks that are given to you are manageable, your manager is happy with your turn around and the senior engineer is approving your completed tasks. Life is looking good and the future is bright. However, there be dragons. A few months go by, your task list is filling up, your senior engineer is less patient answering the same questions over and over. The simple bug fixes you where given has been replaced with feature requests. The tasks pile up and the hours slowly tick down to zero but you see no end in sight. You spend your nights hacking away but don’t know why the code you are writing doesn’t work and each feature you add on top breaks the others. Now the manager who was once happy is now looming over you, asking relentlessly for the status on the tasks you know you haven’t gotten to yet. How did you get here? Why did these once dreamed of ventures turn into a dreaded daily standup where you again have to explain you are still working on the same task you had sworn you’d have done three days ago. Getting the job, passing the interviews, that was the hard part right? Well yes and no, the skills that had been engrained in you, now collecting dust in the mental vault. Slowly degrading to a mush. Luckily, tides can turn from unproductive hacking into worth while, head down coding time which will result in your task board actually getting done and more happy days.

Get yourself a few notebooks

The first step to all of this is having a nice notebook that you can use everyday. Try not to by the cheapest one you can find as they will stay with you for a long time. It should be nice to write in and feel like a second home. Tools are an aid to you, they should not be things that add friction to your life. But rather a calming force that you look forward to using. There is no one right tool unfortunately, as this is a very personal decision and thus has many answers. However, I do recommend a dot paper layout on thick paper stock as that is my preferred writing style. One that has served me well is from a company called moo

Spend time at the beginning of your day writing your day on paper

At the beginning of your day make a bullet list / timeline of the tasks you need to get done in that day. Those tasks can be payed out based on time, category, level of difficulty, etc. Laying out your tasks in such a way that you can break them down into manageable chunks is important. Your days are spent solving problems. Usually managers want you to quantify how much time that effort will take. By boxing your time per task you are assigned you are able to see how much time is left and how much you have done. While I personally have a hard time with a linear task completion strategy. It is the most straight forward to implement and can have great results if it works for you. For those of us who struggle with completing a single task before we move on, there is still hope. Starting by breaking down tasks into what should be done first and what can wait. After setting priorities for yourself you then can jump between tasks in the same importance level. Now there can be trouble here. You then are responsible for getting to the tasks that are lower priority eventually. In the real world this could prove challenging as new work is always coming in.

Part two Coming soon ...

In the next part of this series, we will focus on more organizational strategies, such as the following

- Kanban boards
- Workflow planning schemas
- The other things I will think after I am done writing this.