The Little Things I Did To Make It A Junior Software Engineer by Mike Schnettler | CodeX | Nov 2021
I dreamed of the glamorous life I thought I would one day live working in a FAANG company when I was in college. When I started my career as a junior software engineer in a startup, I was given a good dose of reality in terms of compensation. Fortunately, I have been able to progress in my career since then. Although I improved my technical skills during this time, I think the little things I did outside of coding really helped me advance in my career.
When I started my first job I was fortunate to have great mentors who encouraged me to ask lots of questions. Dude, have I ever accepted this offer! I realized at the time that there were some questions that were better not to ask…. right now. For example, let’s say you’re new to Ruby on Rails and someone asks you to add a new API endpoint. While you might not know where to start and it would be quicker to ask someone on your team how to do it, I have found that it is best to take the time to research some documentation and give it a try. apply the concepts I read in the documentation to the problem on my own. Then when I asked a colleague a question, I could explain to them what I had tried and ask them for advice on the mistakes I had made. It has helped me advance in my career for two reasons. First, by taking the time to read the documentation and struggling a bit on my own, I discovered that I was learning more than if I was told how to do something right away without having to figure it out for myself. -same. Second, by doing what I could to resolve the issue on my own before speaking to a team member, I showed my team that I had initiative and wanted to achieve the level of autonomy that was expected of me at the next stage of my career.
I started my first job thinking that being a software engineer was all about code. Although code is an important part of my job, I have now realized that code is just a tool that we use to solve people’s problems. Early in my career, I often raised my hand to learn more about the processes of moving from a problem to a solution ready to be implemented by an engineer. Whether it’s listening to customer calls to hear them describe the problem or working with the product team on UI designs or mockups, I’ve done everything I can to learn more about the entire software lifecycle, from idea to deployment. If you want to be part of those conversations in your work, take the plunge and send a cowardly message to people outside your team. These people will most often be happy to tell you what they do and how their role plays in the software engineering lifecycle. As you advance in your career, you will naturally participate more and more in these conversations about features still in the product definition phase. If you already have a good working relationship with those people who you will work more closely with after your next promotion, it will be a huge advantage that can give you the edge you need to level up.
As a junior engineer, you are going to make a mistake at some point. I made a multitude of mistakes! Whether it’s not properly testing my code or forgetting to implement a requirement in a story, I think I made all the mistakes in the book for a software engineer. While it’s natural to want to hide our mistakes, I usually try to admit my imperfections as soon as I can. Also, I find it important to highlight what I can do to make sure my mess doesn’t happen again. I think admitting my mistakes out loud or via slack / email has helped me remember my mistakes for the future so that I don’t repeat them again. While you may think people despise your mistakes when you administer them, I actually think people will admire your responsibility and willingness to become a better version of yourself.
Here is! Hope some of these tips can help you in your career. If you have any other advice, feel free to leave a comment!