How do programmers plan their careers?
The profession of programmer has always given people the impression of high salary. With the rapid development of the Internet industry in recent years, programmers are even more overcrowded. However, many people are concerned about the salary of programmers rather than the profession itself.
Batches of programmers enter the workplace, but many of them do not have a clear understanding and systematic planning for their careers, and thus encounter many problems in the process of their career development.
Here I have sorted out some of my insights on career planning for programmers, hoping to help others. It is also a summary of my own thoughts on career planning.
1. Is programmer a good career?
Although many programmers always make fun of themselves, I think this question is true for most programmers, including myself.
Without mentioning any grand statements about changing the world, the nature of a programmer's work itself is also infinitely attractive: you don't have to put too much energy into dealing with the relationships between superiors and subordinates, and between colleagues, and making a product through your own tinkering is itself a very fulfilling thing.
Of course, there is also the old-fashioned topic of programmers’ salaries. Programmers are indeed an industry with relatively high salaries, especially for those who have just entered the society. It is said that those who say they don’t choose a career based on salary are usually either scammers or second-generation rich people…
In recent years, the salary of programmers has basically not been among the top five in the annual salary rankings, which is enough to explain the problem. Since programmer is a good career, how can you make your career develop healthily?
I think we need to understand this industry first, so let’s take a look at the career development of most programmers at present.
2. Career Development Classification of Programmers
The career development of programmers can be roughly divided into four categories.
1) Keep studying technology
After all, a blacksmith must have strong tools himself. For programmers, a profession that relies on technology, technology is of course crucial.
Therefore, this is a good direction for those technical men who love technology and can get climax from coding. They can sit on the bench, be active in major technical forums, keep studying technology, and then control the core technology in a company. Even if their career changes, they can still make a living in another company with their reputation in related fields.
This type of people are happy because they can turn their hobbies into a career. Every company has such people.
2) Technology transfer management
This is a more common category. Generally, after working in a company for a few years, you will become a project manager due to your rich experience and familiarity with the business. Then normally you will be promoted and get salary increase step by step as a department manager or technical director, and gradually enter the management level.
This is what many people pursue. After all, there is a rumor that programmers are a young person's job. For many companies, middle-level managers and grassroots managers generally choose to be trained in their own company, so there are still many opportunities.
But you have to know that this process is a process of elimination. The closer to the top of the pyramid, the fewer people there will be. Therefore, this type of people must be the best in the same batch or at the same level in the company to stand out step by step. Many middle-level and grassroots leaders of companies are of this type.
3) Start your own business
This is a very hot category in recent years. If you are knowledgeable in technology and come across an idea that you think is very good, you can just do it and find a few like-minded people. Or, if someone draws a pie in the sky for you, you write a plan, find angel investment, and then you may suddenly become the boss of a company.
Why is self-employment so popular? There are many examples of underdogs who have made a comeback, and it is very feasible. Many people have succeeded, but we must be sober. Jack Ma said that 90% of Internet entrepreneurs fail.
4) Timely transformation
There are many types of transformation, such as transforming to give lectures, transforming to publish books, transforming to become a freelance worker, taking on demands yourself, providing consulting services, etc.
Compared with these, there are also smaller transformations. For example, Tang Jun, the then very popular working emperor, switched to testing and achieved huge success. Our company also has some successful examples of technology conversion to products.
In short, as the saying goes, a tree that is not moved will die, but a person who moves will live. When you realize that you are in a bottleneck period, you must learn to change your mindset. Currently, many teaching websites, technical public accounts, training classes and other channels have enabled many programmers to successfully transform.
3. Career Development Directions for Programmers
In fact, the available career development directions are also the career development directions of most programmers mentioned above. The focus here is on which abilities should be cultivated for these four types of personnel.
For those who want to devote themselves to studying technology, we must first remember what our ancestors told us: There will always be people better than you.
In fact, many programmers are conceited, especially those who are not afraid of difficulties in the company, or those who are well-known in the field. It is understandable that they are conceited because of their achievements and abilities, but if they want to go to the next level, or want to make a living by relying on technology, they must always pay attention to new technologies.
Nowadays, technology is updated so quickly that companies may not be able to meet the needs of newcomers in the past few years. If you stick to your old ways, you will soon be replaced by newcomers. This is why it is said that programmers are a job for young people.
Even if they are very experienced and have strong skills, young people grow very fast and at a low cost! Therefore, the average age of major Internet companies has repeatedly set new records for the youngest.
Many companies even use age as a hard criterion for layoffs, so this type of people must constantly improve themselves, communicate more, share more, and learn more.
For those who want to settle down and switch from technology to management, first of all, if you start as an ordinary programmer, you must be able to resist the temptation of money and not change jobs frequently.
Although it is a rule for programmers that job hopping = salary increase, the prerequisite for switching to management is to be familiar enough with the company's business and be able to handle various emergencies, which requires time and experience accumulation. I have heard that many large Internet companies have already issued clear orders not to recruit employees who have worked in a company for less than three years.
Therefore, this type of people should pay more attention to the company's business in addition to coding, and also improve their interpersonal skills. Leaders need to coordinate all parties, so communication skills are essential.
For those who want to start their own business, don't be too impatient and don't just act rashly when you have a good idea or come across a good idea. You should first comprehensively evaluate the feasibility, especially if there are no experienced people in the team. It is easy to not consider everything, and the failure rate of entrepreneurship is frighteningly high!
In addition to having good ideas, starting a business also requires the right time, place and people. Starting a business without capital and connections is basically no different from seeking death. Therefore, people in this category must not be impatient. They must first accumulate themselves, including connections and capital, and then keep an active mind and seize opportunities to have a chance of success.
For those who want to transform in time, if they don’t want to work 996, they can get in touch with some self-media after work and turn their advantages into capital as quickly as possible.
Because the field you are good at now may be eliminated in a few years. So you should summarize in time. If you have in-depth research and practice on a certain technology and have good expression ability, you can record some videos or have a chat directly, which is also a very good choice.
In addition, you can also take on some projects yourself, and publish a book when you have accumulated enough. If you want to be a freelancer, you must first ensure that you will not starve to death if you have no source of income for a period of time before you quit your job.
4. Three things programmers should always remember
1) Exercise
The body is the capital of revolution!
A good body is really important for programmers. Last year, a colleague in the team stayed at home for more than a month because of cervical spondylosis. He was only in his twenties!
There is a joke online that the last book programmers read was "Cervical Spondylosis Rehabilitation Guide". Although the working hours are long and the pressure is high, they must always remind themselves to exercise and do eye exercises. They must exercise several times a week. It is best to find time to stand up and move around when sitting for a long time.
Many companies have sports clubs and gyms, which are good choices.
2) Improve your self-cultivation
The ancients advocated the cultivation of both inside and outside. Good cultivation will help oneself in many ways, including interpersonal communication. Good cultivation will make people feel comfortable with your every move, thereby increasing many opportunities for oneself.
Using some of your spare time to read more books and travel is a good choice to improve your inner self. Reading thousands of books and traveling thousands of miles will also broaden your horizons and mind, and allow you to be open-minded and let go when life is not going as you wish. Perhaps nothing is more important than this.
3) Strengthen technical and business capabilities
This is a cliché. No matter how you plan your career, it is essential to work hard to improve your technical and business level. So no matter whether you are living a comfortable or struggling life now, don't forget to improve yourself. Constantly pushing yourself harder is something a programmer should always remember.
Be prepared for a rainy day and don't let tragedy happen again.
For a long time, there has been a lot of talk about the "midlife crisis" of programmers, and not long ago, there was another controversy because of the incident involving ZTE programmers.
In this part, I will tell you a real example: the protagonist of the story, let's call him Lao Song, was born in 1983, and also graduated from a pure professional background. After graduating from university, he joined a communications company to do .NET development. Originally, he had some opinions about the company. The starting salary was low and the company did not pay enough attention to technology. However, as time went on, he relied on his good skills, received continuous salary increases, and was increasingly valued by his leaders.
Gradually, the idea of changing jobs after working for a period of time was not so urgent, and he worked there for five years. Later, as the company's new projects increasingly adopted Java and other languages, Lao Song felt a sense of crisis for the first time and wanted to change jobs as well.
However, he had just married and had a child, so he didn't have the energy, and he also felt that his life was pretty good at the time. So three years passed, and finally one day his boss talked to him and said that the company had basically no demand for .NET and the original projects would be gradually cut off, so he wanted to talk to him about his plans.
In fact, he had known about it for a long time. Half a year ago, the last colleague who was in a similar situation to him had already changed his job. Old Song knew that this day would come sooner or later. During that time, he couldn't sleep all night and got angry with his wife for no reason. But there was no other way. He still had to pay the mortgage and raise the children. There was really no better choice. In the end, he was persuaded to quit in a very tactful manner.
After that, he tried many other jobs, but none of them were satisfactory. He and his wife often quarreled, and she finally asked for a divorce by agreement. He was middle-aged, his work was not going well, and his wife and children were separated...! He really felt that he could not hold on any longer...
In fact, for Lao Song, he just took one step at a time at the beginning. He was like a frog in warm water, and he felt that he was doing well, but in the end he had no choice.
If he has a clear career path from the beginning, if he wants to go into technology, he should keep paying attention to and learning new technology lines, so that he can keep up in time when the company's project changes technology, or if he sees that his development prospects in the company are not good, he should prepare for the next job early; if he wants to switch to management, he should actively participate in the company's project construction and exercise his interpersonal skills... In short, don't wake up suddenly when you are struggling!
In fact, programmers are not the only ones who have a midlife crisis, so I don't want to exaggerate its severity. I just think that in this industry, we need to make plans for ourselves and our families early. The ancients said: " Preparation leads to success, while lack of preparation leads to failure!"
I hope that everyone who reads this article can plan ahead, think more, and make plans early to prevent tragedy from happening again.
Just scan and follow us~