How tired and hard is an Android programmer with an annual salary of 60W? A high praise pierced countless people's hearts

Why do I often hear programmer friends say that they are too hard and too tired? In fact, the reason is very simple: hard work, high competition, and difficult technology to get rich.

Hard work:

There is news that a leader asked his subordinates to reply within ten minutes in the WeChat group at 10 o'clock in the evening, and an employee was laid off for not responding in time because of an early break.

For programmers, there are still many people in the company at ten o'clock in the evening, waiting for the release. Even in the middle of the night, when the phone rings, the programmer has to get up and check the processing within ten minutes. After all, if the system is down, the processing loss will be a few zero a minute later.

Choosing a career as a programmer is to choose the standby mode of 7*24*365. You can go out without a wallet but you have to bring a vpn with you. Maybe the programmer has to stop and open the computer to solve the bug on the day of the wedding.

Great competition:

There are too many job seekers eager for quick success and quick profit in the IT industry, batch after batch of code farmers in training schools. Ordinary people can get a job after half a year of training in the training school, with a monthly salary of more than 10,000 yuan; senior students don't like this major, and they can find a good company to get started as an intern by learning with this book.

Technology is difficult to get rich:

Wages do not rise, housing prices are soaring, and the feeling of growing up with the company is not as cruel as reality: the pie drawn by the leader has not materialized, and the temples have turned white before the age of 30, and the back is sick, and the salary is still So point. Classmates on the same starting line have already turned over their salary when they change jobs. Why should people hang in a tree?

Let's take a look at a high praise comment on Zhihu:

When the code level is not high, I can't finish working overtime every day, and I actually like it.

With the improvement of the code level, there are fewer and fewer comments and fewer words.

I talked less and felt that the atmosphere in the office became a bit depressing, so I left and changed a company.

The new company is still so busy, so I often imagine that I can relax when I am old, but I find that my forehead is getting bigger and bigger, my eyes are getting bigger and bigger, my arms and legs are getting thinner, my belly is getting bigger and bigger. I am old, but I have to work overtime.

Finally one day they were promoted and a few helpers came, but their level was not high, and they couldn't finish working overtime every day. They said they actually liked it.

These new subordinates always work overtime and it is not helpful, introducing more bugs than solving bugs.

So I worked hard every day to help them, asking them to write code well, so that they could write less comments.

Finally found that their level has gradually improved, writing less and less notes, but also less and less words.

Without talking, it seems that the atmosphere in the office has become a bit depressing. Finally, my subordinates told me that I had resigned next month. This strange feeling seemed to have changed a company.

So I became more busy, and I always imagined that I could relax when I was old, but found that my forehead was getting bigger and bigger, my eyes could not see clearly, my arms and legs were getting thinner, and my belly got bigger and bigger. Have to work overtime.

It goes back and forth...

I feel that life is no more fun

Seeing the work experience of this buddy, coupled with the understanding of this industry for several years of work, I have a deep insight into the following points:

First: Each industry has its own hard work, but you don't know it, you always think that others are the best.

Second: We need to control our desires and do the right thing so that we are not tired.

Third: Good programmers are not tired, they are not tired, because they can get a sense of accomplishment from it.

Fourth: If you feel tired, then you have to go back to the original point and ask yourself why you want to be a programmer, whether there is any problem with the method of work, whether you have mastered the common basic knowledge points, and whether you still have a core competition force.

Fifth: Programmers also need to constantly improve their technical level. There is one thing that is particularly proficient. Don't wait until one day is persuaded to leave, then you will be caught off guard.

How to improve learning?

To a large extent, the purpose of improving learning is to change jobs and raise salaries. Of course, bad luck may be persuaded to find a job again. In either case, the ability to learn independently is necessary, and there must be a direction and there must be Focus.

For Android mobile development, the hot fix framework, plug-in framework, component framework, image loading framework, network access framework, RxJava responsive programming framework, IOC dependency injection framework, recent architecture component Jetpack and other Android third-party open source frameworks are What must be mastered to enter a large factory is also often asked in interviews. I have compiled a list of information and paths here, which is 1042 pages long! I believe that after reading this document, you will have a deeper and more systematic understanding of these Android third-party frameworks.

Due to the excessive content of the document, in order to avoid affecting everyone's reading experience, only part of the content is shown in screenshots. The detailed and complete version of the 1042 [Android Design Idea Interpretation Open Source Framework] can be obtained by [click me] .

Chapter 1: Hot Repair

1. AOT/JIT & dexopt and dex2oat
2. CLASS_ISPREVERIFIED problem of hot fix common problems
3. Hot fix principle
4. Tinker integration and use (automatic patch package generation)

Chapter 2: Pluginization

1. Interpretation of the structure of Class file and Dex file
2. Detailed explanation of Android resource loading mechanism
3. Calling principle of four major components
4. So file loading mechanism
5. Implementation principle of Android system service

Three: componentized framework design

1. Alibaba open source routing box-ARouter principle analysis
2. Automatic code generation & dynamic class loading during APT compilation
3. Java SPI mechanism
4. AOP&IOC
5. Handwritten component architecture

Four, picture loading frame

1. Picture loading frame selection
2. Glide principle analysis
3. Handwritten picture loading frame actual combat

Five, network request framework

1. Essential foundation for network communication
2. Interpretation of OkHttp source code

Six, RXJava responsive programming framework design

1. Chained call
2. Extended observer mode
3. Event transformation design
4. Scheduler thread control

Seven, IOC architecture design

1. Dependency injection and inversion of control
2. ButterKnife principle
3. Dagger architecture design core decryption

8. Android architecture component Jetpack

1. How LiveData works
2. How does Navigation solve the tabLayout problem
3. How does ViewModel perceive view life cycle and core principles
4. Room architecture method
5. Why does DataBinding support MVVM?
6, WorkManager kernel decryption
7, Lifecycles life cycle

The above information is free to share, if necessary, you can [click me] to get it.

Guess you like

Origin blog.csdn.net/zhireshini233/article/details/109407223