Bo Master participated in the CSDN blog star selection, help me vote it.
Click to vote for me
Objective
The reason I wrote this article is because of the recent blogs and my development Group ( 215680213 ), many of my small partners have asked me to talk about the Android learning route, so I decided to write a blog to illustrate the problem. Since there are a lot of small partners to consult this issue, that everyone is still want to improve technology quickly, after all, technical improvement is an indispensable step in professional development, technology is good, to be recognized, in order to raise salary. In general, rapid technology improvement is not easy, but the right way to add hard sweat can shorten the process. Perhaps someone will ask, how do you write this learning route? Can you write this technical route? This is not a good answer, but I will write according to my personal understanding. Here first of all my personal situation, my personal introduction are written on the blog, I hope to give you some confidence. Here's a technical roadmap that assumes you're still an Android novice, Android junior engineer.
A clear self-positioning
Now you are a junior engineer, but you want to be a engineer, so, you have to set a goal for yourself, namely: I want to become a senior engineer of the man. With this positioning, and trying to work towards this goal, and then there is a feeling deep inside, this feeling will become your B lattice, that is, although I am now a side dish, but I am not a common side dish, so there is a sense of pride inside, and this pride will provide you with positive energy. This is a false one, but it is useful.
Two learning routes
First find this Android primer book to see, this good to do, most of the books on the market are introductory books, to the basic things to understand, in the study of the project to write a demo, it is necessary to note that the demo to write their own, even according to the book on the copy, can not directly put the book in the demo run. This is a big difference, the code feel must be developed by tapping code, copy the code and run the demo effect is very different, this must be noted. After reading the introductory book, Basic can do some development, such as some of the company's projects. In this, we have become junior engineers, this time is generally 1-3 months.
Below is how to become an intermediate engineer:
Intermediate engineers this stage is very important, generally need about 1 years of development experience can be achieved. First of all, to find a reliable company to do Android, what is a reliable company, is in the inside can learn something, you can not consider the treatment of what, after all, the technology has a back treatment will naturally have. Usually in the company to seriously do the project, active, all to learn knowledge as the goal, do not map easy to do projects. At the same time also learn the company's internal engineers, architects to write code, to understand into their own things. These are the work experience, in addition to work, but also in the spare time to study hard. Your spare time is the rest of your non-working hours, and the more you take advantage of this time, the shorter your growth path will be, and the faster you'll be able to improve your technology. We do not underestimate the spare time, and even a lot of cases, only the working time is far from enough, you have to study in your spare time. How do you learn in your spare time? Here are a few suggestions for you:
1. Write an app, such as a high imitation series, or make an app release yourself
2. Create a blog, csdn or personal blog
This one in my eyes, is necessary, because the study of the summary, mastery, and blog just can give us a summary of the place. From time to time to summarize their knowledge to write a blog out, which is an improvement for themselves, and also a help to others. How to say, when you write a blog, you will find a knowledge you will and write it is not the same, can write to really understand. In addition, when your blog is written, there will be a lot of people to see, this is also a praise and encouragement to you, so that you feel that your hard work more valuable, this kind of self-interest, is a must do. Just start to write some basic, slowly will write some difficult, so as to gradually improve. In addition to writing a blog, usually also in the inner heart more summary, thinking, for example, you can think about, Android all the IPC way there are. Blogging and open source are useful for raising personal awareness, and once people have a reputation, many good things come. Here you can read an article I wrote earlier: Establish a personal brand: Let the Enterprise HR to come to see you.
3. Create or participate in open source, such as GitHub
The benefits of open source are different, GitHub on a variety of open source, usually everyone is to use, but they write an open source for the world's people, is not a very good thing? We recommend that you take part in open source, because open source looks high-grade. I have my own open source, you can see: Https://github.com/singwhatiwanna.
4. Study some advanced concepts, source code, etc. in Android
This is very important, in addition to quantitative changes, but also the need for qualitative change. As a mid-level engineer, must also improve in the core technology, such as Aidl, Remoteviews, Android internal operating mechanism, etc.
After a few processes above, about a year, Android intermediate engineer is OK, the following talk about how to become a senior engineer:
Become a senior engineer is not too specific, that is, the intermediate engineers of the several recommendations, each do a good job, this phase often takes 1-2 years or more. Senior Engineer's requirements are: proficiency in the Android API, understand the internal operating mechanism of Android, view, activity and other common Android internal operating mechanism, familiar with the common Android knowledge points have dabbled, And also can solve some of the more biased door (need based on the internal mechanism of Android), the performance tuning and adaptation of Android has a good understanding of the code style and has a certain design pattern, in addition to the work of technology also have business understanding, can guide Junior level engineers, Be able to dudangyimian at work. At the same time in the ability to solve problems to achieve a new level, that is, to use the appropriate means to solve the problem can not be Google out of the answer. This problem-solving ability of the grade, this is a little abstract, but it is very important, it determines the grade of a person, the specific needs of everyone slowly experience, when the technology reached a grade, you can easily solve some of the incurable diseases.
About the whole cycle, from beginner to advanced about 2-3 years, or longer. So the more you take advantage of your spare time, the shorter the cycle, and the higher your personal value. Although it is easy to say, but the process of hard work is very difficult, but as long as you insist on hard work, soon your life will be different, believe that, who all know to work hard to gain, but why still many people did not harvest it, the reason is not easy, is to spend time, is more painful than watching a movie game. Not afraid of others than we are clever, afraid than we are smarter than our efforts, good, everyone refueling, the time to spend, senior engineer naturally have. Finally, re-emphasize the importance of efforts, in a company, around the level of people are similar to us, to know that the difficulty of the fore, from so many people stand out is difficult, therefore, must strive to force themselves to study, so that it is possible to stand out, please we must have this awareness.
Android Learning route: How to Grow as a senior engineer