Today’s topic will be a little subjective. Based on my personal experience of working in the past 10 years, the contents may not be suitable for everyone. Writing these thoughts is also a self-encouragement, hoping that I can continue on this road and stay true to my original aspiration.

As a technical person, every improvement of technical ability comes from the accumulation of daily work. The more basic it is, the more energy should be put into learning and maintain continuous enthusiasm. Basic knowledge comes from specialized courses in university, including but not limited to the following:

1. Data Structures

2. The Algorithm

3. Computer Network (TCP/IP, HTTPS, Layer 7 model, Web Socket, etc.)

4. Principles of Compilation (Semantic Analysis, editor, Interpreter)

5. Computer Systems and Operating Systems (Storage management, processes, file systems, I/O, etc.)

These courses, frankly, I’m after work, I grew up slowly realized they help, over the years I have been learning all kinds of technology can be faster to master, which rely on these basic knowledge gave me the revelation, in today’s word, you upgrade the technology of cognition, learn what can be summed up to the same line.

The real benefit of mastering these basics is that you have built your own technical OS, and all the languages or frameworks you learn later are apps running on your OS. Your OS provides a good enough system interface so that apps can be easily accessed, and then you can continue to iterate these apps efficiently.

Knowledge system is established, through the work of individual knowledge in the practice to revise system, it is the same and the current machine learning mentality, the technical model in our brain is need to be trained continuously revised, and then find suits own optimal solution, to determine the model — — — — > > training model using the model, finally, can we truly at work out come in handy.

Project experience is based on your knowledge system, everyone’s knowledge structure can determine his in the project output, on the other hand, the same project, the same role, because of the different knowledge structure, at the end of the project, different people can get promotion will be different, and the ascension of the program, Determines the output and acquisition of the next project or a bigger one in the future, which is why the same two graduates, after many years of working, may have a huge difference. So, to grow faster, you need to build your knowledge first, and then maximize your experience with each project. Isn’t that the old saying, ten years of work experience, or the same thing repeated for ten years, right here.

I remember one of my classmates asked me how to quickly learn “skills you don’t know”, or even “skills you don’t know you don’t know”. In fact, it is very simple. Find a person or a group of technical people who are better than you and stay with them. Joining a reliable team and finding a good leader or excellent colleague is the best practice for achieving rapid personal growth and overtaking on corners. What BENEFITED me most in my career was that I met some excellent colleagues and predecessors at different stages and learned a lot of valuable experience from them.

Finally, keep a curiosity and always be willing to try unknown technical fields. TroubleShooting can be optimistic and positive, and keep an open mind to acquire a broader technical horizon.

(To be continued)

Scan the QR code or manually search wechat official account: ForestNotes welcome to reprint, bring the following QR code