A 4-year work summary of self-study front-end [stand at thirty, refuse to lie flat]

Good luck with the start, let's play chicken blood! I wish you all good health and smooth work in the new year

Graduated from an unknown second major in the central part, transferred to the front end halfway, entered the pit in September 2018, and has been working in a medium-sized company for four years now

Why do you take this path of programming?

Actually there is no choice, sometimes 没有选择,就是最好的选择

Along the way, I have laughed and hurt, been happy and disappointed, possessed and lost

Unfulfilled ambitions

I set a goal for myself very early: a monthly salary of 20k+ in two years, and entering a large factory in three years (target top5 Internet companies)

The first goal is quickly achieved, but the second is stuck屡败屡战的死循环中

Dachang insulator

The big factory interviewed nearly 10 times, all of which were expert positions. At this age, if you interview ordinary development positions, you may not even be given an interview opportunity.

The 2 times I met Ali, I was rejected by hr; the 1 time I met Meituan, I was also rejected by hr. The last time I met JD.com, the offer I got was stopped due to layoffs.

The offers received include: Xiaomi, Netease, Himalaya, Dingdong Maicai, etc.

The Ali interviewer also gave me a heart-to-heart later: the technology is fine, but hr feels that your education and resume have no advantage compared with other competitors. Now the general environment is not good, there are many applicants, and the company has higher requirements

I understand, thank you for saying these things to me

夜很黑,路还很长

pig standing on the wind

Back to September 2018

I became a monk and transferred to the front-end halfway. While working and studying, I studied by myself for three months and found a job at the front-end without any problems.

I tremblingly asked for 10k for hr, to my surprise, finally gave me 11k

I can get the offer, I think there are several reasons:

1) At that time, the front-end was in a period of vigorous development. The maturity of the vue and react frameworks brought a radical change to the front-end that had been suppressed for more than ten years, and I just stepped on this outlet

As the saying goes, a pig can climb a tree by standing on the wind, maybe I am that pig

2) My college classmates pointed out the direction for me at the critical moment. These guidelines let me understand the needs of the market, study in a targeted manner, and achieve the effect of getting started in the shortest time

Chaotic period

熬过去,活下来

first day of work

Although I mixed in the interview, but as soon as I started working, I was beaten back to the prototype

On the first day of work, when I started writing codes by hand, everyone knew my level. My colleague asked me to adjust the interface. I timidly said that I hadn’t adjusted the interface, and my colleague stopped talking...

The leader asked me to talk: I know your level is poor, but I didn't expect it to be this bad. I said that I hope to give me a month, and if I can't finish the work by then, I will resign voluntarily

The leader may have been moved by my sincerity, and he agreed. This month is also the deadline for me, I have no idea

On the night of the first day of work, I went to my friend with my computer on my back and asked him to tell me about the project

In that month, I almost went to bed at one or two o’clock in the morning, and got up at six o’clock in the morning to write code

The whole person is extremely excited or hyperactive to the point of numbness

I don't know sleepy, I don't know hungry

In the end, my performance still won the trust of the leaders, and I gradually became competent for the job, which can be regarded as a firm foothold in the front-end industry.

是的 我活下来了

rising period

Quantitative change introduces qualitative change

  • Changes in the team : Joined a team with stronger technology. Later, some members of the team went to Ali, Xiaohongshu, Ctrip, etc.

  • Expansion of personnel : the front-end has changed from the original 3 people to a team of 15 people

  • The increase of projects : from the original 2 projects to dozens of projects, at most, more than a dozen projects are running at the same time

  • User growth : From a few hundred users to a million users

With the increase of projects, the degree of technical freedom is higher, and various new technologies can be tried, and there is no limit to the use of vue or react

The expansion of the business allows access to more scenarios, covering mixed development of pc, h5, applets, apps, etc., and solves many adaptation and compatibility issues

Boundary expansion, and also engaged in several pure background node lottery projects, learned how to operate the database, how to solve high concurrency, how to prevent the interface from being brushed, etc.

With the increase of users, the performance and continuous optimization of the project become extremely important

一百用户与一百万用户的网站有着本质区别,任何细节都变得更为重要

One of the most common examples: long list rendering optimization for mall projects, the performance efficiency of long list rendering is directly proportional to the user experience

The technologies used include: paging + virtual scrolling, lazy loading of pictures, dynamic cropping of pictures, etc.

在挑战中成长

Began to be responsible for the system architecture, performance analysis, website optimization, website monitoring and other aspects of a large website for the first time

Start to understand the front end slowly, start to pay attention to user experience, and gradually learn to bear the pressure

bottleneck

Goals light the way

I am not a person with strong self-control. I need to set a clear goal for each stage, otherwise I will fall behind

一个风筝,必须有一根绳子牵着,大厂就是这根绳子

Preparing for a big factory

I prepared for 8 months before and after, and made the study plan specific to the day.

Without a strict time limit, the learning progress and effect will be greatly reduced

time Task
2 months Systematically learned the basic knowledge of the front end, the operating mechanism of the browser, and focused on practicing handwritten js questions
2 months Practice algorithms, corresponding data structure and question type classification exercises! Brush more than 100 leetcode questions
1 month Using performanc and Lighthouse analysis tools, combined with the web vitals key indicator calculation method, to formulate an overall optimization plan for the page
1 month Build your own scaffolding, create pc, h5 project templates, etc., hand-write webpack, hand-write babel plug-ins, etc.
1 month Reviewed node knowledge, learned network protocols, network security and attack defense methods, etc.
1 month Review the source code of vue and react, and learn how to write a simple vue by hand

