On Productivity
Feb 10, 2019

Being productive is difficult on its own, and being productive as a software engineer is even more difficult. Software engineers use their computers or phones all the time for work, and these two devices are the cause for low productivity in many cases. Moreover, the field of software engineering and software development is moving so rapidly that catching up with the new technology is proved to be futile. Hence, being productive is a challenge. I have collected some tips over the year that I hope you would find helpful.

## Avoid emails

This could be your story, and it used to be my story: I spent too much time reading emails. Here are some tips that I hope would help you manage your time with emails:

• Emails do not require immediate responses. If you get an email, fight the urge or reading it immediately. Ignore it. Because you know regardless of what email it is, you can respond to it later. If this is urgent, they will call you, or even come to your desk. People would like a quick response to their emails, but they will not mind a delay (an hour, two hours, or even 4 hours). So you don’t need to take each email as an urgent email. You can close the email client completely, or even uninstall it and use the web version if you want.
• Emails can be done in batches, and at your least productive time at at people’s least productive time. When you are productive the least, do your emails. Do not do your emails in the morning, because you will get a response quickly from your co-workers, and your work is lost. Rather, I suggest that you respond before you leave home. You will not get response from people who are already gone, and you will not be distractive by their responses until the next day. So why waste your time?
• Not all emails need to be read. Unsubscribe to every mailing lists that prove unhelpful. Mark senders as spam if they do not unsubscribe you. If a mailing list tends to be unhelpful, but they rarely put helpful information, then unsubscribe to it and ask one of your coworkers to let you know if there is something important that comes up on that mailing list. Sometimes, even emails from your coworkers are not helpful. Some went to suggest that any email in which you are listed as CC is not important and therefore you should not read it. It is you who can decided what is important and what is not.
• Email is not the only communication medium. Sometimes, you don’t need to respond to the email by an email. If you can call, or walk to the sender desk, then you should, and save yourself some time. If the email is related to miscommunication between many people, then schedule a 5 or 10 minute meeting to clarify. Don’t think that emails is the only way to resolve questions.

## Automate

Automate all the things.

It will surprise you, but you might find many tasks during your day that you can automate. If it is how you filter your emails, then consider a rule in your email client to do this job. If it is checking ERROR logs on a server, then write a script that automatically logins to a server, run a grep to find errors (or better yet upload the logs to a central place). The possibilities are many.

But finding these opportunities requires patience and discipline. You need to think about every task you do, and ask yourself: have I done this before? If yes, then it is an opportunity to improve. At a company I worked for, every time we want to approve an updated version of a software, we had to submit a request and send an excel sheet with the package/library info. This can take a while. So after realizing how time consuming this task is, I decided to automate this process, to read all the packages approved, check to see if any of them has been updated, and then create an excel sheet based on the result. So this task that usually took few hours, took a minute after the automation. And it was automated to send an email with the list of packages to approve every week, so that I do not have to babysit this process anymore.

The bottom line is: there are many opportunities for automation. Finding them is not easy.