In the rapidly evolving internet industry of today, questions and discussions like "Is 35 a turning point for programmers?", "Do programmers really face unemployment at 35?", and "What's next for programmers after 35?" are rampant. The debate and concern over a so-called "crisis at 35" for programmers have become hot topics. This may stem from an uncertainty about the future and a fear of the pace at which AI technology is developing. As they age, programmers might face the risk of becoming "obsolete" and struggle to adapt to industry changes.
"However, the solution lies with the one who tied the bell," so to speak. We should face and address these issues, explore the reasons behind them, and understand how to avoid such situations. Therefore, this article delves into the root causes of these issues and offers practical advice to help programmers avoid these pitfalls, enhance their professional level and achievements, and stay ahead of the times.
1. Not Proficient with Tools
As programmers, our work is inseparable from various tools, and mastering these tools can not only improve work efficiency but also reduce the likelihood of errors. However, often we may miss the chance to enhance our work efficiency due to unfamiliarity with certain tools. For instance, under the influence of AI tools, if we don't learn to utilize these smart tools, we might easily be eliminated in fierce competition. From intelligent code editors to speech recognition software, the involvement of AI technology has become an indispensable part of the modern work environment.
Recommended AI Tools:
- Visual Studio IntelliCode is an intelligent code editor that offers efficient and personalized code completion suggestions based on context and your coding habits, making coding smoother.
- GPT-4 is a natural language processing tool capable of generating high-quality text content, aiding in writing documents, reports, or even blog posts, saving a lot of time.
For example, if we still use Notepad for coding and don't utilize the powerful features of Integrated Development Environments (IDEs), we'll waste a lot of time on tedious tasks and increase the risk of errors during code writing. Additionally, incorrect use of version control systems could lead to code version chaos, hindering team collaboration and code management.
Recommended Integrated Development Tools:
- XAMPP is a cross-platform solution that supports Windows, Linux, Mac OS X, and more. It integrates Apache server, MySQL database, PHP, Perl, and other tools.
- ServBay is a local web development environment designed specifically for macOS, integrating popular Caddy server, MariaDB and PostgreSQL databases, Redis, Memcached, and other NoSQL databases, as well as phpMyAdmin, adminer, and other database management tools.
Through these examples, you'll find that by making good use of tools, we can not only improve work efficiency but also adapt to the rapidly changing work environment, maintain competitiveness, and better unleash our creativity and professional capabilities.
2. Dislikes Communication and Feedback
In my career, I've noticed a significant portion of programmers prefer to "keep their heads down and code, oblivious to their surroundings." Many believe that strong technical skills and certifications alone can dominate the workplace, which is problematic. While technical expertise is crucial, good communication and active feedback are equally important. However, for those not adept at communication and feedback, this habit can severely harm the team and project.
Communication Difficulties, Team Fragmentation
Effective communication is key to maintaining team cohesion. If individuals prefer to work in isolation or avoid interacting with others, team collaboration is likely to suffer. A lack of communication can lead to information silos, task duplication, unclear objectives, and more, thereby reducing the overall team's work efficiency and even affecting team atmosphere and balance.
Lack of Feedback, Hindered Project Progress
Feedback is vital for project success. If someone habitually fails to provide feedback to others, potential issues in the project may not be identified and resolved in time. Whether it's positive encouragement or constructive criticism, feedback among team members is crucial for team growth and project progress. Ignoring feedback means the team can't adjust direction in a timely manner, can't improve work quality, and may ultimately lead to project failure or delays.
Harms Team, Harms Project
For individuals not skilled in communication and feedback, they might miss opportunities for in-depth interaction with team members, miss chances to improve issues, and ultimately miss the opportunity for project success. Communication and feedback are not just soft skills beyond technology; they are essential elements for ensuring smooth team collaboration and successful project progression. If individuals act independently and are unwilling to share information and ideas with others, it could severely harm the entire team and project, making it difficult to achieve common goals.
3. Over-Indulgence in Learning and Training, Lack of Practical Experience
As a programmer passionate about coding and with a strong desire for knowledge, I once fell into the trap of over-learning and training. Reflecting on my early days, I was obsessed with learning various new technologies but neglected the importance of applying knowledge in practice. This behavior not only wasted my valuable time but also made me miss many practical work opportunities.
Wasted Time, Missed Opportunities
In actual work, employers value our practical abilities and problem-solving skills more. If we only stay at the theoretical level and lack practical project experience, we will miss many work and project opportunities.
Wasted Money, Difficult to Apply
Dazzled by the myriad courses on the market, I was confused and gradually deviated from my initial learning goals, emptying my wallet in the process. However, I eventually realized that much of this knowledge couldn't be practically applied or transformed.
Thus, my advice to beginners is to learn some basics, then learn by doing. When encountering problems, focus on learning to solve them. This way, you won't deviate from your goals and can maintain a balance between knowledge and action.
4. Lack of Career Planning and Goals
Lack of Ambition Leads to Stagnation Crisis
Without career planning and clear career goals, programmers can easily fall into a comfort zone and stagnate. With rapid technological development and increasing market competition, older programmers may struggle to keep up with the younger generation's pace, putting them at a disadvantage during interviews and job adjustments.
Lack of Enthusiasm for New Technologies
As time goes by, some outdated technologies may gradually be phased out. If programmers stay too long on these obsolete technologies and don't update their skill sets in time, it will become increasingly difficult to compete in the market.
Lack of Industry Recognition and Development
Programmers lacking clear career planning and goals often struggle to maintain continuous learning and growth. This can lead to difficulties in gaining industry recognition and advancement opportunities as they age.
Therefore, early career planning, setting clear goals, and continuously learning and upgrading one's skills are key to maintaining competitiveness and career development. I hope every programmer realizes this, actively plans their career path, and embraces future challenges.
In Conclusion
It's said that Turing Award winner and SQL language inventor, Jim Gray, was still programming at the age of 76. Time couldn't defeat him; eventually, he disappeared into the vast ocean.
I firmly believe that in this era full of opportunities and challenges, as long as we possess the right wisdom and strategies, we can avoid these unemployment traps and achieve continuous growth and development in our careers. Let's navigate through the 35-year-old crisis together and lead our professional journeys towards a brighter future.
Top comments (21)
I'm 56, sold my first piece of commercial software (a game) when I was 15 and have been building businesses ever since - based primarily on my ability to build software and solve people's problems. I've been a CTO since 2000, I still code nearly every day, my team and I work shoulder-to-shoulder to build our solutions, we operate with as little hierarchy as possible and learn from each other.
My belief is in the solution, in solving the user's problems in the best way possible and by building robust things - this is the passion I believe we need.
Over my career I've programmed in everything from Z80 assembler to TypeScript, via a host of languages and using a series of tools - you indeed have to keep learning, it's true that learning to finish projects is more important than just starting them - it's also true that you should murder your darlings and step away from your failures with your head held high. Be good at what you are good at, and keep pushing that envelope - I'm rubbish at a whole ton of things and I could talk myself into a corner with regret about it - I've learned not to do that. Our job is about change, about new challenges and new opportunities, you can't ever think you're the smartest person or that the solution you used yesterday will be 100% right tomorrow. So you've got to find what is useful for you today.
As Jon says in his comment, I love this job, I can't ever imagine not doing it in some way. There is absolutely no way I'd reject any job applicant, at any seniority level, based on their age, gender, sexuality or race - not because it's the "woke" thing to do, but because, in my experience, it's the best thing to do.
Your comment truly resonates with me. Keep up the fantastic work!
I'm 59, but more embedded sw/hw bent. I feel the same. Well said!!!
I'm 47 and have never experienced such a crisis through almost 30 years of being a professional developer (programming for 40). I love programming and always will - that's enough for me.
I'm in the same boat, just one year younger.
Great to hear that.
So cool!
Your love and dedication to programming are undoubtedly your strongest assets in overcoming challenges.
it is amazing in this age still coding if you in china
I've been programming for 48 years. No mid career crisis. Yet.
I agree with all 4 points.
I'd also doubly emphasize: software development is a social activity, as much as it also requires technical skills. It requires good social and communication skills.
It's truly inspiring to hear from someone with such a vast amount of experience and still passionate about their craft. I wholeheartedly agree with your points, especially regarding the importance of social and communication skills in software development. In an industry often stereotyped as purely technical, the significance of teamwork, collaboration, and effective communication cannot be overstated. These skills are crucial for understanding project requirements, solving problems collaboratively, and creating software that truly meets users' needs.
I am 54, also work from Z80 -> Typescript a various tech stack. 2 years ago I found myself unemployed ... again ( startup was broke ) so I take a look a next opportunity and collect a few possibilities. My final decision is going to international company to improve my really worst communication skill ( even I do not have a great English skill ) so I try push my boundaries.
It is success, now I lead a team ( I also never work in lead position ). But I keep my first interest is the coding problems. Also get a new hobby: AI image making.
find the physical glitch on image
I don't see how any of these points has anything to do with being older than 35? I have never heard about this 35+ problem in the real world. I only read internet articles about it, and I am starting to believe that this is just a topic that is grabbed out of thin air. If people love programming when they are 35, 40 or 60, and spent a lot of time on it. Then for sure they will be better than someone with less experience. Just keep programming, and don't listen to these rumors, if you keep developing your skills, you will naturally still be able to keep a job.
Individuals who dedicate themselves to honing their craft, regardless of their age, bring a depth of knowledge and perspective that can significantly benefit projects and teams. The key is to stay curious, keep up with the latest technologies, and maintain a love for problem-solving. Age, after all, is just a number, and the diversity of experience can only enrich the tech ecosystem. Let's continue to focus on skill development and passion for the craft rather than arbitrary age limits.
This is a wonderful post, thank you. I'm 37 and have been programming since 2010. In my opinion, we can pursue programming at any age, whether we're 60 or 70. What matters is our passion for it.
Experienced developers can continue with their programming while also sharing their knowledge and wisdom with the community. They can do this through writing blog posts, giving talks, and participating in podcasts. Additionally, they could shift their focus to product development. Programming is just one aspect of product creation. The process of developing a product encompasses many layers, and areas like software design can greatly benefit from the input of experienced developers.
Technology is progressing rapidly, but there's no need for developers or programmers to compete with it. We can't learn everything that emerges each day. Instead, we can focus on improving ourselves and adapting to new innovations, like AI, rather than fearing them.
I'm 67, a mechanical engineer by degree and a software engineer by practice (39+ years and counting). Technically, i've moved into software architecture. I've spent the vast majority of my career in the UI space and i wouldn't change that for anything. I'm curious about a LOT of things outside of just UIs, so there's never a shortage of new things to learn.
As a Technical Architect, i might actually be writing more code than i did as an individual contributor (at least it feels like it). I know for certain that i help more people & projects now than i ever have in the past. The UI space has been a never-ending landscape of change, which is probably one of the reasons i like it so much. There are always new things to learn and try, which is where most of my coding is focused on (quick little prototypes to try things out or solve problems).
Looking back over my career, i've had times that i struggled more. The best advice i can give is to "Never Stop Learning". The times i struggled were the times i became complacent with what i knew and didn't actively learning new things.
I have no intentions of walking away from this, even at 67. Looking forward to see how things change in the next ten years...
So cool.
I wish I could be like you when I'm 67!
The advantage of being older is that you have seen the metal hit the road. You can spot fads from miles away. You know what will deliver (and what not). By having people follow fads you got them. They become less productive so sales can come in and hook the company on a framework (that is overpriced and makes that company loose their autonomy). When you are in a company where management fell for a fad, you need to move on or you loose yourself in this mid-career crisis. It will happen every 7-10 years. Systems are now breaking down left and tight. The same happened before the cloud came. It is now breaking down to sell the world on AI. Every cycle is more consolidating into less hands. Now that you know this, you have time to (re)position yourself.
It hit me exactly at 35-36 yo.
I was so bored by same kind of problems to solve and same kind of clients that did not understood that getting an ecommerce website up and running is not enough to have a successful business online.
I took a step back and open a motorcycle repair shop. I felt that doing something with my hands, something in the physical world will be more rewarding and I was right, it felt amazing. Of course I've used my skills to integrate & automate many of the processes in the repair shop and I love it. It took me 3 years to switch back to full SWE.
Fast forward, I'm 47 now, learning new stuff every day and loving every minute of writing code, explore new technologies and share that within the team.
I disagree with the direct cause-and-effect relationship between the issues you mention and age. There are people who at 20 years old are more settled than many at 70 years old.
I agree with your opinion