What Can Junior Software Engineers Do to Create Bigger Impact

What Can Junior Software Engineers Do to Create Bigger Impact

Today I would like to talk about how junior software engineers can create a bigger impact. You must have heard the word "impact" often. But it also sounds very abstract, especially for new graduates who have just started in the industry, we often have this kind of confusion: " I am just a small “screw” on a giant machine, doing work with limited scope, how much impact could I have? "

In fact, when your manager evaluates your impact, it is based on your level or the one you will be promoted to. So as a junior engineer, you won't be considered low impact because you didn't bring tens of millions of profit growth to the company, or you didn't lead a team of dozens of people to develop an application with millions of daily active users . Second, some seemingly ordinary things, if you pay more attention, you can find potential high impact. With these two points in mind, we can start to focus on finding opportunities to improve impact from our daily work .

In my opinion, impact is simply how the results of your work benefit others. Others here can be customers (both external and internal), your team or other teams. The more people benefit, the greater your impact. So where do we start ?

1. Be data driven, use data to support your work and guide you to discover potential opportunities. Now everyone likes to talk about data, because data is the best proof, so we must pay attention to finding places that can help quantify our deliverables. For example, you wrote a new feature for the web app owned by your team. Even if the code has been successfully deployed, how do you know how much this feature has helped users? Will the feature you spent a month developing actually fail to achieve the result you expected? This requires us to insert logs and metrics tracking in important places and set up corresponding monitoring. In this way, we can easily quantify the impact . For example, we can say this feature is used by xxx users every day on average, and the error rate is kept below xxx%. It would be great if the feature usage is high. But even if it is not good, you can use the data to analyze the reasons and think about the next action, and finally achieve an ideal result. When you report to the manager, this is much more convincing than simply saying "I implemented a feature". Of course, some features, once completed, will create a big impact immediately, such as the launching of new functionalities of core products. But the data behind it can further amplify the impact. ?After all, good data often corresponds to more users and profits. Similarly, when you write a new wiki, you can't just shout " Hey folks, I wrote a wiki " in the group, you must " sell " it to other colleagues, or even other teams and make sure they are using it. In this way, your impact can be quantified as: when solving a certain problem, the wiki was used by X people in Y teams.

2. Work harder on Livesite (on-call). Many people hate on-call, thinking that it takes away their time on feature work and sleeping of course, but in fact on-call is a good opportunity to improve their visibility and create bigger impact. Why? For junior engineers, a considerable part of the tasks are limited scope, meaning that the impact itself is relatively limited. Basically, only you and your manager know its context, and sometimes even your manager doesn't know it, so it's hard to highlight your impact. But when you are on-call , especially when there is a Sev 2 , you have the opportunity to work with more people, especially the incident manager of that week . For tickets involving multiple services, you may also contact on-call engineers from other teams, and there are often more senior engineers among them. If you handle the tickets well, you'll leave a good impression on them. Not to mention your own team, every manager will pay lots of attention to the live site as it is a very critical part of the daily work. It means that any highlights during your on-call, from handling Sev 2 proficiently to adding new monitoring, optimizing logs will directly affect your team by improving the operational excellence. If ?there is collaboration with other teams, then it becomes a cross-team impact. I was not very focused on on-call before. Later, when preparing for my promotion, my manager told me that other managers said that I did not give them much impression on the live site, so he suggested I continue to strengthen in this area .

3. Summarize your completed project and share it with others. As your experience grows, your manager will start to assign you more challenging tasks. One of the main characteristics of this kind of task is that there will be more open questions. ?There is no clear path to complete it and you need to explore it yourself. In this process, you will have some highlights, but it is inevitable that you will make some mistakes. If you can document these, when the task is completed, you can quickly summarize it: What did you do well? Where do you need to improve? What is causing these problems? How to avoid these problems in the future? Ask yourself whether these learnings can benefit your team. ?Be aware that some problems you encountered often reflect the problems of the team. If your experience can bring inspiration and improvement to the team, then the impact will be considerable. In a project I worked on before, there was a problem that the partner API was not clear, and the code implementation was started rashly before the unknowns and mitigation plan were fully understood. After the project ended, I found that although the team advocated writing design doc, there were no clear rules on how to write it and which factors should be considered. So I summed up a design doc template, which lists common issues that need to be considered during the design phase. At the same time, I also wrote a postmortem to further summarize our highlights and improvement opportunities. It is recommended by my manager to be displayed on our org 's demo day and got great feedback. Since then, the design template has been adopted by the team. ?Therefore, the impact and visibility of the entire project are further amplified.

4. Communicate with others more, don't work behind closed doors. Each team has its own problems, but the same problem may be addressed well in other teams. If we continue to expand our network, we can get a lot of knowledge and insights by building connections with other people outside of our team. If those learnings can be applied to our team, it is a great opportunity to expand impact because if your idea is supported by the manager, you will most likely be the one who drives it. In addition, these good take-aways from other teams could greatly improve the quality of your work, because you can directly pursue the " used doctrine " instead of reinventing the wheel yourself. If you can deliver quickly and reliably, you will naturally get more opportunities in the future.

If you are lucky enough to be in a core team, have a great manager, and can always be assigned with high impact tasks, then congratulations, you have already won at the starting line. But don't feel depressed if you don't have such luck. Do the things you can control, be data driven, accumulate your knowledge, expand your network. ?Opportunities often favor those who are prepared!

If you think this article is helpful, don't forget to like it and share with others! For Chinese readers, you can also subscribe my WeChat channel: 北美码农练级之路 (attached QR code below). I will share more tips and learnings in my software engineer career!

No alt text provided for this image
北美码农练级之路

要查看或添加评论,请登录

Qiao(Kyle) Kang的更多文章

社区洞察

其他会员也浏览了