Annual salary reached 500,000 +, also do not necessarily get code code, when a helpless and painful programmer. One of my friends, within six months after leaving his job, rose to an annual salary of 500,000 yuan, simply because my friend set up tea eggs on the street. Just kidding, but back to the point!

If your salary is low, reflect on your skill level first, and opportunity second.

Let’s take a look at the recruitment requirements of an ordinary Internet company

If you want to earn $500,000 a year, you have to meet these requirements.

  • 4~5 years development experience, solid basic knowledge of computer.

  • Strong interest in technology and special expertise in one or more areas.

  • Familiar with design pattern, have experience in framework design and system deployment, have certain control ability of new popular language.

  • High sense of responsibility and team spirit.

Even if you don’t think you fit the above criteria, it’s a good idea to have one of the following resumes:

  • Ten years of development experience: WORKED as a programmer in a large company, and as a technical leader in a start-up company, with one or two unsuccessful start-up experiences.

  • Silicon Valley returnees resume: Silicon Valley returned home, it is easy to get 50W +.

  • Tech geek: 70% tough genes +30% chance to shut down the other person’s Intranet in front of the interviewer.

If, you still feel unable to match, then need to do the following efforts!

Lesson 1: Know yourself and know your enemy

Point 1: How can programmers get 500,000 + a year? That’s a good question

I joined BAT level large Internet company

The following is the salary information of ali for each level

It is not just BAT. As long as it is a large Internet company, it is not a problem for senior technical staff to reach an annual salary of 500,000 yuan.

Ii. Joining a financial giant

If salary is the only consideration, it is a good choice to join a financial company, generally as long as the project manager can easily get an annual salary of 500,000 yuan.

Star startups

Many star companies are very generous to their employees, such as fan Bingbing, a famous actress in the industry, who is not inferior to BAT at all. Of course, the technical requirements are also quite high. It is reported that the real outstanding technical personnel to the star start-up company interview can be directly offered 650-1 million yuan annual salary.

Small companies that make a lot of money

As I told you before, it’s easy for big companies to offer $500,000 +, but it’s often the same for small startups that have just raised a huge amount of funding. It’s relatively unstable, but that’s not a problem if it works.

In addition, there is another kind of company, which is also very small in scale, but the partners are super companies with background, resources and ability. Usually, they are low-key, but a project can make a lot of money. Generally, we can hardly see their founders in the mass media.

Key two: reminders of their own ability and continuous learning

One: Language and habits

Master communication skills

Technology people are often labeled “bad communicators.” Why? The main reason is that they deal with programs and codes more than they communicate with people. This time to pay special attention to increase the opportunity to communicate with people, focus on improving this area of ability. On the other hand, people are often referred to as “people who don’t have communication skills.” At home, technicians are usually make plan and execute their own plan, in the process of execution and the lack of related products, such as interaction design personnel’s communication, mostly in their own way of thinking to carry out under development, over time, used to trust his own views, in their own perspective, the challenge is always to “according to the principle” try every possible way. What needs more improvement is how to see things from the other person’s point of view, how to see things from the user’s point of view.

Good development habits

Development habits are formed, once there are bad habits, for the future to correct will be a lot of trouble, cultivate good development habits must start from the beginning, for example: before writing code first analysis, first write documents, first write notes. The definition of variables is best with direct understandable semantics, the best is pinyin, not the whole English, especially rare words, forget to open kingsoft Ciba in the future. Files should be managed with meaningful folder names, file names should be meaningful, and version numbers should be updated with project version numbers… And so on.

Two: self-improvement and learning

The mastery of advanced technology

To master knowledge and skills in the promotion stage, it is necessary to choose the technology at a deeper level from the sorted knowledge structure for learning. Before choosing, the difficulty in learning should be measured by analogy or estimation, and the difficulty in learning and the part that you are least interested in should be the main part. The reason why I recommend you like this is that at this stage, you are very interested. You have gone through the bitter initial stage and reached the exciting promotion stage. You need to challenge the most difficult part with interest and excitement and find a balance between frustrated confidence and intense interest. At the same time, with other in-depth knowledge of learning and research.

Study of product ideas

Not the right product ideas, it is difficult to design a good program, no matter from the interface, interactive, or interface, logic, can’t understand the product, understand the needs of the user, can cause big trouble for yourself, for example: with the latest technology, the realization of the most complex and hardships of function, but no user or leadership and colleagues recognized. In order to make work and study more efficient, avoid useless work, need to constantly learn the idea of the product, only understand the idea of the product, know what to output with technology.

The learning of various frameworks

Framework is an excellent means to improve work efficiency, learning framework is the only way to grow. The usual route to learning frameworks should be: use -> Analyze -> personalize -> imitate and write your own framework. Only the use of a lot of, can understand the design framework behind the design train of thought, only understanding of the design ideas, to do comprehensive analysis correctly, only comprehensive analysis can support to correct the cut out or extend, only through the actual analysis, modify the framework of others, has it been possible to write good, own framework. The usual route of learning is to learn, understand, imitate and create.

Rich client application learning

With bandwidth and computing power rising, and WEB2.0 in full swing, rich client applications are flooding the Internet, and if you don’t know rich client applications, you can’t be a qualified front-end technician. Can follow: Silverlight is not yet mature, and Silverlight is not yet mature. Silverlight is not yet mature, and Silverlight is not yet mature. Silverlight actually borrows a lot from Flash, so it’s best not to put the cart before the horse when it comes to learning.

All kinds of network protocol learning

WEB front-end technology is the technology on the cloud, cloud protocol has N kinds, should focus on learning: TCP/IP, UDP, HTTP, POP3, SMTP, these protocols, in the development of WEB front-end applications, these protocols are the carrier of technology, sometimes determine whether the application can be realized, sometimes determine whether the application is high performance, at the same time, these protocols are important means of back-end technology interaction, these protocols are like password dictionary. Helps interpret the ciphertext transmitted from the back end into clear text that can be understood by the front end technology.

The program design

This phase involves learning OO, UML, design patterns, design methods… To make the technology development work purposeful and planned, and these goals and plans must be supported by theory, so that the design of the program can be better, the development of more efficient, so that the technology can be improved. Why study programming? The main thing is, even if you don’t use Flash’s ActionScript to write the front-end logic of the program, you should at least plan your own Javascript functions and packages to avoid problems when maintaining the code yourself or others in the future. Programming skills are extremely important in an age when technicians are still considered programmers

At this stage, I have nothing to say, if you can reach this stage, it will prove that the follow-up growth path is colorful, is to become a senior WEB front-end engineer, or become a senior WEB architect, or other, to specific analysis of their own characteristics and interests.

Recommend a public account inside will share some senior architects recorded video video: Spring, MyBatis, Netty source analysis, high concurrency, high performance, distributed, microservice architecture principle, JVM performance optimization these become architects necessary knowledge system. I can also get free learning resources, which I benefit a lot from now