So I initially started on my path to becoming a web developer in 2015/2016 and in hindsight this was a terrible time in my life to attempt, but worth it in the end. I suffered from untreated chronic depression and borderline personality disorder. I didn’t know I had the latter, but always expected the former. I just assumed I was “sad” because my life hadn’t gone the way I expected, we all get like that from time to time over myriad of different things.
I started learning web development via Ruby on Rails, it was a fun experience and I learned how to really solve problems on my own. I felt very accomplished when I finished the One Month Rail course, then went on to do Michael Hartl’s course. Much more information and many questions I had about rails started being answered. From Hartl’s course, I started creating my own projects that went past the simple CRUD operations of making a post. If I had a passion for anything at its core, it’s definitely the act of learning things. I’ve never been satisfied with surface level knowledge, and despite the fact I was learning and picking up rails, I felt two things: Knowing rails wasn’t enough This wasn’t real programming These two things became a negative feedback loop for me and compounded with my existing mental conditions I unknowingly descended upon a path of “never being enough”. Knowing rails wasn’t enough, so I learned Ruby (and honestly you SHOULD learn the programming language and fundamentals of programming, I don’t think is something that should ever be optional). Ruby wasn’t enough for me, I needed to learn how Ruby works, so I started teaching myself the fundamentals of computer science, language construction, usage, design patterns, algorithms, data structures, SQL, etc. To me I was a self taught person entering a field where many men and women spent 4 years of their life learning, 4 years of late night studying for exams. At the very least I could try to reach some of the heights they did. I felt obligated. Once again part of this continual learning is because I simply like to learn. I can (and do) watch CS lectures recorded from different colleges, I enjoy people talking about how algorithms and data structures work (the feeling I had when recursion finally made sense was the best!).
I sidelined my developer career for two years because of my own mental conditions, but at the same time I was able to learn so much more due to the mental goals I kept moving in my head before I applied for positions. I still have much to learn by way of data structures, design patterns, and algorithms (I still couldn’t implement a basic BST if you asked but I can explain them to you!).
For new developers reading, you are not going to know everything. No employer is going to expect you to. If you’ve been granted an interview, trust me, I know exactly what you can or cannot do. They’re interviewing you because they see your potential, they see someone they can help take their career to the next step and who in turn will help their company and products grow. Don’t worry about not thinking you belong, I assure you when you’re sitting down and coding your coworkers aren’t thinking you’re trash or anything of the like. Ask them questions, they will be more than willing to help you!