What have I been through these years (I)

The body of the

In July 2015, I just graduated from university and entered a game company to do front-end development. How can I break through the situation of lack of various resources and only myself at the front end?

Back office engineers were able to write most scripts using JS when there was no front end, and the jQuery they were writing was no worse than the professional front end. Then why did you hire me? In fact, at that time, the main responsibility of the front end eyes is mainly to draw the page, to make a better user experience and beautiful page. Because the vast majority of backend engineers are really weak in CSS and have a headache writing styles.

At first, without the separation of the front and back ends, I needed to start the background code (written in Python) locally to run the front-end project in the browser, and even some front-end code was directly written in the background template. This kind of front and back end coupling made the development and maintenance efficiency extremely low.

At the beginning, I also participated in the development of two or three projects according to this mode. Gradually, JS was transferred from the background to the front end, and the main technology stack used at that time was jQuery + Bootstrap.

Fortunately, AngularJS became popular in China in 2015. In order to keep up, I read a lot of related materials and books. I remember that the most popular book at that time was “Developing The Next Generation Of Web Applications using AngularJS” translated by Damo Qiuong. It’s the first AngularJS book in the country. The next generation of Web applications here are: MVC, modularity, automated two-way data binding, semantic tags, dependency injection, etc.

At the time, few people in the domestic market would apply this concept to a front-end framework, and AngularJS was the first to do so. The front end of ngRoute module can control the jump of route and develop single page application. After seeing these bright spots, I gradually replaced jQuery with AngularJS in my group projects, and the technology stack gradually became AngularJS (version 1.x) technology stack, with the front and back becoming separated.

It wasn’t long before Facebookreact became popular in China. It was a little lighter and more flexible than AngularJS. Angular is also a bit awkward and difficult to get started with for small and medium-sized projects.

As a result, many front-end developers (including me) had another choice of technology stack when developing projects: React technology stack. Combining with Ant Design, the React UI framework produced by Ant Financial at that time, it became more convenient to use React to develop middle and background systems.

In 2015, the great changes of the front-end in China made several back-end engineers in our group gradually pay attention to the front-end. They could not understand the front-end code I wrote at all, and the era of DOM manipulation by jQuery was gradually coming to an end, while Vue was still unknown at that time.

At that time, the main way of communication in our work is still mainly QQ or enterprise QQ, as a programmer naturally not to join a variety of QQ technology group diving, bubbling or bucket map. I kind of pay attention to the comments of the bigwigs in the group. One time, a bigwig (actually the group leader) said that his current project was using Vue, and he said that Vue would grow in 2016 and suggested we try it.

Out of curiosity, I went to the Vue website, looked briefly at its documentation, and was immediately hooked. Both the API design and the syntax examples are elegant. I roughly over the basic use of the document, can be seen the author of the heart. I soon joined the Vue faithful.

Compared to AngularJS and React, Vue is very small and ordinary. When it was first used in the project, it was questioned by the backstage colleagues. But now it seems that AngularJS has declined in China and Vue has gained popularity, so the choice at that time has been answered.

It can be said that 2016 is the first year of Vue, with more and more articles and communities targeting Vue, gradually forming the “Era of The Three Kingdoms” in the front field. It can also be seen that the peasant revolutionary army led by Vue started an epic war against American imperialism.

In 2016, the technology stack within the group gradually stabilized, with Vue as the main and React as the auxiliary development. Angular released the second version in 2016, completely separated from the first version, and was abandoned due to cost and other factors.

In 2017, due to the sluggish development of the company and the stable salary, I chose to job-hop. The skills in my resume (2 years of front-end experience) at this point look like this:

The job interview was a great success, as React, Vue and Webpack skills were not very common in the requirements of the front-end recruitment in my area at that time (now it’s almost 100%).

After joining the company, I also joined the department that was just established, but the difference was that the front-end team size was about 10 people. Then I started my team development mode.

Since the team had just started using Vue to do projects, it was easier for me to get started (I was a Vue veteran for them), so they would come to me for advice when they had problems. At the same time, I also started front-end related training in the group, such as Vue, Webpack (webpack has occupied the mainstream position in front end construction tools in 2017), coding specifications, etc.

After 2017, the front-end framework began to be stable, and several iterations of each version were released. The front-end technology slowly began to develop into cross-platform and server side. React Native and Node began to be widely used in China, and the concept of big front-end began to emerge. At the same time, at the beginning of 2017, the wechat team released the official version of the mini program.

In 2018, in order to meet the development needs of the department, I started the construction of React Native in the APP of the department, and cooperated with iOS and Android engineers to realize the mixed programming of RN. In the same year, the development of small program ushered in the spring, the development of the situation is unstoppable, with the wechat flow platform, more and more enterprises began to put small program development into the front-end development of skills. I also started the project of building small programs of the department, and infiltrated the concept of front-end automation and componentization into it.

At the same time, front-end infrastructure construction is becoming more and more important. It is difficult to develop front-end teams without infrastructure, and front-end architecture is getting more and more attention. With the popularity of ES6, ES7, and TypeScript, JavaScript writing has become more rigorous and systematic.

The application of Node in the front-end field greatly increases the capability of the front-end system, such as the construction of the front-end middle layer. Slowly, some middle and senior front-end engineers began to explore the Node server. The front-end applications in our group also use Koa2 framework to build the middle layer of Node successively, which is used to process interface forwarding and realize the transfer on the server side.

In 2019, the front end is still changing, as front-end microservices are being discussed and practiced by more and more people, and the joke that “any application that can be written in JavaScript will eventually be written in JavaScript” is becoming a reality.

Finally, update my front-end skills (4 years of experience) :

The front road is slow, I will search up and down.

about

It is recommended to follow my wechat public account [front-end hula Hoop] to regularly share original and selected articles and get pushed articles in the first time.