Facing challenges in every single path of life is inevitable, and the same applies to the world of tech. In this article, I will be sharing some of the challenges and difficulties I have faced, and still are facing, in my tech journey, and what I have learned through these challenges.
1. Imposter Syndrome
Quite a number of times, I have fallen prey to the feeling that I am not qualified to apply for a job, or that I do not know enough to build something with the skills I have attained. Moreover, this feeling becomes more pronounced with the many job postings requiring years of experience and a degree in Computer Science. This has often led me to the trap of looping through tutorials to get things done.
Reading posts from the various experts about their having experienced imposter syndrome has been of much help, as I have come to realize that what matters is pushing on and trying to grow in my tech career, one day at a time.
2. Tutorial Hell
Just like I have mentioned in the previous point, I have often fallen into the trap of looping through tutorials. Thus, rather than using the skills attained to create projects, I have more often than not spent hours just moving from one tutorial to the next and not putting my skills to practice.
Thus, just like the experts advise, spend more time writing your own code. It can be quite easy and tempting to rush off into the next tutorial, but seek to create your own applications. And if it seems quite hard, just imagine the much joy and satisfaction you will attain by getting your own application up and running.
3. Lack of Planning
Planning is a must-have skill prior to and during any journey of growth. More often than not, I have rushed through the various technologies and concepts without much planning and without concluding on my end goal. This has led to slow growth and much stagnation for the bigger part of my tech journey, with fewer projects developed and hardly any expertise in a certain field or certain programming languages.
I have, therefore, decided to stick to focusing on one thing at a time, and seek to become an expert at it. I have currently been able to create a couple of more projects, and spend extra time solving JavaScript algorithm challenges from CodeWars and Exercism. Also, identifying my goal has been of much help, and thus I would encourage one to identify their why's of learning a certain technology or programming language.
4. Lack of consistency
Consistency is key in becoming an expert in whichever field, and for the bigger part of my tech journey I was not as consistent in programming as I would have hoped. This was mainly as a result of my focusing on many programming languages at once, which thus led me to depend on motivation to get to handle a project through to completion.
I have learned to stick to discipline than to motivation, and thus I strive to spend at least an hour a day programming, using the #100DaysOfCode challenge. Using the Pomodoro technique has also been of much help, especially on the days when I do not feel like writing any code.
5. Lack of Balance
It can be quite frustrating scrolling through social media and realizing that there is still a lot to be learned. Even though this fact can help in planning out the next move in one's journey in tech, it can also be frustrating if not taken well. Quite a number of times I have, pushed with this very fact, spent countless hours staring at the screen, oblivious of the other aspects of life other than programming.
Thus, one should learn to take breaks and not forget to handle the other aspects of life, like health and social life. This will also help in preventing burnout , which is experienced by many developers.
Conclusion
I have realized that these few challenges that I have highlighted and more are quite common in the tech world. What matters though, from my realization and research, is that one should learn from their challenges, push on and seek to grow in their career. Afterall, challenges are there to help us, as a proof of our growth.