Recently I saw such a post on the Internet:

Android development, coordinates magic: so far has been unemployed for six months, looking for a job, especially the last two days really bad mood. Either there was no interview, or the salary was not up to expectations (HR lowered the price too hard, the original 19K is still not available). I just broke down and cried (which was really embarrassing) before I decided to post. To tell the truth, the current state of mind, alas, too collapse.

As a technical Leader and lead programmer, I interviewed over 100 candidates for the position of software engineer. Actually, I think the key to an interview is to position yourself. The same netizen also said it was not that there were no job opportunities, but that “the salary did not meet expectations.”

The question then arises: is this “expectation” reasonable? Why should programmers with the same number of years of experience earn so much more than other jobs?

Programmers are just ordinary brain workers. Don’t let the wind get in your head.

Should you be paid for your years of experience?

To this question, I really want to say that how much experience really has nothing to do with how much money you get.

In the same year of experience, one person can only get 10K, while another can get 20K, the reason is that two people’s technical ability is not the same.

Your skill is good, you can be more than others pay; It’s a real problem that if you’re not skilled enough, you’ll get paid less. So salary is only related to skill, not your so-called experience.

If you just want to know what the industry average salary is, look directly at the local companies. If you don’t think you’re making the industry’s average salary, don’t be afraid to jump ship.

How to increase salary through job-hopping?

Step 1: Organize your body of knowledge

What about programmers? The most important thing is to have their own technical knowledge system! As the saying goes: “No rules, no fangyuan”, have no a good and complete system of knowledge, to say the programmer the road difficult to walk, if say you are lucky to go, in the end in the face of all kinds of “midlife crisis”, want to walking technology, technical depth is not enough, want to do management work, the company have more than one older programmer, you And you may have all kinds of relationships in the company, and you may end up being laid off. This is what we call a “career crisis.”

So, as soon as possible establish own knowledge system is the best solution to the “professional crisis”, a friend without his knowledge system can be controlled below the seven modules of the Android development core knowledge notebook, tease out their intellectual blind area, the note inside the technical points of mainstream technology of the ali P7 hillock, completely Arguably our best advanced notes for Android programmers.

Mind maps

Corresponding notes

Step 2: Deal with third-party libraries

With the continuous development of Internet enterprises, more and more modules in product projects, user experience requirements are becoming higher and higher. It is more and more difficult to achieve the purpose of small steps and quick iterations. There are 65535, mutual calls between applications and other problems, and plug-in technology application is born. Without plug-in technology, meituan and Taobao, which integrate a large number of “apps”, would be several gigabytes in size.

As a result, Android mobile development today is not hotfix, plug-in, componentized, and 80% of interviews fail.

The ① Brain map +② “Ali P7 Complete Set of Core Knowledge Notes” +③ “Third-party library Notes” are all shared for free. However, due to the Posting mechanism, I can only show part of the chapter content and core screenshots in the article. If you need the full HD PDF version, you can go to my GitHub to get it for free.

Think through the interview questions to clarify the interviewer’s thinking

Now you can prepare for next year’s golden three silver four, for Android programmer interview, I want to say, be sure to brush, brush, brush. In general, you still need to know the interview questions thoroughly, then the chances of getting an offer will be better, in understanding these interview questions, you can learn to solve any interview problems by learning the way of thinking.

Here are some interview questions I’ve compiled recently:

The last

In fact, for our Android programmers, there are too many knowledge content and core technology to learn. If we want to not be eliminated in the future market, we can only build up our knowledge system in advance, do a good job in learning planning, and constantly improve ourselves in learning, so as to go on in the cold winter of the Internet market.

Remember, we always adapt to the environment, not the environment to adapt to us!

All notes in this paper are included in the open source project”Lot”, you can help yourself if you need.