laitimes

Front-end development Back-end development

1. Is the front-end salary lower than the back-end salary?

I can tell you responsibly: as far as I know, at least in Hangzhou, the front-end and back-end prices of NetEase and Alibaba are the same wholesale price.

I'm talking about the business layer, and if you insist that developing a Web 3D engine front-end is more expensive than a normal Java front-end, or that developing data for Hadoop is more expensive than developing a regular front-end, then you're nitpicking.

The front-end and back-end we refer to must be the front-end and back-end of Web development, which belongs to Web business development. Otherwise, writing middleware, big data backends, Web 3D engines, front-end frameworks, and designing front-ends are beyond the scope of traditional web development.

I mean the same level, because there is a lot of individual variation, but generally a P6/7 frontend and a P6/p7 backend are the same price.

Front-end development Back-end development

1. To a certain extent, the view that the back-end salary is higher is correct.

Why? If you calculate the average salary of Alibaba's front-end and back-end, it is definitely higher for the back-end.

Because the status of the front-end has improved in recent years. Now if you go to Ali, the price of the p7 front-end and the back-end (Ali's back-end is Java) is the same, but the back-end must be higher before, and the back-end was already there when Ali was established, and many people from the back-end have entered the management. But they are still the back-end with the P9/P10 title, and the front-end has only been in business for about 10 years, and there are actually only one or two front-ends above P10.

Strictly speaking, when it comes to the P10 level, there is no distinction between front-end and back-end, it just depends on whether you are from the front-end or the back-end, if you were a technician before, then the front-end and back-end can be done, if you were a manager before, then it is not technology, it is pure management.

So, you don't have to worry about these issues now because now the wholesale prices are the same because no matter what the average is, what matters is what you get your hands on.

Front-end development Back-end development

2. Individual differences are great, even at the same level, there are more people and some people less.

I'm actually the highest-paid engineer in my class. While talking about salary is a sensitive topic, every employee is more or less aware of their own situation.

When I went to Alibaba, the price was very high, one reason was that I didn't want to leave NetEase at that time, and I wouldn't leave for less than one price. Another reason is to wonder how valuable you really are. This involves a programmer's survival strategy: spend two months a year interviewing – whether you want to go or not. You need to constantly evaluate your price, find out what you don't have, and make up for it in time.

Many programmers don't know how much they're worth, so they're either afraid to ask for a salary or ask for a ridiculously high price. If you want to know how much you're worth, testing the market is the best way to go. Remember one thing: your price is determined by the market, not your ability. In a stable market, your ability can be directly proportional to your price. But the market is never stable. Look at how popular Android/iOS was back then, and look at the present. The people are still the same people, but the market is getting cold.

Front-end development Back-end development

3. Both the front end and the back end are just stepping stones.

Many young people (in fact, I am quite young) have some obsessions, such as planning to spend their lives writing Java, becoming a Java master, and reaching the pinnacle of life, which is actually good, but not advisable.

From a technical point of view, writing Java for a lifetime does not make you a Java master, you also need to learn the JVM system of Scala, Kotlin, and the underlying C/C++, as well as Go and Erlang, which are different from the Java concept. At the end of the day, you'll find that Java is just a stepping stone. What really makes you a Java master is your understanding of different language concepts, your understanding of how to give full play to Java's advantages in different scenarios, how to avoid Java's disadvantages, and your deep understanding of Java's advantages and disadvantages. Instead of thinking that Java is the best language, write Java for the rest of your life.

From a career perspective, note that I used the word "xx" to describe a senior engineer in my previous article. For senior engineers, there's no front-end and back-end. The front-end and back-end are just stepping stones, because the web business development we're talking about today, to be honest, is at the bottom of the computer difficulty. As for the chain of contempt mentioned by the respondent, it is actually the Chinese team that despises the Thai team, and the chicken is the same as the duck.

If you want to get to a high P in the web field, you basically have to take the business architecture route, which is a test of your overall situation. If you only know a front-end or Java, you're not qualified at all. If it's a purely technical P10, it's basically a difficult road. To be clear, for traditional web development engineers (front-end and back-end), if you don't move up to a high P through management, you're basically going toward architecture. At this time, it depends on your comprehensive ability and good overall situation, and your original front-end and back-end technology is just a stepping stone.

For P10 and above, I can still play technology, I will point out a few directions for you: algorithm-related positions (deep learning, computer vision, etc.), data-related positions, graphics-related positions (such as NetEase game engine experts, etc.), large-scale system-related underlying positions (Alibaba Cloud), security-related positions.

For the average web developer, even if you write the front-end and back-end beautifully, you can't achieve a high P with pure technology. Always be aware that you are at the bottom of the computer difficulty, because the front-end and back-end technologies themselves are not very esoteric, they are basically the result of industrial practices. You've seen a lot of xx companies poach deep learning experts, data scientists from xx labs, xx universities, but have you ever seen poaching professors to do web development?

Front-end development Back-end development

Summary:

1. The front-end and back-end are at least wholesale prices of large manufacturers.

2. How much money an individual can earn depends on the market, personal ability and negotiation ability, and has nothing to do with the average salary.

3. Whether it is the front end or the back end, it is just a stepping stone for your future development. Traditional web development is not difficult at all, and if you want to take it to the next level, understanding the front-end and back-end is the most basic requirement.

4. How do you plan your career?

Finally, the questioner asked how to plan his career. It is clear from the above: the front end is just your stepping stone. Next, let's talk about a few general directions after stepping into the front door:

1. Web development: The front-end and back-end are the two ends of Web development. In fact, in many foreign companies, there is no such thing as front-end and back-end Web development in the same city, and they are all called "software engineers" or Web developers. In fact, we need to change the concept: the front end and the back end are not opposites, but a pure family, but some domestic and foreign markets forcibly divide them into the front end and the back end. At the end of the day, both the front-end and the back-end need to understand. So, while you maintain a high level of front-end, you also need to improve some back-end technology, but you must distinguish between the main and secondary, and the front-end is the main.

2. Data direction: Data is the oil of the future Internet era, so this direction is also good. At the front end is visualization-related technology, and Alibaba has a lot of data visualization practices, because Alibaba claims to be a data company (PetroChina?). )。 If you want to do this, it is recommended that you go to Zhihu to search for relevant introductory information. In advance, visualization is not just about drawing a chart with echarts, this field is very complex, there are many researchers in this area in universities, search for Chen Wei of Zhejiang University, you can learn more. Anyway, it must be higher than web development, and if you go further in the future, you will still be inseparable from big data related things such as Hive and Hadoop. Visualization is the outermost layer of the entire data link, and in the end, it is necessary to understand the entire link layer before it can go up to P.

