Learning APIs is overrated. Usually, wherever you work, there will be a wrapper for the third-party libraries that you use in your project and also you can refer to the docs. Save yourself some brain RAM, willya?
Practice really trumps academia. No degree here, but I can tell you that I learned a ton more algorithms and patterns when implementing a chess game then by looking and reading about them. I spent too much time thinking that I need formal education, but that was just wasted time, in which I could be writing projects.
Stick to your passions. The software industry has work for everyone under the sun. Do not base your work choices on money (most positions pay well) or which is more trendy now. Game development was not trendy 5 years ago, but now it's a multi-billion industry.
It wont be good the first time you write it. Even with hours of design and upfront planning your project will be a lot better if you delete it and start it again. That's normal - you learned a lot along the way and can see the drawbacks now, but this does not mean you have to delete it! Just set a reasonable bar on what is 'good enough'.
Soft-skills are important. Your career depends on it. When I started, I could geek out heavily and just code and sit on my desk the whole time and I got promoted. Now, you won't get far without networking and social contacts. It does not have to be a pain in the A - just go with the flow and, soon enough, socialising will feel natural...because it is the most natural thing for humans.
Specialisation is a MUST!. Five or 10 years ago, you could do anything - devops, frontend, backend and things were simpler. Now it is impossible to know all of what's going on in C++ and React, Kubernetes, Docker, AWS, etc. Find something that interests you the most and be the best at it. You will be more appreciated in your work, a really useful teammate to have on the team and you will feel better because of that.
Have self-esteem. Period. It will help your brain learn faster and you will be less stressed in general. Everything that you do can help you boost your self esteem, but you can also just assume self-esteem. The dangerous thing about linking self-esteem with achievement is that when you have a period of low achievement, self-esteem drops too. That is why it is good to have some 'default' self-esteem! :)
If you are troubled in finding a career path in software development, think about what you like doing and if there is a link to software development and that thing. The chances are that there is. Even if it's really niche, don't give up on it.
Taking breaks from work and getting even a bit bored is crucial for processing the vast quantities of information and brain flexing that is part of our daily work. Have some time of just not doing anything and reflecting on your life!
Have pride in your work! It is a really hard and stressful job, appreciate that and give your self a tap on the back!
Transitions inside software development are hard. Especially without diploma, as a self-taught developer. Prepare really well if you are transitioning from Frontend to Backend, Web programming to Game programming, etc. Be prepared for an Ego HIT!
Thanks for reading!
Top comments (0)