Getting Things Done

Getting more things done is something everyone wants. However, some people are better than others and can do more. Experience and Deep Technical knowledge play a hugely important role in this equation however there are other mindsets and tricks you can do to boost your productivity. Today I want to hare some of the tricks I'm doing over the years to boost my delivery hopefully it will help you do get more things done.  First of all, you need to understand the top 3 enemies of productivity: (A) Meetings / Interruptions, (B) Self-Pressure, (C) Lack of Clear Goals. First of all, meetings need to be bounded, you really should carefully pick how many meetings you do per week because meetings often can be very low on value because people often dont have a clear shared agenda, do not prepare well for the meeting and dont have a clear outcome or list of clear actions, having said so, meetings tend to proliferate, you really need to avoid meetings proliferation and get more outcome if you are doing a meeting. Meetings are kinds of interruptions, there are companies that believe they can only get things done by doing meetings, this is so old school and it could not be more wrong.

Avoiding Meetings and Interruptions 

You should carefully plan how many recurrent meetings you have, their meetings that need to happen like DEMOS, Retrospectives, Coaching Sessions, Weekly Meetings, Trainings. Aside from that, you should avoid as many meetings as possible because you can get pretty much anything done without having a meeting. I get tons of things done working with my boss and we do very few meetings, how I managed to do that? Async comunication like Chat and email. I might do 101 calls when there are urgent matters but this is fine because you are not stopping the whole team. Several companies have a culture that they can only work if they involved everybody in a meeting which is not true at all.

Meetings are only one kind of interruption, social network, small talking is other kinds of interruptions. Engineering requires focus and silence, BAD managers have difficulties to understand is almost impossible to deliver engineer work(architecture, design, coding, testing) with interruptions happening at all times.

You really should shield your team against interruptions, limiting meetings and add then to a regular calendar is a good practice. Often too many interruptions and meetings could mean(smells):
* Lack of proper roles and structure
* Lack of consistent and strong leadership
* Lack of understanding from management how real software engineering works
* Heavy Workload - working with fewer people than you should have.
* Lack of context - having a partial view could introduce resistance 

Agenda Hacks

Controlling your agenda is one of the most important things you need todo. Otherwise, people will just book meetings all the time. You should have SLOTS witch are booked times in your agenda that make easier for you to:
* Schedule meetings easily
* Limit Meetings
* Get more things done

By managing and reducing interruptions you will get more focus and get more things done. There are several ways you could manage your agenda, first of all, you could book 1h every morning for meetings(meeting slot) so this way if someone asks you a meeting you can do every day and if 3 people ask meetings on the same day, well you overflow to other days. This limit mechanism forces you to have a better and clear priority since you will limit your work. I worked with multiple layouts, having meetings only in the morning, having meetings all the time, currently what works best for me is condense my meetings in 2(first 2 days of the week) therefore having 3 days without interruptions and meetings. I realize I get much more work done and my work-life-balance works much, much much better. There will be exceptions, which are okay, however, overall is important to save this layout otherwise the structure falls apart and loses its value.

Clear Communication is a requirement for remote work

Remote work cannot happen without clear communication, context, and clarity. These 3 simple elements often are the reason why people need meetings because they cannot understand each other because people do a very poor job communicating. However, if you force your self to have better Context, Clarity and Clear Communication your chats/emails will be much more effective and the need for meetings will drop.

Often times people are lazy to write/read and are more comfortable to have a meeting, however, a meeting has a higher price. Overall is fine to have meetings for critical matters however as a long-tern goal you should focus on improving you communication skills over chat.  There are multiple tools you could use to easily communicate batter remotely like Design / Diagram Tools, Blogging, Video Recording. All these tools have lots of benefits like:
* They scale and you dont need to have meetings
* As you add more people you can send links and dont need to explain twice
* They dont block your whole team and people can read/watch in different times
* Videos + Images are great for people because visual tools make understanding easier

Video + Slides

Here is a video I recorded talking more about the subject with a companion slide deck.

Video


Deck


I hope it was useful for you. 

Cheers,
Diego Pacheco

Popular posts from this blog

Kafka Streams with Java 15

Rust and Java Interoperability

HMAC in Java