I've been an engineer for nearly a decade and a half and have learned a thing or two about what it takes to get ahead. Sure, you need to be technically proficient, but that's just the starting point. If you want to make a real impact, you need to be able to deliver, be a good mentor, and take on leadership. It also helps to be able to do all of this while still having fun. Sometimes, with tight deadlines and personal stressors, it may seem impossible, but try to remember why you chose to do what you are doing and try to find the enjoyable bits in your day-to-day job.
Don’t worry; I’m not here to lecture you on how to be a successful engineer. Instead, I’ll share my own performance review experiences and cover how they’ve helped shape my leadership style. Whether you’re a new engineer or a seasoned veteran, my hope is that you can take my lessons and apply them to grow your own career with purpose.
As I mentioned, I have worked in the software industry for over a decade and have experienced numerous performance reviews with various companies and managers. Despite the similar structure and guidelines adopted by each company, how the reviews are delivered can significantly impact the employee's experience. While some managers simply provide ratings and areas for improvement, others add personal insights and examples. Most of the time, the feedback is limited and specific to individual performance for the last year, focusing less on personal and emotional growth. However, only a small percentage of managers truly excel in delivering effective performance reviews that motivate and excite employees about future growth opportunities.
As a manager, it is crucial to assess the performance of your team members and offer purposeful, constructive feedback on their strengths and areas for development. It is important to set clear expectations for performance at the beginning of the year. This includes outlining the specific goals and objectives that each team member needs to work towards, as well as the metrics and key performance indicators (KPIs) that will be used to evaluate their progress.
Setting these expectations early ensures everyone is on the same page and working towards the same goals. I have observed numerous instances where we deviate from these steps, and when expectations are unclear, it often results in challenging performance calibration meetings. This mostly happens because, as individuals, we think we are doing all our tasks and taking on extra responsibilities, so we must be getting great ratings. But it's possible that your manager's expectations were different; according to them, you just completed your task. This mostly happens as we spend more time in the same role. As we grow in experience, the expectations also go up. Still, if the manager and their reports don't set these expectations at the start of the year and check in on them regularly, we'll be in for a sad ending.
I always thought about what else I could have done to perform better. You do work and feel nobody is noticing it or appreciating your efforts, but truly great leaders always are watching and sometimes do not go out of their way to praise you because they want to see if you continue doing it.
As a “newish” manager, I entered the world of team performance evaluations and observed in-depth discussions about the performance of outstanding engineers. While my own input was limited, I was fascinated by the level of detail and thoroughness of these discussions. Most people in the room have been doing reviews for longer than I have been an engineer. I learned a great deal, but on some level, I was a bit sad: I realized that if I had known about these observations earlier, it could have motivated me and broadened my perspective.
How People Leaders Can Empower Engineering Teams to Succeed
Focus on delivery
You must first deliver before you earn the right to talk about growth. As an engineer, what is more important than the projects you are working on, features you are developing, bugs you are fixing, and tools you are writing? You need to deliver them. As I tell others, what we are doing is not rocket science (unless you are making rockets 😀), and if you don't know something, you can always ask for help. You are part of a team ‒ reach out to your teammates, leads, or your manager. If you are feeling pain, your manager/lead should also be feeling that pain.
Delivering on time and meeting the goals of your team and your business are the basic building blocks to progress.
Do Everything with Gusto: Treat it Like Your Most Important Task:
Observing a colleague presenting her on-call work for the week, I was blown away by the detail and analysis she had on her confluence page. By taking data points from the current week and collecting data from the previous week, she deduced a method to help reduce the on-call load. Use each task as an opportunity and think about improving it before you hand it over. Think beyond solving a particular problem on your desk; take a broader view and see how you can improve parts of an entire process. As somebody said, Focus on the Forest, Not Just the Trees; that is how you can make long-lasting progress.
Learn to be a Great Mentor
As you grow in your career, try to remember who helped you and how they helped you to get started and become successful. Does someone on your team need direction? Do you see them struggling? Or are they super smart but don’t know how to really use their skills effectively? You can become the mentor who will help develop the mentee’s skills and confidence and help them to achieve their goals. Don’t just tell them what to do! Encourage your mentee to take ownership of their learning and development. You can provide them with the support and guidance they need to succeed. You can also act as a sounding board, helping your students think through problems and develop solutions.
You will find some engineers on your team who are highly motivated and are always ready to take on new challenges. As a mentor, it's your responsibility to bring along the others who might be uncomfortable speaking out or asking for more projects.
Don’t Forget Those Demos!
Always have a demo of the stuff you are doing. Always try to demonstrate the work you are doing. This leaves an impact on people who are watching the demo.
Bonus: You can make your sprint task such that you can demo something at the end of the sprint. This has many benefits. One of them is you are motivated to finish the task in the best way possible to show off. You get the chance to get early feedback as more people look at your work, and when you present, you also see any issues yourself.
Help out Engineers from Other Teams
Don't miss out on the incredible opportunity of collaborating with engineers from other teams. When you work with others, make sure you take things to completion and leave a mark. You will gain their respect, and someone along the way may reach out to leadership and put in a good word for you, and you might even learn something along the way.
Start Leading More Efforts
Keep chipping away at the backlog (while working on your assigned projects). Try making incremental improvements to test coverage, tooling, and low-priority tasks from other teams (sales, customer support). Usually, we are working on high-impact projects with no time to get to those tasks that sit in our backlog for months, even years, before someone goes ahead and does a bulk close of these old issues. This helps with motivation, as you can see the impact you are making with increased code coverage, thanks to another team.
NOTE: Remember that your assigned projects should always be your highest priority!
How Early Career Engineers Can Purposefully Grow Their Career
Taking the Initiative
Find something outside of your team where you can show your impact. You can start by looking at the problems people post on your internal communicator, like Slack. Every engineering organization has many such issues that are big enough that, when solved, will be beneficial to your employees and company. However, they are not urgent enough to be added to the planned work. When you can, try to take on the leadership of new projects, talk to your lead or manager about leading projects, and develop great design documents.
NOTE: Make sure to show your leadership, but don't drop the ball on your regular workload; that will create a negative impact.
Be Thorough vs. Fast!
We all have to make trade-offs, in our work and personal lives, between thoroughness and speed. The importance of choosing the right approach defines how others evaluate us. Some people will take their time to develop a design doc or do a code review, focusing on perfection. Yet other engineers manage to develop many design docs and complete multiple code reviews in the same amount of time, focusing more on speed versus perfection. The short answer to this dilemma? Do both. We need to ensure we don't lower quality while trying to add speed. It's important to strike a balance between delivering high-quality work and meeting deadlines.
The key is to know which stage of software development we are at and apply the appropriate trade-off - Build the right product vs. Build the product right.
To discover the right product to build, Velocity is key; once you know and want to build the product properly, Quality is key.
Note the difference between Speed and Velocity. Velocity is directed speed over time. That includes being thorough, so you keep building momentum.
Set High Standards
As you grow, make sure that you are maintaining the standards of code reviews, design doc, and culture in check. The more senior you become, the more important it is to be a leader who sets quality standards that others will want to try to emulate.
Learn to Influence, Albeit Without Authority
As we grow in our careers and in our teams, situations will arise where we are deep into our projects and don't have much time to take on other responsibilities. Don’t let that stop you from looking around you at problems the team and the organization are facing and where help is needed. These are the situations where you can show your influence without taking ownership. Driving things to a resolution without owning or being responsible for them is something that goes a long way in making an impact.
Let's ensure we are projecting the work we are doing. Think about a project which is your signature project; make sure you showcase it to everybody.
NOTE: Never try showing off meaningless work or overselling yourself because smart leaders always see through that. They appreciate high-quality work; the quality of your work should be its main selling point. An engineer should feel pride in craftsmanship, presenting high standards and the quality of the work product when delivering to others.
Discover Productivity Improvements
Every team has areas where opportunities for productivity improvements exist. Can you take the lead on creating a document to onboard delegates from different teams for reviews? What about creating tools to debug pipeline failures or automating data collection needed during debugging, etc. All these seemingly small but significant tasks allow you to show that you are motivated, can see problems before they become issues, and contribute to solutions to make others more productive.
Become a Better Multitasker
One side effect of growing in your career will be working on multiple things simultaneously. While helping junior/new team members with tasks, helping others write design docs, and debugging complex issues, you will need to continue to focus on your deliverables. Others appreciate this quality (given that you deliver on all the tasks assigned).
After going through this, I sincerely hope you don't feel that Abhishek owes me my 10 minutes back. My intention is for you to take away valuable insights and apply them to your day-to-day career, enabling you to achieve success.
I enthusiastically welcome your own learnings and tips – after all, the essence of this blog lies in creating a communal resource that fosters learning and growth for all. Never hesitate to extend the conversation with any questions you might have. Let's learn, grow, and thrive together. So, here's to many more insightful dialogues ahead!