If you want to get out of the dilemma of Android involution, what do you need to do to match your resume to a big manufacturer?

Insert image description here

Involution is a term that has appeared frequently on the Chinese Internet in recent years. It is usually used to describe excessive competition and internal consumption in a certain field. Intuitively speaking, this concept is "inward evolution". More broadly, all consumption without substantial meaning can be called involution. In life, many repetitive tasks that seem to strive for excellence are actually performed within the internal scope rather than expanding outward. This can also be regarded as a manifestation of involution.

The IT industry is an industry that is relatively prone to involution. On Zhihu, there is a question about whether programmers will become a very involuted profession, which has been viewed more than 5 million times.

Insert image description here

Programmers usually learn basic programming techniques in three years of work experience, and the remaining time is just repeated CURD operations .

However, technology iterates very quickly, and many programmers work safely in the comfort zone of large companies, but the lack of progress actually means falling behind, and therefore being uncompetitive in the market.

Jonathan Nelson, founder of the Silicon Valley social network Hackers/Founders, once said: "If you have been fired from a large company after working for more than 10 years, your technology will be six generations behind."

In order to avoid being eliminated in the competition, programmers need to continuously improve their competitiveness. Involution tells us that surface delicacy, complexity, and exquisiteness do not equal high-level, let alone advanced. To get rid of this delicate, complicated, and seemingly dedicated state of involution, we need to stand at a higher level and continuously break through, innovate, and create outwards, and return to the new normal of upward growth.

Thankfully, many programmers have realized this. Currently, the main way for many developers to continue learning is through self-study. There are also some programmers who teach themselves a new language, framework or tool. I hope that more and more programmers will be aware of the problem of involution, actively improve their competitiveness, and jump out of the whirlpool of involution.

Insert image description here

Why is your resume (ability) not suitable for big companies?

In my opinion, there are two main reasons for this situation:

First, there is no clear learning path, and knowledge is fragmented and unsystematic.

Most junior and intermediate Android engineers who want to improve their skills often have to explore and grow on their own. The unsystematic learning effect is inefficient, long and unhelpful.

If your knowledge is a circle, the larger your circle is, the larger the world outside the circle will be.

Second, there is a lack of competence in programming capabilities, programming ideas, algorithmic capabilities, and architectural capabilities.

I think a programmer who can reach a salary of 20,000 yuan has relatively low algorithm requirements. No matter how advanced it is, it can only be a red-black tree, but he must know the basic algorithms of sorting and querying. Programming thinking is a must. If you ask me about AOP and IOC, you should at least be clear about it. I don’t say that I have used every design pattern, but I can understand a few.

Programming ability is not easy to evaluate directly, but you can easily answer a question like sorting 20 million users according to their names and ages. The last thing is architectural capabilities. This does not mean that you need to design a system that is awesome and highly concurrency. At least it requires you to have a clear idea and direction when building a system.

In response to these two questions

Here I would like to share with you a set of "Advanced Materials on the Eight Modules of Android" written by Alibaba's senior architects to help you systematically organize messy, scattered, and fragmented knowledge, so that you can systematically and efficiently master all aspects of Android development. Knowledge points.

Due to the large content of the article and the limited space, the information has been organized into PDF documents. If you need the complete document of "Advanced Materials on Eight Modules of Android", you can add WeChat to get it for free!

PS: (There are also small benefits for using the ChatGPT robot at the end of the article!! Don’t miss it)

"Advanced Notes on the Eight Modules of Android"

Insert image description here

Compared with the fragmented content we usually read, the knowledge points in this note are more systematic, easier to understand and remember, and are strictly arranged according to the knowledge system.

1. Source code analysis collection

Insert image description here

2. Collection of open source frameworks

Insert image description here

At the same time, a WeChat group chat robot based on chatGPT has been built here to answer difficult technical questions for everyone 24 hours a day .

picture

Guess you like

Origin blog.csdn.net/Android_XG/article/details/132806232