What should I learn about the front end, back end, and full stack? What is the salary outlook?

With the rapid development of the information industry, the demand for talent in the IT industry is also expanding year by year.

According to statistics from domestic authoritative data, in the next five years, the total demand for informatization talents in China will reach 15 million to 20 million. Among them, the talent gap of "software development" and "network engineering" is the most prominent. Taking software development as an example, the demand for software talents in our country is increasing at an annual rate of 20%, with an annual increase of nearly one million.

This is also the reason why many non-curriculum students start learning programming in order to catch the Internet express, but which subject should be chosen at the beginning, it has caused great trouble to many students.

During the communication with my classmates, I found that the concept of “front end, back end, full stack” is still very vague. So that you can learn more efficiently and plan more, so as to move towards the goal of Internet operation.

1. Front direction

The "front end" of the website is the part that directly interacts with the user, including all the visual content you touch when browsing the web-from fonts to colors, as well as drop-down menus and sidebars. These visual contents are all rendered by the browser after parsing, processing, and rendering the relevant HTML, CSS, and Javascript files.

Skills and tools

Front-end development is to create the code behind the user-facing part of the website mentioned above and build an immersive user experience by establishing a framework. To achieve this goal, development requires skilled use of the following languages, frameworks, and tool libraries:

Three major languages: HTML, CSS, and Javascript; in addition, it is also important to master tool libraries such as jQuery and LESS, which can help developers code in a more efficient manner; many front-end development posts also require experience in using Ajax methods, which can Help you use Javascript to pull data from the server in the background, and help realize the dynamic loading of the page.

For example, the front-end developer's work is focused on "house" decoration, and the back-end developer is responsible for building the house.

Through some specialized tools, front-end developers work closely with designers / user experience analysts to help build prototypes or wireframes and participate in the entire process from product development to release.

Some front-end developers can even pinpoint specific issues that affect the user experience, and give suggestions or code solutions that have a positive impact on product design.

For example, the front-end developer's work is focused on "house" decoration, and the back-end developer is responsible for building the house.

Through some specialized tools, front-end developers work closely with designers / user experience analysts to help build prototypes or wireframes and participate in the entire process from product development to release.

Some front-end developers can even pinpoint specific issues that affect the user experience, and give suggestions or code solutions that have a positive impact on product design.

In addition to professional competence, it is also important to collaborate with other teams to understand specific goals, needs, opportunities, and efficient execution.

This sounds like a lot of work, but it also pays off. "I am a technician and designer. It is a natural and fun experience to modify and interact with visual elements using markup language and code on a digital platform," said Mikey Ilagan, who has eight years of front-end development experience. This allows me to directly influence the user experience and manipulate the elements that users see and interact with directly in the app and website, which is great! "

In short, the front-end developers are responsible for the internal design and decoration of the "house" built by the back-end developers. The decor style is specified by the owner. Greg Matranga, head of product marketing at Apptix, said: "Front-end developers are sometimes more likely to be excited about their work because they have more room to develop their creativity. "

Salary reference

The following is the first four job treatment information that appeared after searching for "front-end" limited "3 years or less" experience on a mainstream Internet industry recruitment website. The screenshot conditions of the back-end and full-stack salary information are the same below.

Second, the rear direction

What supports the front end of the website? Where is the data stored? This involves back-end content. The back end of the website includes servers, applications and databases. Back-end developers build and maintain these components to provide various support for the website.

Skills and tools

In order for servers, applications, and databases to interact with each other, back-end engineers need to have the following skills:

Server-side languages ​​for application construction: PHP, Ruby, Python, Java, .Net, etc .;

Data related tools: MySQL, Oracle, SQL Server, etc .;

PHP framework: Zend, Symfony, CakePHP, etc .;

Version control tools: SVN, CVS, Git, etc .;

You must also be proficient in using Linux as a development and deployment environment.

Backend developers use these tools to write clean, portable, and well-documented code to create or update Web applications. But before writing code, they need to communicate with customers, understand their actual needs and translate into technical goals, and formulate the most effective and streamlined plan to achieve.

"I love back-end development because I like to manipulate data," said JP Toto, a senior back-end developer who works at Wildbit. "Public and private APIs have now become essential channels for exchanging data on mobile devices, websites, and other interconnected systems. Creating APIs that are useful to everyone is a very encouraging part of my work."

Salary reference

Three, full stack   

Sometimes there is no clear boundary between the front end and the back end. "Front-end developers usually need to learn additional back-end skills, and vice versa, especially under certain market conditions." All-rounder. "

The full stack engineer was originally a concept driven by Facebook more than 6 years ago. The core of the full stack means that these developers can undertake all functional development tasks including front-end and back-end, and they have a family of skills.

"Being able to perform both server-side and client-side work will bring you more opportunities," said Federico Ulfo, a full-stack engineer at Grovo. "Of course, this means more challenges. Using cooking as an analogy, mastering cooking and baking It takes time and experience to accumulate, and it takes more energy to master both. At the same time, anyone can follow the recipe. What I am talking about here is the ability to make truly delicious things.

I am a front-end engineer who has been working for five years. I have compiled a most comprehensive front-end learning material. From the most basic HTML + CSS + JS to HTML5 project practical learning materials are organized and sent to every front-end partner. For those who want to learn the web front-end, or change careers, or university students, and those who want to improve their abilities at work, they are learning partners who need to be able to chat with me privately. This is my front-end development qun Three] [Nine Eight Five] [Nine Nine Three], download directly in the group, you can ask me any questions (learning methods, learning efficiency, how to find employment) for learning the web front end,

Skills and tools

Full-stack developers also usually do programming work on the server side, but they are proficient in front-end languages ​​and can manipulate the user-facing part of the website. Basically, they can be described as a master.

The following chart illustrates the growing complexity of full-stack development. This is a comparison of past and current technology requirements:

 

The specific tools depend on the project and customer needs. Full-stack developers need to have a sufficient understanding of each level of the Web architecture: build and configure a Linux server, write a server-side API, use client-side Javascript code to drive the application, and design the level Things into actual CSS code.

While mastering and using a large number of tools, full-stack developers need to agilely allocate server-side and client-side tasks, provide solutions and compare the pros and cons of different solutions.

Salary reference

After reading this, do you have a clearer understanding of future choices? 

Published 37 original articles · praised 7 · visits 1088

Guess you like

Origin blog.csdn.net/jinmu520/article/details/105536870