Three Lessons I Learned as a Junior Developer
Junior developers have to learn so many things on the job, because they’re not taught in school. Wajid, from Spiria Toronto, shares his top three lessons.
I started at Spiria Toronto, formerly known as DevBBQ, in October 2015, as a junior developer within a team of 10 people. It’s been a crazy roller-coaster ride, filled with amazing people, memorable experiences and plenty of self-growth. But most importantly, it’s how I learned to become a better developer, through incremental improvement and bringing value to the company with my specific skill set. This said, as the classic Rod Stewart song goes, “I wish that I knew what I know now, when I was younger”. Here are some lessons I have learned over the past four years.
Don’t Be Afraid To Ask For Help
At first, I was hesitant to ask my colleagues for help. I wanted to look competent and make it seem that I had the correct solution for any particular problem. But thanks to Kevin Zych, one of my mentors, I learned early on that this notion was fundamentally wrong. Instead, the right approach is to ask for advice from a senior developer, since it leverages their knowledge to speed up your own learning process. The input of a developer who has already seen it all helps solve a problem more efficiently. Another huge benefit of asking for help is the opportunity to look at the problem from a different perspective. It’s almost as if a new neural connection forms in your brain, helping you see a path to a solution you most likely would never have thought of on your own. I was very fortunate to learn through great mentors, and develop my skills faster than I would have on my own. More recently, I have been on the other side of the fence, helping other developers solve their problems more efficiently. This, in turn, has helped me become an even better developer, with the ability to explain solutions more clearly.
Think About A Solution Beforehand
Although asking for help is hugely beneficial, it isn’t optimally effective if you haven’t thought of a potential solution first. Doing this legwork is just being considerate and respectful of another developer’s time, by showing that you made an attempt to resolve the issue on your own rather than asking to be spoon-fed a solution. It actually makes other developers more willing to helping you. Before I start any coding whatsoever, I develop a well-thought-out solution ahead of time, making sure it takes care of the edge cases and any future issues. Then, it’s just a question of validating my solution and putting fingers to the keyboard.
Communication and Collaboration
I came from a job where one person made all the decisions, which didn’t leave a lot of room for collaboration among team members. In contrast, development should really be a team effort. The ability to communicate your ideas to a group of people or even to just one colleague is a very important skill to have. Everyone, no matter who they are, has valuable information to offer and should be encouraged to speak up, whether it be explanations of estimations, solutions, requirements, or even just opinions. Moreover, taking ownership of your solutions and focusing on your effort as part of a team really pushes you to work at a high level, especially when you know that your colleagues will be reading your solution at one point or another. Learning how to communicate, with the encouragement of my peers, has helped me provide better estimations and arrive at better solutions by explaining my problems and solutions concisely.
These are some of the lessons I’ve learned as a junior developer, and I am still building on them on a daily basis! They might not be applicable all of the time, but I wish I had known them when I started!
Need more advice? Discover this article written by Olivier Mageau-Pétrin of Spiria Gatineau: “How to graduate from being a ‘junior’ developer”.