misunderstanding of algorithms

My previous understanding of the algorithm was just to cope with the interviews of the big factories

In two months of algorithm practice, I realized for the first time:编程不仅仅是技术,还是艺术

For example, simple loops can solve complex mathematical problems

Algorithm is not very important to the front-end, but it is an essential skill for an excellent front-end engineer, and it plays an important role in improving the coding ability

The beginning is the peak

I started interviewing with medium-sized companies. I interviewed Dingdong Maicai and Himalaya, and then I started interviewing with Xiaomi and Netease, and got the offer smoothly.

However 花朵没有绽放就枯萎了, the subsequent interviews repeatedly hit the wall

The result is already known, Ali + Meituan, hr face-to-face hung up 3 times, and the offer from JD.com flew away

For half a year, I was either interviewing or on the way to the interview

Big factories basically have 4 rounds of technical interviews + 1 round of hr interviews. It is really tiring to repeat this many times.

Especially when I was rejected by the hr of Meituan for the first time, I felt heart-piercing, thinking that success was within reach, but it was actually海市蜃楼,一场空

According to the law of conservation of luck, the luck in the early stage may be too good, and it is impossible to make it to Dachang, just like a transparent wall. I thought I could reach it with my hand, but every time I got the closest, I got a blow in the head

Although the result of preparing for the big factory is not satisfactory, it is also the fastest growing stage for me

I enjoy this kind of thing very much 向着目标冲锋的满足感. Now, I can also say something against my will:过程比结果更重要

confused period

What's the way forward?

静下来、慢下来

In the past few years, I have been very anxious, afraid that my skills will not be as good as others, and that I will waste my time

After experiencing this series of setbacks, I gradually realized myself, I am still me, and I will not forget my original intention

Only on the road can we eliminate the confusion in our hearts

Study some frameworks carefully, understand their design principles and how to write excellent examples

Outputting some articles is equivalent to a summary for yourself, roughly divided into several series

  • Series 1: Interpretation of source code, such as the elementUI component library series being written, classics will always be classics

  • Series 2: Organize and send out the 10w-word notes of preparing for the big factory in the past two years, reviewing the past and learning the new

  • Series 3: Personal essays, talk about life, talk about ideals.难的不是编程,难的是生活

I really like this passage in "Soldier Assault"

Xu Sanduo: I am a soldier
Yuan Lang: A very peaceful soldier, not too anxious, able to endure loneliness. Many people are anxious every day, afraid of not getting it, afraid of loneliness. i like people who don't worry

loss and gain

the only persistence

In recent years, the only thing I have done better is to insist on taking notes

Record the project difficulties, solutions, and even small knowledge points encountered. Unknowingly, there should be a word count of 100,000+

The benefits of programming

程序员活在自己的世界里

Computers are not as complicated as humans. If your code is well written, your relationship with the computer will be easy to get along with. You can direct the computer to do what you want without having to pay attention to the complexity and changes in the outside world.

The disadvantages of programming

The loss of communication skills , this is something I have only realized for more than a year

It may be due to the nature of the work, and there is not much need for communication at ordinary times. Even if the office does not speak for a day, it is not a problem. After a long time, I feel that I have "aphasia"

The role of the mouth is weakening, any skill needs to be practiced, communication skills are lost day by day in the code world

I was a class monitor in college, and my communication skills are pretty good, but now I am "disabled"

Thirty years old, dealing with people in society, how do you feel like you are still a student?

There is also the solidification of the circle of friends. Think about it, I haven’t added friends on WeChat for almost a year. Hey, I have to seriously reflect on it.

越往上走,越发现沟通能力的重要性

Choice is greater than effort

Last month, my best friend also left Shanghai. I feel helpless and not surprised by this result.

He has been testing for the past few years, and his salary has not increased much, but I have increased by 3 times (only at a moderate level)

He graduated from a famous university, joined the company with me at the time, and was the first batch of undergraduates recruited by the company. In addition, he has a high degree of education, good popularity, and strong communication skills, so the company also regards him as the backbone of training

The ceiling of traditional testing is very low. Although they were all promoted to test team leaders later, the gap between salary and development is widening.

I was leaving, and I persuaded him to switch careers to do development, but he refused after hesitation, because his girlfriend is from our company, and he didn't want to separate, and he thinks life is good now

Now, the last straw to bend him is that his girlfriend of 4 years broke up, and he feels that Modu has no place for him anymore

From his tone, it feels that he has changed a lot, very anxious, mixed with sighs and complaints

He left full of regret and disappointment, wondering whether his girlfriend abandoned him or life abandoned him?

If he has also done programming, what is his current situation with his education and intelligence?

有的人来了 有的人走了

 

Birds fly across the sky without leaving a trace of their wings

epilogue

I am not a person who works hard, but I am also a person who feels uncomfortable if I don’t study for a day

I am not an optimistic person, but I am also a person who is full of hope for tomorrow

Author: Broad Sea_Sky

https://juejin.cn/post/7139463067792277534

Guess you like

Origin blog.csdn.net/Stitch_xiao/article/details/128790148