We first make out habits, and then our habits make us. ~ John Dryden

Success is not an overnight phenomenon as media portrays. It requires hard work, persistence, and resilience. The journey to success is boring from the outside but fulfilling from the inside. The daily repetitive tasks, the habits, make this contrasting impression. These habits embody our purpose and ultimately define who we are.

Being a late starter in the software craft, it was evident from the very beginning that I’ll have to maintain a set of productive habits to keep myself on the success track. As software products, finding the correct practices that work for me have taken a lot of reflection and continuous iteration.

The journey continues and I’m going to share my current productivity habits hoping that some of them might be useful to you.

Daily Workout

There are reasons why I’m putting this at the top of the list. In September last year, I was feeling that the body is not supporting me enough sitting and tackling software problems and things had been moving downwards for some time. It was as if telling to take care of it. After some googling, I started exercising and since then it has dramatically increased my fitness level.

The process of solving problems in software engineering consumes a lot of brainpower. Daily workout improves the thinking and learning skills which are essential for a successful career in this field. It helps to reduce stress and prevent depression. Overall, the positive vibes you get from the workout easily translates into the work and the other areas of life.

Every day I devote 20 minutes for a workout. It does not involve any type of equipment. You can view this youtube playlist and start working out if you already don’t do it.

Applying The Pomodoro Technique

The Pomodoro technique is a time management method where typically 25 minutes of focused work is followed by a short break of 3-5 minutes. After four focused periods, there’s a long break of 15-30 minutes. I have set the focus duration to 30 minutes, a short break to 3 minutes, and the long break to 5 minutes. You can customize your time slots as it works for you.

If something comes up during the focused period, I pause the timer and address it. After getting that done I again go back to complete the remaining minutes. I walk around during the break as it helps to refresh the eyes from screens. It also activates the diffusive mode of thinking. This is why it is possible to be in the flow state during the breaks. I often find myself finding novel solutions to the problem while taking breaks.

Following this technique enables scheduling tasks. Gradually as you become more experienced, You will know how many Pomodoro’s are required to complete certain tasks and plan accordingly.

The 15 Minutes Reading Rule

The 15 minutes daily reading habit does wonder for students hence it is called the magic number. It applies to the professionals too. I apply this technique to continuously learn.

Continuous learning is the key to the software engineer’s career growth. We often prefer visual learning i.e. watching tutorials or conference talks. While most conference talks expose us to unique perspectives, most tutorials teach the basic usage of tools and only scratch the surface of a concept. Tutorials show you how but books describe why. Books come to the rescue here by diving deep into the language or concepts. I prefer books for learning core language concepts, design patterns and architectures. For a quick overview of the specific tools, I resort to the video tutorials or articles.

Minimum 15 minutes is something we all can accommodate in our daily routine. It is possible to read 3-5 pages of a book in that time frame which accumulates over time. Previously, I used to allocate this slot while traveling to work. Now I live close to the office so the reading happens at the beginning of the day.

Keeping personal learnings first

Pay yourself first is common advice in personal finance. The idea is to put some money into your savings account before addressing all other needs and wants after you get the paycheck.

I take care of my learnings at the beginning of the day. This ensures that every day I learn something through conscious effort. I learn a lot from the day job too but often the learning does not go towards the direction I want. Having some control over learning makes me feel productive.

When you’ve already exercised control over some of the things before going to work, you’ll feel a sense of relief. That sense, in turn, will make you more productive in your job. Try it. You’ll get the feel.

Before wrapping up, I want to tell you that do not forget that you are a human. It’s okay not to work out or not to read in some days. Every day is not going to be the same. Let the things go loose in one of the weekends. For example, you may choose to break the rules on Sunday. But always come to the track the next day.

Going off the track and then returning will prevent burnouts. After personal learning and the regular job, whatever free time you get, spend those with persons who care for you and whom you care about. Set healthy boundaries and be happy.

What are your current productive habits? Please share in the comments!