preface

Some friends often ask me about career planning of programmers. Most of them have worked for two or three years or more than five years, and their career development has hit a bottleneck. I would also like to offer you some suggestions for reference.

Just a few days ago, I received another question about career planning, this time from a college student.

I cannot help feeling that the waves behind the Yangtze River push on the ones before, and the new generation wins the old. This is not, college just began to focus on career planning.

It’s never too late to plan your career

The student mentioned above is relatively high consciousness, in the beginning of the school had a sense of occupation. I think programmers and any other profession should have a clear and long-term career plan.

Without career planning, people basically do their work to complete the task, and it is difficult to get promoted, because there is no goal, so people just muddle along. A lot of programmers for five years are still just bottom code farmers, ranks did not rise, wages did not rise how much, with more than ten thousand wages to do coolie, can only wait for optimization.

Therefore, as a person with a long-term vision, he should have his own career plan, even if there is no long-term career plan, he should also have a short-term plan, only in this way, can work have motivation, life will have a goal.

Therefore, career planning can be done sooner rather than later. How do you get out of being a coder at the bottom and become a good architect? Here are some of my suggestions for you.

Principles of career planning

Career planning is actually a continuous, systematic and planned process of career and even life. Career planning is also called “career planning”. How we plan our career sometimes affects our whole life.

Career planning principles are as follows:

Is preferred: only this thing is their favorite, it is possible to meet a strong opponent of the time still adhere to; Don’t give up in extremely difficult situations; Even in the face of great temptation.

Be good at: Do what you are good at, to be able to do well; Have the ability to do well, to solve specific problems. Only do what they are best at, can do better than others, in order to stand out in the competition.

Realize value: You have to do something important enough that the value of completing it is compelling enough that it is worth doing, or you won’t finish what you started.

Long-term development: first of all, you have to have the opportunity to do, have the opportunity to do also have enough large market and growth space, such a career to have a head.

So often we will hear a man say myself very lucky, graduated from university to go to a company, then jumped to another company, the company is very good, less than 35 years old to achieve financial freedom, behind the nature of the career planning must be based on the preference, good at it, to realize the value and the principle of long-term development, not just on the surface of the lucky.

Therefore, it is suggested that students do not choose a new job just for the salary, location or company popularity. They should follow the above four principles, and the more they are satisfied, the more they match. In the middle period, they will not be confused about what to do in the future.

Here are some career planning tips for Android programmers with a few years of experience.

A few key turning points for Android programmers

The general direction of development of programmers is mainly in several categories: technical expert, architect, technical management, management, product. Unless it is a role in the beginning, otherwise basically start from the bottom code farmers, slowly develop and change.

Here are a few key turning points in the career of a programmer.

I have been working for about three years

At this time we basic for the ordinary add, delete, change, check work is very skilled. Can handle most of the routine project development, complete the tasks assigned by the company, this is a standard junior programmer.

But after three years, if this is still the case, the person is basically useless. Some people will use their spare time outside of work to learn the technology they have no access to, to nibble on the underlying principles of technical books. During these three years, I improved my skills a lot. There are also a number of programmers who have barely improved their skills over the past three years. Three years later, the difference between the two groups of programmers becomes apparent on two levels.

In five years

As a programmer for five years, the project has done a lot. This is the time to become an architect or project manager, not just a programmer. In fact, I think programmer is also a manual worker, writing code every day, if the company has many projects, also need to work overtime. I’m sure my body won’t hold up over time. Therefore, you should set yourself a goal to use every available time to reach the technical level of the architect, promotion is a great help to one’s career.

In ten years

By the end of the decade, he was basically an expert in the industry. People who do technology generally choose to go out and start their own business. Anyone can’t resist the temptation of starting a business to bring returns. Therefore, in this stage, in addition to improving technology, I should also continue to learn my management ability and my speaking ability to prepare for entrepreneurship. Even if I don’t go out to start my own business, I still need to reach the STANDARD of CTO after ten years.

Development planning Proposals

First of all, set a goal for yourself, that is, do this industry to achieve a post in a few years, which is a relatively long time. Therefore, I suggest that you set a salary target for yourself first, such as reaching 15K after a year’s job-hopping, what company you want to work for and these relatively short-term goals.

When we set these goals, we should strictly implement them and improve our professional skills in our spare time. Communicate more with the gods, after all, it is better to be led by someone than to explore.

The following is a mobile development architect advanced learning route prepared by ali P8 leaders, together with a set of eight modules of learning materials. Friends in need can ask me for free.

Take 298 days, 8 modules, 3,382 pages, 660,000 words, Android development core knowledge notes!

This study notes is not the kind of cheap information that is packaged and downloaded on the Internet, but when he needs to learn a certain direction of knowledge, he needs to read it, go to the Internet to find it one by one, and finally summarize it.

This note is divided into several modules, the content is not much, but in essence.

We can get here, for the study of computer students to help very big, and very systematic: this is the big guy public address of the original text

Partial information display:

Behind the content we need to go to the big guy’s original blog to see, I will not say here.

Learning Resources recommendation

Video series:

  • Tencent/Alibaba/Baidu/Byte/JINGdong…… All included
  • FrameWork layer source code analysis
  • Android Project
  • Android advanced UI combat
  • Performance optimization

Technical series:

  • Binder related questions: How to answer
  • Mobile developers must know: a magical BUG in Kotlin
  • The story behind the Activity display interface: This article helps you understand the complexities of a View
  • Rhea (a new generation of all-purpose Performance Analysis tool)

The last

Many senior code farmers I interviewed used old frameworks and technologies. Although they had some understanding of new technologies, they did not implement them due to their limited energy. This type of programmers did not match the rapidly developing enterprises.

The cruel part is that the world is changing so fast that no one can relax for a moment. The fair part is that no matter you are young or old, you have to rely on your strength to speak for yourself.

Those who have been abandoned by The Times are always running slowly or even wandering in the same place, namely the so-called ten years of work but only one year of work experience.

The advantage of young programmers is youth and passion, the advantage of older programmers is experience and experience. So, young programmers should not feel anxious to leapfrog their age, and older programmers should not feel that young people are taking their jobs.

Each age group has their own problems to solve and face, recognize their real needs and desires, and then to find their own place to fight strange upgrade, is the top priority.

The age will never exclude older programmers, but the age excludes older programmers without ability. Programmers who can really solve difficult problems will always be in demand, no matter how old they are.

I hope the programmers here will always keep a heart of learning.