Before we do, let me ask you a few questions:

1. Are you starting to worry about your age?

2. Are you starting to feel like you can’t survive overtime?

3. Are you starting to panic about new technologies you don’t know?

4. Are you starting to lose your groove?

If the answer is “yes” to all of the above, then you are indeed in the “fear of aging” category.

“Youth rice” this word, programmer is certainly not strange, because went up a few years class, achieve a certain age, want to break through again can obviously discover powerless, begin to fall into “afraid of old” anxiety.

This anxiety does not matter how old you are. If you have only been in the industry for two or three years, if you are still at the same level as when you started your career, you must be afraid of getting old, because you are not sure whether you will be replaced by a younger person. It doesn’t matter if you’re in a big company or a small company. It’s a common problem in the programming industry. In general, there are three reasons:

  • Large companies are strong in vertical development but weak in horizontal development

In large companies, there is often a clear division of programming jobs. For example, many large companies have front-end development that is split between CSS and JavaScript. As a result, you spend most of your time working in your area of responsibility and don’t know much about other areas.

But do programmer most afraid of, be to study in a field too, because programming technology is rapid iteration, new technology emerge in endlessly, all sorts of language, frame can update every year, if you focus on a single field only, if the market shrinks, you are in an awkward situation…… The programmer who did MFC or win a few years ago is a real example. Including C/C ++ in recent years, the market space of Linux is also gradually decreasing, and the hot field is almost dominated by young people. At this time, if you want to change, you will not be able to kill the young generation.

  • Small companies have a wide range of technology, but the precipitation is not deep

In turn, in small companies there is often more emphasis on spending less money, hiring fewer people and achieving greater efficiency. As a result, most of the time, a programmer has to juggle multiple roles, often mixing front-end and back-end writing, and even developing entire business modules (known as full-stack development) by himself, not to mention occasionally fixing computers and networking for the company.

As a result, your youth is gone, and you know a little about everything, but you’re not very good at it, so if you really have to do a big project, you feel a little guilty.

As a Java architect, I have a friend who has been working in a small company for more than 8 years. Most of my work has been in the development of centralized business systems (networks) in Java, and I am generally dabbled in the business of microservices and distributed systems. However, with the continuous growth of traffic, most of the products of Internet companies use distributed technologies to improve their business systems. Therefore, when he was asked about distributed technologies in the interview of a large Internet company, he obviously felt that he was willing but not able, and finally failed in his job-hopping.

  • Enterprises prefer high-end talents, and the competition is increasingly fierce

In addition, in the winter of capital in the past two years, BAT, TMD and some large Internet companies slowed down their recruitment of programmers, which was far from the peak of the previous years. In contrast, the demand for high-end technical talent recruitment was increasingly strong, and they were even willing to offer 30-50% higher than the market salary level to recruit.

  • One of the reasons is that the savage growth period of Internet enterprises has come to an end, there is no need to savage expansion of personnel scale;
  • Secondly, basic talents have become saturated, and the company is thirsty for high-end talents who can help it continue to lead the trend.
  • Finally, the rise of artificial intelligence is threatening to replace many r&d jobs with more efficient programs.

In terms of the overall environment, the actions of BAT and other giant enterprises are generally the direction of the industry. It is not difficult to see that their pace of personnel adjustment is basically the same, that is, to reduce ordinary positions and attract top talents. It can be seen that the competition between programmers, especially basic programmers, will only become more intense when the demand for talent levels off.

Therefore, no matter what age you are, if you are not strong enough, you will face the career anxiety of “where should I go in the future”.

However, I do not agree with the “youth rice” said, all walks of life, to put it simply, is to create “aging fear”, because the era changes so fast, who does not know when the next revolution to replace the Internet will come, but this is not a dead end.

The advantage of a younger programmer is youth and passion, and the advantage of an older programmer is experience and experience. Generally abandoned by The Times are people who are standing still. As long as the industry always maintains the best core competitiveness and learning ability, it is difficult to eliminate you.

So, how to make their competitiveness always in the upstream?

  1. Determine career planning, grasp the pace of the workplace

Programmers want to extend their career life cycle, the first thing to do according to personal hobbies career planning. Overall, there are four tracks to challenge. Take JAVA as an example. If you want to go to technology management, you can go to the CTO direction. Like to do products, can take the road of versatile “product manager”; Want to delve into technical theory, consider the “technical expert” direction; For endless exploration of the mysteries of programming, take the “senior Architect” route.

Secondly, basic knowledge is very important. Continue to take Java as an example, if you want to go further, you must have a solid grasp of the basic knowledge of Java, such as how to run the most basic Java programs, many people will only execute Java programs through IDE, but how to execute the underlying IDE? For example, the basic data structure and algorithm, not even binary search, sorting, binary tree traversal, linked list, stack and so on are not familiar with, it can not be said.

Another key is to grasp the pace of the workplace, step by step. According to the picture below, can you see your current rhythm is right?

  1. Get out of your comfort zone and broaden your lateral skills

How comfortable you are can be tested from your job interview.

I am currently working for an Internet finance company. When I interviewed some older Java programmers, I found that the frameworks and technologies they used to use were old and outdated, while they were familiar with newer technologies (such as Spring Boot, SmallSQL, MyBatis, etc.) but not deeply involved, because they only invested in the research and development of one type of technology for a long time. While ignoring the expansion of horizontal skills, which naturally does not match the talent needs of the current rapid development of Internet enterprises.

Below is my summary of the current mainstream of the Javanese architect horizontal extension technology learning framework, you can see if you are comfortable with it. Due to the limited layout, can not release all learning topics, interested in my private chat or add.

Do you find yourself with room for improvement? So, don’t be limited by your current field. Learn more about different technologies in different fields. You can deepen your knowledge through self-study, or you can choose to move to a new company and work with niu to advance.

Summary:

Don’t be afraid of getting old, really. There is no age limit for writing code. After all, the world is fair.

Speaking of circles, I have been working on Java architecture for more than 10 years. I have taught some people and made many friends in the industry, including some BAT leaders. If you are interested in Java architecture technology, welcome to my Java learning group: 725219329, there is no guidance, but we can make fun of it and explore together.

Group will be updated at any time some free sharing of popular source code, learning videos and other materials, I hope to really help you out of confusion. Scan the QR code below or click to read the original article to join.

Pay attention to my public number: Java architect learning, you can get more programmer technology dry goods!