After 2 years of study and researching, I finally landing a developer job in an international company to work as a Frontend developer at the end of 2020.
2 months into my new role, I would like to share some afterthoughts about the job searching and advice here. I hope it can help somebody still looking for developer jobs or just get started.
At first, I would like to share some good news with whoever just start to learn how to code or thinking about it, I can tell you - your instinct is right, this industry is booming and there are full of opportunities waiting for you.
I knew it because I saw many opportunities while I was in the journey of job searching, and I continue seeing them even after I got a job.
I knew it also because after I joined my first developer role, I have learned more about why I am getting the job, as while as others in the same company.
Finally, I knew it because the more I did the job, the more I believe this job has great potential, this is the "must" have skill across industries and companies in the coming decade. (Once again proven my belief before I start to learn the code)
So believe me, go for it. (of course, make sure that is really what you want but not the money)
Second, I like to talk about what techs you should choose in general and how much you should learn about them.
There are always debates about whether we should learn the hottest, sexiest tech vs. we should just learn something just less cool but we like.
I think there is no right or wrong, having knowledge of the hottest tech means you will have a lot of competitors while you do the job searching while learning some minority tech would be a difficult journey because there are fewer supporting documents and fewer communities support.
And just like most of the code newbies, when I start to learn how to code, I try to learn as much as possible, as deep as possible.
That is a common mistake, isn't it? While, that is not that obvious when you still learning and don't have a job, at least that is for me.
There are always temptations that trigger you to start to learn new tech, either just out of curiosity or the intention of getting a job after viewing some job descriptions.
Again, there is no right or wrong. You may end up getting a job because you know everything, or because you just know one thing well.
The point is, we all human beings, our energy is limited. Since there are almost infinite technologies available in the market, and there are more coming, we should really narrow down our list of learning.
So my advice is, once you find one tech that you love or good at, stick with it, try to learn more about it, and practice it, it will lead you to a job eventually because the market is big enough to accommodate any developer who has some practical skill sets.
Finally, I would like to mention the importance of keep learning.
Even I just started my new job in less than 2 months, I can't help to notice the importance of keep learning. (It validate the points from most experiences developers agree on)
First, it will just help you in the job and put you in a more advanced position if you know more.
Second, even you think you know everything about your job, you should not stop neither.
Because technology is changing every day in the outside world. You never know whether your company will dump one tech and in favor of another tomorrow, or decide to go deeper with the current one.
Third, you never know what and when the opportunities will come, the odd of getting those opportunities will definitely bigger if you know more.
What to Learn?
But then you might wonder - what I should learn? as I mention earlier, we can't learn everything. so I have some thoughts to share here for you.
At first, I think it is always important to re-learn the basics, either you are work as frontend or backend, the fundamental knowledge in your area is always important and very practical.
Because they will help you solve problems that require fundamentally understanding the technology you use, accelerate your speed of learning if you know how things work in your world.
Second, if you are already working, the chance is, you already have some ideas on what needs to learn, new tech stacks, corporate culture, collaboration, team building, and agile management, the question for you now is what to choose first and how to learn them within a given time frame. My advice is to learn technical things while you coding (because you are a developer), learn the other things slowly, one at a time, keep persistent but don't give up because they are also very important for your career.
Third, when you settling down in a role and you feel still have some extra time, it is good to think about expanding your horizon and go deeper, but most of the time, I would suggest picking something that is related to your works now or something that can help improve your efficiency.
Take me for example, now I have to deal with complex form handling every day. I took my free time to learn related react packages and practical examples which in turn I can use that knowledge back in my daily work, not only I learn faster and deeper but also I have more confidence in this skill set because I have so many practical experiences.
Another example is, I use VSCode as my daily IDE at work, although this is a tool most people can easily get started with, mastering it does require patient and effort. Spend some time to learn about it on daily basis would definitely help improve your daily work. And because it is a universal skill set that will follow you in your entire career journey, so that is a good time investment anyway.
In the end, I would like to thank you for stay until the end, I really hope that my two cents can help some of you out there, especially for someone just starting to learn how to code.
I know some of my thoughts and thinking maybe too naive or imperfect, but I would rather write them out to take criticism rather than bury them in my head until I forget them, I would very much appreciate that if you have different opinions and share them with me, so we, together can help more people out there.
Finally, just like Steve Jobs once advised - Stay Hungry, Stay Foolish. It pretty valid the point I am trying to make above and it will continue valid as long as we are still in the computer industry.