In addition, web development is divided into web front-end and web back-end, which is viewed from the perspective of web services. Data R&D is based on Web development, using data to empower Web development, those who understand visualization must have front-end capabilities, and those who understand Hadoop must know Java, which is an expansion direction of Web development.

3. Big front-end direction: iOS/Android on mobile has long been in decline, but it doesn't mean it's dead. It's just that all companies realize that there's no need to do native development. Do you know how much it costs to maintain the Android/iOS/web teams? With such a small number of users and difficulty, you can directly all in the Mini Program in the start-up period; When it gets bigger, you can do Android/iOS, and you don't have to be all in. 30% native + 70% mixed users can't see the difference at all, and the cost and efficiency are much better. Some large companies, such as Alibaba, RN, and Weex, practice a lot; Due to the decline of Android/iOS within the company, the front-end has incorporated both iOS and Android to a certain extent, collectively referred to as the big front-end (and node), and the more famous ones are Ele.me and Meituan. This kind of take-off is also partly a political necessity, and companies like Meituan must focus on the back-end. Liu Pingchuan said that after the inclusion of Android/iOS and the addition of the node team, the number of large front-end people has reached the same level as that of the back-end, and the power of the leader of the big front-end can be imagined: there is no harm in learning a little iOS/Android.

4. Graphics: The epitome of graphics is undoubtedly the game industry, and of course Alibaba also has its own game business. The front-end is naturally closely related to graphics, in addition to the visualization mentioned above, there is also the development of related 3D engines, for example, the aftermath team is incubating antG (not open source), Taobao already has an open-source project of the front-end 3D engine, and Ant Forest in Alipay is developed at the front end, using canvas/webgl related technologies. Strictly speaking, it is difficult to be regarded as the front-end in the traditional sense, more like the application of graphics in the browser, and the future development must learn from the traditional graphics scheme, so c/c++ is essential. At the same time, 3D/2D is more performance-intensive on the browser side, which requires WebAssembly support, and native language is essential.

Read on