preface
It has been two years since I joined the company in May, 18 years ago.
Yes, I am a post-00s front end. Born in 2001, I have been working in open Source China since May, 2013. Currently, I work as a front-end developer in the privately-held department of Gitee, responsible for specification development, technical breakthrough, personnel recruitment and requirements development.
New reports of
In May, 2012, I came to Open Source China through social recruitment. When I first started, I was still an intern. The team consisted of six people, working on an “open source crowdsourcing” platform.
I vaguely remember that less than a month after I joined the company, I was pushed by the leader to make IM chat module, which connected with the SDK of netease Yunxin. The indie developers worked almost a week of overtime, with a manual pull-down refresh/pull-up load. Finally came online with the bug.
This is the first small module I’ve ever worked on.
After going online, I still remember the problems with infinite render due to mixed Vue life cycles. Finally, one of the team’s back-end brothers helped me solve the problem.
After half a year, I gradually got used to the normal development process of a company. In addition to the front end, it has access to agile development efficiency tools such as JIRA and Jenkins. It is also understood that in addition to the production environment there is a “pre-production environment” (UAT). This includes requirements review meetings with product managers, task splitting, time planning, etc.
The emergence of these tools and processes has completely transformed my thinking. This paved the way for me to build Devops tools.
Start engineering
In terms of tools, the first front-end engineering tool I came across was Probably Webpack. Before I joined OSC, I attended Java training in an organization in Beijing. Self taught front end, then wanted to try to learn Webpack. But because there is no good information, leading to have not learned to understand.
When I joined OSC, vue-CLI2 was used for the company’s project. Cli2’s Webpack configuration is eject free and not as cohesive as CLI3’s. The advantage is that the configuration is more flexible, the difficulty is not easy to use.
With the configuration items all exposed, I was able to see what a project’s WebPack configuration really looked like and learn it in more detail.
I changed the configuration of the project to see the relationship between the configuration items and the output file using the “control variables” method. Gradually, I gradually understand and familiar with those configurations. This makes my value to the team more and more important.
So it iterated until September of ’18. During production on an iteration, the team leader discovered that Jenkins’ slave node process was running up to CPU and RAM utilization and would die after several compilations.
This led me to the idea of “splitting” front-end projects. If you take it apart and webpack doesn’t do as many bundles, maybe the machine will compile faster and use less resources.
So I’m going to start thinking about how to break it down. Finally, I created a “module splitting method”. The business is divided into different modules, and then hosted to their own NPM private server to go. And then at the end of the package, you combine it. This is similar to the concept of a “micro front” (which I didn’t touch at this point)
I wrote a demo, and it worked. I was so excited that I bought a bottle of beer and posted a friend circle to celebrate
At that time, I didn’t touch the micro front, and I didn’t know about LerNA. All I have is a fast running project and an NPM private library.
Later met FCC Jinan community Wang Jun brother. He warmly invited me to the FCC Jinan offline salon to share this idea. In November 2012, I went to Jinan to share this knowledge and finally got an honorary certificate.
Enter the Webpack
Suddenly it was January 19, and everyone was in the mood for the New Year.
A couple of years ago, I had an idea to try upgrading webPack from V3 to V4 for a front-end project (after all, I was looking at the change log at the time). I told Leader about this idea years ago.
The leader’s main concern was that the upgraded package files would be different and prone to bugs, and I thought the same at that time. But the leader is still willing to delegate power to me to do, let me try.
During the Spring Festival holiday, I was still debugging webPack configuration at night.
An error occurs when attempting to change the version upgrade in place. An error message is displayed when the configuration is replaced. I tried this for nearly a week, debugging the configuration from day to night. It was just me and the computer, and there was a WebPack document (the worst part was that some plug-ins were merged into apis and renamed into plug-ins: such as code compression CSS separation). Finally, I ran, and all the style logic ran through.
I took the opportunity to deepen my understanding of WebPack. That’s how I got my first performance bonus.
The iteration
Since April, I’ve been working on CI/CD, everything from building deployment artifact libraries to dependency libraries.
The product iteration took nearly six months. In the middle of continuous development, iteration. A group of novices with no similar experience gradually began to get familiar with this part of the field.
Micro front-end
In November, I received a notice to do a micro front end transformation of the existing product. I went to consult Baidu net disk tao brother, searched the whole Google, finally stayed up n nights, finally ran up, to achieve online.
Attached here is a micro front post I wrote
A new journey begins
At the beginning of the 20th century, corporate strategy required us to start working with the Baidu team. The number of r&d team members has also changed from 6 to 8 to 20 + now. I went from being an intern to being the “old man” of the team.
In May, I began to standardize the development process and code of the front-end team. This is my personal OKR goal in Q2, and it is also a direction for the development of the team. At present, the documents, code specifications and submission specifications have been written, and the feedback from the internal test is good.
Since the cooperation with Baidu team, I have come into contact with each other’s code specifications, performance optimization and monitoring, and collaboration process. Many places are really eye-opening. Can not help but sigh is not worthy of dailang.
So I also took the opportunity to comb through my personal OKR for Q2
Someone to thank
For the past two years, I would like to express my special thanks to Mr. Wang Jun of FCC Jinan community, who expressed his surprise and admiration for my experience. And the encouragement that has been pouring in for me.
In addition, the leader’s delegation of power to functions and his trust in me enabled me to grow so fast.
Liu Bowen: I met Him when I was buying a book. After I looked him up, I found that there were many similar experiences. After friends introduced to add contact information, also gave me a lot of encouragement and comfort, is my life development goal. Congratulations to him on his Ali P7.
Mr. Zhang Renyang and Mr. Jiang Wen: two front end Dalao. Knowledgeable and experienced. He invited me to share twice, encouraged me many times, and had great expectations for me.
Wakawa: Wakawa Dalao has a lot of experience and has learned a lot about the front end.
Zhang Yatao: senior, Baidu network disk architect, a very strong bull. Especially in the micro front end has accomplished
Child chess: an accidental opportunity, knew him. A very humorous, experienced front end Dalao. At present in the government affairs nail, push can find him
There are so many people to thank. In view of space, I will not list them all.
In the future
My plan is to improve the React framework, including redux Router and so on. Linux is where everything started for me. It’s a must to be professional. And what we do best, engineering… And algorithms. Network.. All I am interested in knowledge, to learn to learn through
I hope I can be twice as good as I am now in the next three years. We are young, come on