Hey everyone, hope all is well!
Long story short I was able to land my first web developer job back in October of 2018 after graduating from a 3 month bootcamp in July of 2018. I was given a coding test which required me to build a small app that utilized the Yelp API and rendered the 20 closest restaurants in the location the user typed in the search bar. I built it with React (which I was just somewhat starting to get familiar with) and pure CSS. You can see the app here: Local Bites
I’m getting laid off at the end of this month, not necessarily because I did bad work but because like a lot of start-ups, they started having financial difficulties and won’t be able to keep me onboard. At the very least I now have 6 good months of professional experience that I can add to my resume and overall career as a web developer (I wrote my first line of code in late January 2018). I just wanted to make this post to hopefully provide some advice and hope for other juniors or beginners like me as to what they might prepare for at their first job or what they can start looking into now.
Git / GitHub / Bitbucket / GitLab / Version Control
Learn to get comfortable with your terminal and how it relates to Git.
Name your branches after the features that you’re currently working on
Make sure your messages are descriptive and explain the changes you’ve made
Be ready to ask a ton of questions
For the first 2 months or so I was very shy and anxious about asking questions, to the point that I would be staring at the screen for hours on end, literally wasting productive time when I could have just asked the lead developer for help. Now I understand that if an employer knows you’re a junior they hope and expect that you’ll ask questions when you’re stuck. Yes you should attempt to Google and figure things out on your own but when you work as a developer, time is of the essence and can actually get you fired. After a few months I learned that if you’ve been stuck for about 30 - 45 minutes on a problem, then that’s probably a good sign that you should ask for help. Maybe you don’t understand what the lead developer or another developer did, but you can actually go back to the code they helped you with later on, outside of work or maybe during some down time and break it down and hopefully understand where you went wrong and what you missed.
Imposter Syndrome is normal
Everyday at work felt and still feels like I’m not a “real” developer. Even when I have a really productive day where I don’t get stuck at all, that lingering, doubtful, anxious thought still creeps around telling me that I’m a phony. Expect that for a good while you will most likely feel like an imposter, ESPECIALLY when you get stuck or feel overwhelmed with a particular task. Sometimes imposter syndrome can be extremely crippling and affect your motivation, in times like these it’s critical that you remind yourself of everything that you have worked to get to this point. All the courses, tutorials, issues, fun and sad moments that have come to embody your coding journey. If they hired you, it’s because they have faith in your abilities or at the very least saw something that they didn’t see in someone else. You earned that and deserve to be where you are at.
Don’t stop learning but avoid rabbit holes
As developers we need to stay-up-to-date and when you get your first dev job you might find it hard to find time to work on side projects. What works for me is finding a balance, I stopped reading and looking at every single article with hyperbole such as “Try this framework now!”, “this is the next big thing!”, “Yeah React is great but have you tried [insert random .js framework / library here]”. I think the best advice as a junior is to learn the stack that you use at work well, if you have the energy to learn something fun on the side, then by all means go ahead but try to stick to whatever it is you chose to learn for a particular project or set of time. I don’t recommend jumping from framework to framework, especially while you’re hired as a dev and already code everyday. What also helped me get better at the technologies we use at work, was using those technologies on my own side projects. This is great because it reinforces technologies that you’re using and learning at work while giving you the freedom to build what you want with those particular tools.
6 months isn’t a crazy long time as a professional web developer but man do you learn a lot, in 6 months I acquired the following skills:
- Got significantly better at React and its countless intricacies
- Learned Redux and about state management
- Better understanding of how promises and asynchronous JS works
- Learned some new Git tricks like git stash, git stash apply, git fetch
- Learned the importance of documentation on your own code
- Material UI
- Learned about JSON Web Tokens and how they work
- Why refactoring can go a long way
- Testing with Cypress IO
Out of all the skills I acquired in the past 6 months as a junior developer…I would say the greatest one I’m taking with me from this job is definitely testing. At first I didn’t understand why testing was important but now I see the value of it. It leads to cleaner, more efficient code and prevents potential bugs from popping up and driving you insane. Admittedly, it’s not the funnest part of being a developer but it’s a very useful skill that stands out when you’re applying to places because jobs want juniors who know how and what to test, you’re essentially saving the senior and lead developer time from dealing with potential bugs, and who wants to deal with bugs when you’re under pressure or need to finish a project by a certain time period?
I hope this post helped you if you’re at your first job or looking for your first job. I wish all of you the best and just want to say don’t ever give up. No matter how hard or difficult it might seem, don’t. It’s hard but rewarding work, you’ll thank yourself in the end.