This article is originated from Michael Shpilt’s blog, Michael’s Coding Spot.
Deck the halls with boughs of holly, it’s that time of the year again! The end of the year is a perfect time to review ourselves in light of last year’s resolutions and make new ones. Instead of coming-up with new ways of chastising yourself in 2020, how about choosing to make your everyday life better by adopting a new attitude towards your work? One that will help you achieve your professional goals better, faster and thereby make you happier and more relaxed?
An efficient high-performance software developer is an incredible asset to any team. Companies are willing to pay them top dollar and the competition to hire them is fierce. We packed this two-part article full of helpful tips to help you become one. These tips, accumulated over a decade of personal experience and working with top-notch developers, will help you optimize your performance greatly as well reduce stress and increase joy on your job.
1: Adopt a high-performance mindset
First and foremost, you need to want to become an efficient, high-performance developer. A high-performance developer arrives to work each morning intending to achieve as much as possible on that day. This is the prime directive and what you need to keep in mind while working.
Being high-performant comes with many rewards. Career wise, a productive developer is a huge asset. You will get raises, promotions and better feedback. In addition, high productivity turns into a game at some point. Completing tasks is fun, simple as that. Another advantage is work experience. If you are doing twice more tasks in a single day, then you also have doubled your work experience.
2: Write down your daily goals
One of the most effective productivity tools is writing a simple list of your daily goals. Write down what you want to get done at the beginning of your day. Then, as you go on with your work, cross items from the list. The simple act of crossing items off your to-do list is very satisfying. In fact, it’s hard-wired into our brain. When we succeed in something, our body releases dopamine, which immediately causes us pleasure. This, in turn, causes us to want to repeat that pleasure and do even more work. In other words, lists increase your productivity and make work more fun.
3: Plan how to approach your immediate task
Before coding, debugging or even touching the keyboard – take a moment to think. How are you going to approach your task? What classes are you going to create? Where are you going to set breakpoints? What technical obstacles might you encounter?
You should ask yourself all these questions before anything else. Once you build an approach plan in your head (or better, on paper) you can plan your exact steps. This results in an organized and efficient workflow. It will focus you on your task at hand and prevent useless time-wasting adventures. Your productivity will sky-rocket as a result.
4: Keep calm
Programming can be a lot of fun but it also can be hard and frustrating. Sometimes you may not even know how to begin handling a task. Sometimes you evaluate a task will take 2 working hours and it ends up taking 2 days. And we still haven’t mentioned dealing with deadlines and context-switches.
Maintaining your calm is the key for getting things done. Getting angry and frustrated will cloud your mind and you’ll end up spending even more time on the task or adding bugs. Obviously, keeping calm is easier said than done. Everyone has their own techniques for that. As for me, remembering I should be calm usually does the trick.
5: Take breaks and work for pre-determined periods
There are several explanations why taking breaks helps with productivity. For me, it breaks down to these two:
- It’s easier to focus on my task when I know I’m going to work for a specific period of time. I work with the Pomodoro Technique, where you work for 25 minutes and take a break for 5 minutes. While I’m on my 25 minutes, I feel no pressure to check my Facebook, answer messages or context-switch. I am fully committed to my immediate task in those 25 minutes. Then, for 5 minutes I can do whatever I please.
- Taking breaks helps me think and figure things out. I probably solve more bugs in the bathroom than in front of the computer. There’s something about getting up, taking a small break and thinking about other stuff that works like magic.
We will publish the second part of this list shortly. In the meanwhile, we would love to hear your thoughts – Which tip do you expect to have the highest impact on your daily work? And now that you’re on the road to being a more effective developer, you might want to check out this blog for 6 commandments to writing better code.