To improve technical ability requires constant effort and daily accumulation. However, many students will complain that they have no time to improve their skills because they are doing business requirements every day. Yes, most people have this problem.

So, is there a way to address business needs while also improving technology?

Today, I’m going to share some tips on this problem.

1. Ask questions

Many students do the requirements: coding -> test -> bug -> function online, and then this requirement is finished, and then the next requirement, so again and again.

If you do this for a long time, you will find yourself reinventing the wheel and making no technical progress.

If I work in this way, I will only shed tears of regret when facing grade review.

What if it changes?

The first step is to ask yourself some questions after completing the requirements. For example, if you developed a requirement to use RecyclerView to display lists, you could ask yourself:

  • Is there room for RecyclerView writing to improve?
  • How can multiple Item styles be quickly supported? Can back-end control be made?
  • How is an Adapter encapsulated?
  • .

Ask yourself questions, then you will think, then learn, and practice.

In this way, we can improve our technology in depth.

2. Review regularly

Summary is absolutely a hundred try hundred clever recruit.

There are many points that can be summarized for a business requirement. It basically includes the following aspects:

  • Room to improve
  • scalability
  • generality
  • Methodological precipitation

2.1 Space for Improvement

Room for improvement is, after you’ve done a business requirement, you can think, is there a problem with the current business process? Is there room for improvement?

If so, can it be solved through technical means?

Then you can propose some optimization suggestions to the PM or Leader and push it to completion.

2.2 scalability

Extensibility refers to whether the code you develop can support quickly if the PM needs to adjust requirements or add new features later.

We all know that requirements can not be the same, so this requires us to develop a good scalability, can adapt to a variety of changes.

2.3 general

Versatility refers to whether the function you develop can become a common component. If other modules or apps want to use your function, whether it can be accessed at the lowest cost to avoid duplication of wheels.

2.4 Precipitation of methodology

Methodology precipitation refers to whether some valuable methodology can be concluded after the development of this requirement, such as frame diagram, flow chart and so on.

3. The output

If you have completed the first two steps, then you must comb it into an essay.

Output helps you think better, because you have to figure out every detail before you can write. Output also helps you to systematize your scattered knowledge.

4. Be communicative

In daily work, we should learn to communicate and exchange more, participate in more discussions, such as daily meetings and code reviews, and put forward some of our own views. We should not be afraid that what we say will be laughed at. Only by expressing ourselves can we grow.