Work hard on yourself without compromise
When I started programming with my 26–27, I heard that you can do programming until 35 or at most 40. They told me that in that age your brain is not young, can’t think as fast as young brain, can’t memorize things in the way the young brain can. You start to code slow and youngsters have better performance than you. Also, you can’t learn new things with the speed young can.
So the future of 35–40 years old programmers is to be some kind of manager, team lead or so. Where you can contribute to system decisions with your experience and let “kids” do dirty work.
While in the majority of cases this can be true, I totally disagree with that. Let me tell you my story. I celebrated my 40th birthday in May. Now I’m in my forties.
I’ve never been interested to lead people in a non-technical way. Stopping coding wasn’t an option for me. But when I was younger, I was relaxed, preferred going out with friends rather than spending my free time learning new things.
I was an average developer. The turning point was some time 3 years ago when I worked on a new project with a lot of younger developers.
They were extremely talented and hardworking, so they easily had better performance than me even they had just a few years of experience.
That was a moment for decisions. I didn’t want to stop coding, but obviously, I needed to improve myself. I didn’t believe they were better because they were younger and their brains work better.
I played chess in my youth and remembered famous grandmaster Viktor Korchnoi who played as a world-class grandmaster for 80 years.
So with a proper lifestyle, you can do the most challenging thinking jobs until deep age. “Kids” were better than me because it was a new project and they knew better new technologies. They were very dedicated and learned a lot in their free time. They were focused on success in IT.
I needed to be better. I needed a more serious approach to programming and in life, generally. The first thing, I understood I should be a hard learner. To start constantly improving myself. That could be efficiently done only in your free time, before or after your regular job. And on weekends or even holidays.
I gave to me the goal to learn new things at least 10 hours each week. The regular job should also be done in a proper way.
I also had my family life — little child and wife. As you can see, it was pretty hard to find the time. But when you are focused, you can find it. Remember, focusing on success is the key! You must be focused if you want to do something big! Here are steps I did in order to be better and which I also recommend to you.
The focus on success is the key! You must be focused if you want to do something big
I needed to cut many non-essential things. For example, I started to go out less. I didn’t watch football and basketball games like before.
After my daughter got asleep, instead of watching a movie on TV or so, I often learned. Also, started to learn over weekends.
Not too much and not every weekend, but I did that inconsistent matter.
Algorithms: I solved a lot of different problems in the algorithmic field. This is a field that many programmers underestimate. They say it’s not important.
However, if you apply for tech top companies, this is one of the most significant aspects.
They want to see how you do the thing you need to do: coding. And they want to see how you think, what is your ability to solve abstract algorithms’ problems. In that process, you will also need to learn some fundamental data structures as lists, queues, stacks, binary trees, graphs…
Also, exercising algorithms will improve your logical thinking and will help you find out edge cases in real-life programming problems. Your brain stays young and sharp. It’s like the gym for your brain.
Sources for learning: Codility lessons, the book “Cracking the Coding interview”, Youtube materials, HackerRank lessons and problems, Leetcode problems. You can watch videos like this:
Technology: I worked a lot on this, especially looked videos of different topics. I didn’t do exercises or give examples. Or very rarely. Wanted to learn and to have as much broader instant knowledge as possible. There are a lot of online materials — written or video courses.
There are a lot of Youtube materials also. And a lot of blogs (for example on Medium). Regarding video courses, I use Udemy or Pluralsight. But more prefer Udemy. When I watch videos, I fasten the playback speed of the video.
If it’s something pretty new to me, I use 1.25 speed. If it is something known, but I’m not an expert in that, I use 1.50 speed.
If it is something I’m an expert in, then I use 1.75 or even 2.00 speed. But in these cases, I also turn on the CC option (Closed captioning — written version of a video).
When choosing which course I get, I mainly chose bestsellers or with the best average rating. But prefer not too much longer courses.
Object-oriented design & system design: For these, I mainly used Youtube materials and written texts from Google searches. Here are the links to good Youtube materials:
I had started to exercise 2–3 time in a week. Doing a regular job and also learning in free time is pretty tiring. You will start to have pain in the neck and back (especially in my age).
You need to be in good shape if you want to hard work in the long run. It also helps the normal functioning of your body and brain. Do some exercise 2–3 times a week.
I prefer gym and running on the treadmill. While running, I can also watch some movies (with subtitles because music in the gym is loud) or some football or basketball matches – my gym has a TV above each treadmill.
I started to sleep enough as much as possible. For normal functioning of body and brain, you typically need 7–8 hours of sleeping. Always try to go to bed until midnight.
I started to each healthier, threw away fast food or took it very rarely. Also, from time to time, started to use different supplements. But this was just an addition to healthy diet. Eat healthy. Eat a lot of fish. From time to time get Fish Oil Supplement or Ginkgo Biloba Supplement or Magnesium Supplement. In this way, your body and brain will be properly fed for programming job. But don’t use these supplements without pauses between (let’s say one month between).
After all these steps, my skills improved enormously over a short time. My performance started to be better and better. After six months, I changed my job for a much bigger salary. But I’ve continued to work on myself with equals force. I’m growing almost each day and having key roles in the projects. I feel I’m ready for big things in the coming years.
Programming is a hard thing to do. If you want to succeed, you must be disciplined, well organized and hardworking. And you must love it and have passion for it. Otherwise, you will not enjoy your work and will fail to reach big goals. I gave you a bunch of tips and sources for improving yourself. Now it’s your turn to implement this in your programming life.
Have a good luck! Be diligent! Never give up!