Congratulations! You have landed a job as a junior developer.
Whether you just wrapped up that degree or you are making a career switch, you have put in a lot of work. You have spent hundreds of hours learning and practicing. You have crawled through the interview gauntlet, and you have emerged victorious.
Here are a few tips on how to make the most of your time as a Junior Developer:
1. Pair program with anyone on anything
You are a junior developer. You are not expected to know everything – in fact, you are probably expected to know nothing. This is great! This is the time to learn. You may know how to write code, but that is just a portion of your job. You have to learn your company’s process, your team’s style, and your peers’ areas of expertise. How to write code is important, but knowing where to direct questions is surprisingly vital to success as a software engineer. So pair with anyone on anything. Ask questions, and take notes.
2. Learn about the company
Ask questions about your company’s products. Use the software yourself. Go through any available training. And, if your team has product managers, ask to meet with them – discuss the product’s purpose, the typical user experience, and the product team’s plan for the upcoming year. They will be excited to talk with you – every engineer is a better engineer when they are on the same page as their product team. You can make more intelligent design and architectural decisions, and you can have meaningful conversations with your product team.
It’s easy for engineering to just focus on what we are being asked to do, and we often forget to think about why. But the why often informs the what. When the goals of engineering line up with the goals of product, everyone just gets more stuff done.
3. Find a mentor
If your company does not have an established mentorship program, then you can start one today. It’s pretty simple – find a more senior engineer that you like, and ask them if you can grab lunch together every once in a while. There is no need to overcomplicate it.
You need to be able to ask someone dumb questions. You need an advocate in your corner. And you need someone who will give you an occasional constructive kick in the pants. A good mentor can provide all of these things. And covering their lunch once per week is a worthwhile investment.
4. Try to Figure Stuff Out… For About 30 Minutes
Ideally, the answer to any coding question can either be found via Google or your team’s documentation.
Regardless of your level of expertise, a search engine should be your first go-to for most questions. When I ask someone a question, and they find the answer to that question with a quick Google search, I have shown them I believe my time to be more valuable than their time.
For company-specific questions, you should check out your team’s documentation. If you cannot find the answer, then ask a peer. And once you get your answer, you should add that information to your team’s documentation. Every team has holes in their documentation. Filling in those holes in knowledge is an invaluable service to your team.
But you should not be afraid to ask questions after a thorough investigation. Eventually, you are just wasting your time. My rule of thumb is about 30 minutes. After which, I ping a peer, get my answer, and add the answer to any relevant documentation.
5. Establish Your Work/Life Balance Now
As a junior developer, there is often pressure to prove yourself. You push yourself to work extra hours, study in your free time, or practice on the weekends.
But be careful. You are setting a precedent. If you do not want to work weekends for your entire career, then don’t start now. Because when you stop working weekends or you start going home at a reasonable hour, your output will reflect this change. You need to take time for yourself starting right now. Use your time off. Turn off your laptop. Start saying no. There is a time and place for working extra hours, but any such behavior should not be expected, and it should be very rare.
More importantly, an ongoing need for unhealthy work practices speaks to an underlying problem with the company culture. If your team is pushing you to regularly practice unhealthy behaviors, explicitly or implicitly, I would recommend searching for another job. In fact, if your manager is not actively resisting such behavior, I would recommend searching for another job. That may seem harsh, but if your manager does not value your long-term health over your short-term productivity, then they do not care about you.
Now you know how to be a junior developer.
Learn a lot. Ask good questions. Establish healthy work routines. And enjoy this awesome career.