Many students are in charge of small or medium-sized tasks at the beginning of their career, and the tasks are set by the leader, and you just need to follow the instructions to complete the tasks.

However, with the continuous improvement of experience and ability, I gradually began to take charge of some large-scale projects independently.

As we all know, the difficulty and complexity of large projects are unmatched by small projects. Therefore, large projects always give people the feeling that they cannot be completed, which will cause a heavy burden on people’s mind, because the larger the task, the more difficult it is to know exactly what to do, so that you feel helpless.

When faced with a big problem, we tend to spend more time thinking about the problem than taking action to solve it. Humans tend to take the path of least resistance. When faced with a big task, scrolling through Tik Tok and Wechat moments seems like the easier path, and procrastination follows.

So, how do we overcome this psychological burden to ensure the smooth completion of the task?

The answer: task breakdown.

You have to eat one elephant, one bite at a time. “– Creighton Abrams

How to break down tasks

If I’m given a big task, the first thing I do is find out if I can break it down into a series of smaller tasks.

In fact, task decomposition is not difficult, just need to pay attention to two points:

First, make sure each small task has a clear goal. That is, what problem do I solve in this step?

Second, it can estimate the completion time. If you’re still not sure how long it will take you to complete a small task, you need to keep breaking it down.

For example, let’s say I want to make a client continuous integration system to complete the code packaging task:

Task1: Completes building and compiling programs from the command line

Task2: Completes having the build server check out the code;

Task3: Combine the two.

Second, decomposition problem

The same method of breaking down tasks applies to writing code and solving problems.

Many people find it hard to implement a big feature or solve a problem because they try to solve too big a problem at once.

No matter how hard a programming problem is, it can always be broken down into smaller units.

For example, if I want to implement a difficult algorithm, it would be helpful to break the problem down into smaller modules that can be individually solved before starting the formal coding.

No matter how large and complex an application is, it can be broken down into lines of code.

A single line of code is never more complex than any programmer can understand or code, so if you’re willing to break things down small enough, you can write any application with the ability to write a single line of code.

Reference article:

Soft Skills: A Survival Guide Beyond Code