As I mentioned in the previous article, I achieved a small goal of joining Alibaba three years after graduation in 2017.
It sounds like very powerful, very bright, but actually it is not so easy, behind this there are many stories of my own exploration and efforts.
Here I would like to share some of my experiences for those who, like me, are not from a famous university or a big factory, but want to get into Ali (or other big factories) and are a little confused about how to move forward.
In fact, before entering Ali, I was also quite confused, there have been some puzzles in my heart, such as What is the recruitment standard of Ali? How far are you from this standard? It was like being in the desert, but not knowing where to go. At this point, finding the direction is the most important. (A lot of people were just as confused as I was, because a lot of people asked me what it took to join Ali.)
I asked some of my friends at Ali:
I ask: what standard should enter ali?
Friends answer: social recruitment generally P6 recruitment, three years of work experience.
I ask again: what is P6?
The answer is often different.
Here to popularize, every company has a job grading system, Ali is also, technical posts with P grading, general school recruitment P5, social recruitment P6.
In the past, the title of my entry into Taobao was “Senior wireless Development Engineer”, which was P6 level. At that time, P6 was divided into senior and senior, but now they are unified into senior.
What is the standard of P6?
It’s really hard to tell, it’s not as clear as a grade on an exam, but 60 is a pass.
In my understanding, it can be summarized as: the ability to be responsible for the development of one or more modules independently. (In other words, the boss trusts you to be responsible for the development of one or more modules)
As abstract as that sounds, I’ve tried to break this capability down to include but not limited to:
-
Professional ability
-
Problem solving skills
-
The ability to learn
If these abilities are up to standard or outstanding, I think I can be responsible for the development of multiple modules, which also means that there is no technical problem in Entering Alibaba.
So how can we improve ourselves to reach our goals? Limited by space, I focus on how to improve professional ability.
Promotion of professional ability
Computer major to learn the content is very much, professional ability contains a lot of, the light Android is not enough, there are such as data structure, algorithm, Linux, network programming, computer principles and so on and so on, because I do is Android, so here is biased to Android to explain.
Understand the principles, don’t just use them
Thanks to the spirit of open source and the great nature of the Internet, we have no problem using the world’s top three libraries such as RxJava, EventBus, Retrofit, OkHttp, Glide, etc. Just add a line of dependency and you’ll take off, with the illusion that you’ve mastered the best technology in the world.
I’ve seen a lot of people have libraries on Github that say MVP+RxJava+Glide+Dagger and things like that. They may be very familiar with the first open source library, but when asked how it works, they may be confused and have no idea.
This is actually staying in the use phase of the performance.
You want to know, a library again cow force, this cow force belongs to the author, not you.
From an interviewer’s point of view, if so many people can use it, why should they choose you? Isn’t it? !
If you understand some of the principles, then you can be better than others.
So, how do you go about understanding the principle? Read the source!
(Step back, I’m going to install X!)
In fact, the so-called principle, all written in the source code, without reservation.
Some people will panic when they listen to the source code, at a loss, so much code, how to see ah?
In fact, there are many tricks to read the source code, here to share a few tips:
-
First you have to know how to use it. You need to know what the library does and how to use it.
-
Be purposeful. For a function to have a purpose to dig, so that you will not be lost in the vast source code;
-
You don’t need to see all the details. Some people love to read the source code, to make every little detail clear, so that a day may not see what the trunk is.
Does that make sense? For example, EventBus, how can you send an Event to the subscribed place? With a small question like this, it’s much easier to look at it purposefully.
Reading source code is not simple, but don’t worry, start from the simple source code, slowly improve, learn to peel off the cocoon, layer by layer, gradually cultivate the habit of reading source code and ability.
Believe me, learning to read source code is a huge help to professional improvement.
Keep learning and reading official sources
In peacetime guarantee to complete the work of the situation still want to keep learning, do not study every day, but also want to do weekly study, expand the scope of knowledge, deepen the depth.
Technology is evolving very quickly, and it’s important to keep up with constant learning.
So why read the official source?
To be honest, in this era, there is no lack of learning materials. However, data can be both good and bad. As we all know, the data you find in a Google search will be very different from what you find in a certain degree. So the first step is to use Google as the default search engine.
Official data and other people’s secondary data, the difference is very big.
Here is not to say that all others write data is poor is not worth seeing, but actually other people might also see the official data, through their own understanding output, a data processing and the process may be cut some of the content, may also be distorted/misunderstood the meaning of official, so that when you see may be changed.
So try to see the primary materials, it can let you learn the most basic, the most comprehensive, but also the most useful knowledge, what’s more, now Android official documents and videos are better and better, even do Chinese translation, there is no excuse not to see?
Learn to accumulate, do have input and output
Before I both let you see the official information, and let you see the source code, so it is enough to see?
Obviously not. The paper comes from zhongjue shallow.
Learning, to do have input and output, so as to better master the knowledge in the brain.
The input is the data, source code and all kinds of knowledge, so what is the output? For developers, the output can be notes, a blog, or code.
As a veteran, try to maintain a blog if time permits.
When you start writing about a certain topic, you may experience the following:
-
I already understand. Why can’t I explain it clearly? (I don’t really know)
-
This knowledge point seems to involve other things, I go to have a look, and then found that there are a lot of don’t understand;
-
If I write too much, the bits and pieces of knowledge scattered all over the brain will suddenly be strung together at some point, forming a map of knowledge.
This is the real experience of my blog before. I feel that I understand it, but I feel that it is two levels to make it clear for others to understand. By forcing yourself to put the pieces together and express your ideas in plain language, you will have a better understanding of the knowledge, which will help you become more professional.
In addition, write a blog is also an opportunity to show yourself to the outside actually, write well, there will be Ali employees or headhunters to find the door, to help you recommend the job.
A good blog or Github is also a brick that can open the door to Alibaba.
To join Ali, you may need to learn how to write a good resume, find a good Ali employee to help you, and you may need some luck, but that’s for later. The most important premise is that you have good technical skills.
At the beginning of 2019, a new beginning, I believe many people have set a small goal for themselves, I hope my experience can help you to achieve one of them, I wish everyone can have a more wonderful 2019.
New Year, refueling duck!! Duck!!