Is age discrimination a career issue faced in the software development industry?
Is software development a 'dead end' job?
Should we shift our career plans to management positions?
The above questions have been fully answered on Quora, so let’s briefly summarize them.
As far as ageism goes, I don’t think anyone can deny that there is a certain level of ageism in this industry. Judging from the hiring situation of new employees in most Silicon Valley companies, the median hiring age is below 30 years old. However, this is not a matter of company policy - no one will be hired over a certain age; there is a specific preference for candidates of race, gender or other characteristics, it is just an objective phenomenon.
Age discrimination in the technology industry has many causes. First of all, many companies find that hiring freshly graduated college students (from prestigious schools such as MIT and Stanford) is the easiest recruitment channel. New graduates are "cheap" and at the same time "quality". Until then, they were unencumbered by the experience of any other company, a blank slate of possibilities. It is easy to spread corporate culture, software methods, and practical experience to them, and fresh graduates can better accept and digest it.
But at the same time, if you are a candidate with 3 years of solid programming experience in related technologies (perhaps coupled with the aura of a prestigious school), no one will say that you are not a good candidate. In fact It might be a better choice for you. It is of course a good thing to have strong professional skills, but when the other conditions of the candidates are similar, the relevance of your skills to the business becomes even more important.
Some people say that "technology changes so fast that engineers may not be able to keep up." This may have been true at one time, but the core technologies needed to build networks have existed for decades. The C language appeared as early as the late 1970s, and it has been more than 40 years ago. Even Java has been around for more than 20 years (first appearing in 1997). This means that there are engineers who have seen the industry develop all the way to where it is today, and they may be approaching retirement age, and their entire career has been focused on C voice and running Unix servers for decades or even decades. Looking at it, this kind of "high-quality" engineer with rich experience is very rare, and I don't believe anyone will claim that they are not as good as a 22-year-old college student who just graduated.
On the other hand, I have never considered software engineering to be a "dead end" career. Indeed, after strong salary growth, it has gradually stabilized. Part of the reason may be that engineers are essentially a "commodity" of humans. Unless you are a very special engineer, you can always be replaced by someone else. This substitutability makes software engineering salaries somewhat unsatisfactory compared to other competitive industries. However, it is still guaranteed that software engineers are still in high demand among enterprises, so you can always find a job.
Finally, is it a better choice to take the "management direction"? The author asked, why only consider this option? There are many career paths available, including switching to another engineering field or other fields. It's all an option. For example, many software engineers who don't like product development turn to operations, product management, project management, or positions with lower technical requirements, such as sales or administration. There are even some friends who completely change their careers. Entered university and started his education career.
Finally, the author said earnestly to software development engineers: "Don't turn your career to management from the beginning. No one will hire a gardener to build a skyscraper, and no one wants to hire a gardener who can't knock. Engineer managers who move code”.