How to Conduct a Status Update like a Senior Engineer
A status update is where you can showcase how well you manage ambiguity and an avenue to build trust with your team.
Imagine this - they assign you a task to finish up this sprint. It is a task that requires you to push a new feature within a brand-new architecture you have never touched on. On the first day, you look through all the documentation on the Confluence page to get more clarification about the feature you are trying to develop. You quickly realize that you won’t even have time to touch on the codebase - understanding the new architecture and the product definition takes up your entire day. However, you know that there will be a status update tomorrow morning. You will need to update your "status" to the team and, more importantly, your manager about how you have progressed through the task.
When it comes to your turn on the status update the next day, and the day after that, you give this update to your manager, "I am working on Ticket #123, and no blockers."
That feeling of telling the team that you are still working on the ticket every day without any blockers doesn't feel impressive - it sounds like you were in the same spot as yesterday. Your manager may start to doubt your competency as a software engineer.
You know that you are working towards the task, and it takes time to do more research to develop this feature. However, the long hours of effort that you put in are not acknowledged by the team.
You start to dread every status update when you haven’t published any PR or documentation.
Let's face it.
Some engineers think that status updates are useless. Others think that status updates can be daunting.
However, a status update is not only a useful session for engineering managers and product managers to understand how everyone is handling their tasks but also an opportunity for engineers to showcase their leadership abilities.
A status update is where you can showcase how well you manage ambiguity and is an important way to build trust with your team.
In this article, I will discuss what you should discuss during status updates and how you can bring the narrative of influence during status updates to earn trust. Lastly, I will discuss a nifty test to verify with your colleagues to see if you have a good status update.
What should you talk about on a status update?
The simplest way to convey a status update in a stand-up meeting is to talk about what you did yesterday, what you will do today, and if there are any blockers.
Even if you don't have any PR or documentation ready, don't be afraid to discuss what you did yesterday. It includes telling the team that you are spending time trying to understand the new architecture or the product definition for the entire day.
The manager wants to know whether or not you are blocked during this status update. However, most importantly, they want to hear the delta of what you did yesterday compared to today.
If you are in the same spot as yesterday, your manager wants to understand if you are waiting for a response from someone or if you are looking for information that is hard to find. In addition, the team also wants to help unblock you.
A status update is a good environment to reiterate your efforts on the project and set timeline expectations, such as any delays in the project delivery.
Example situations where you have blockers
If you cannot unblock yourself, ask for help in concrete, direct way.
For example, if you are blocked by certain third-party API definitions or stuck on a specific bug, a status update is a good time to bring up these topics. For instance, if you are waiting for another team's API specs to move forward, your manager can help unblock you by facilitating a meeting with the other team to speed up the process.
"Currently, I am blocked from testing this feature because the staging environment has an IP address denylist. I have submitted a ticket request to include my IP in the allow-list to test the feature X. Do you know a way to test this feature in the staging environment without the IP address?"
"I messaged A yesterday, and I am still waiting for their response. If I don't hear from A today, I will message them again or ping manager B for further guidance."
You want to inform the team of blockers so that you can get insights on how to resolve it from your team members while indicating that you have tried multiple ways to resolve it yourself.
4 Tips to Update Your Status like a Veteran Engineer
Even if you know what to talk about during a status update, a status update can feel very dry and boring.
Sometimes in a daily status update, an engineer will deliver a laundry list of everything they're doing. Laundry lists make an extra boring update that causes people to zone out. I zone out sometimes when people talk about things irrelevant to my current project and tasks.
Here are four tips you can try that will make your stand-up more engaging.
1. Create a short summary list before the status update
Before the stand-up, jot down a short list of things you did and a list of action items you will do. It helps to organize your thoughts and focus on what tasks need to get done, constructing a better flow of status updates. For instance, the night before the status update, I will write down an unordered list of what I did, what I will do, and blockers, like this:
What did I do?
Research on System X and Product Spec Y
Found out that System X requires IT approval
What will I do?
Look into the codebase of architecture X. Does anyone know which repository I should start with or who the owner of system X is?
Blockers
No Blockers for now
When it's time for me to present, I can easily read this list and recall all the key points.
2. Speak in layman's terms
Remember that stand-up meetings are not only a status update for engineers but also for product managers. You want to explain your status in layman's terms so everyone can understand your progress.
Initially, I encountered this problem on status updates - where I tend to mumble and talk too much about the details of my work on the project.
An example of a bad status update:
"Trying to implement the payment processor routing yesterday by first scouting out the required product input. I have created four ways to implement this, one of them using a Priority Queue to determine the next best payment processor to implement using Free Monad to decouple the program structure flow and the interpreter. One of the benefits of using Free monad is ….."
An example of a better status update:
"Trying to implement the payment processor routing yesterday by first understanding what product requirements we need to route our payment processors. In addition, I have written a brief documentation of 4 ways to do it, and I think the one with a Priority Queue may be the most suitable for solving the routing problems. I will paste them on the channel after stand-up, so please check it out!"
The first status update speaks too much into the weeds. Besides engineers who may understand what you are talking about, product managers and your manager doesn't need to hear such a detailed, granular description. On the other hand, the second example of a status update describes what they worked on yesterday. It also mentions that they had written brief documentation about different approaches to solving the problems. Then, they reference the documentation to anyone that may be interested and hints that the Priority Queue is the most suitable approach. They know that people with interest will check out the documentation and ask further questions. They are aware that those questions are best discussed offline and not during the status update.
3. Include other commitments in your status updates
Don't hide these outside commitments from your team during stand-up.
There is so much going on in a typical day: ideas, planning, family, and multiple projects. We often don't work on one task or project at a time. Sometimes we need to work on multiple projects while conducting interviews. If you suddenly need to take care of a sick toddler or work on an urgent production issue, you should tell the team during the status update.
"I didn't get to spend much time on project X because I was doing the hotfix for incident Y yesterday."
If you hide these other commitments from your team, they may think you are not making good progress. And the last thing you want to project to the team is that you cannot contribute. If you make slow progress on a project, consider sharing some of your other commitments with your team. Don't be embarrassed by outside commitments.
4. Explain why the work matters in your status update
As you grow into a more senior role, you must consider how to make your work relevant to other people. Build a narrative so that other people can see your impact.
Our work as engineers is to make an impact from various angles at the company. The "why" helps make people listen to your status update, even though it may seem irrelevant.
Why? Because you start to explain and contextualize the benefit of what you can do for the team.
If I created a new test framework that could help speed up the development process for the team, I would say something like this during a status update:
"I am working on a feature, and I realized that testing this feature takes a long time. Therefore, I created a script to help speed up our testing during development. If anyone is interested, feel free to ping me later after the stand-up for more details.
What will I be doing today? Task X is finished and only requires testing, so I will use the script I developed yesterday to do the testing today."
There are a couple of benefits to saying this:
It explains what you were doing and why
It tells the benefit of what you did and the impact that it can bring to the entire team.
When you leave out the "why" behind your work, others might not be able to guess the purpose and may not feel as connected or invested in what you are communicating.
Test to see if people are listening to your status updates
After stand-up during the middle of the day, you can grab one of your coworkers and casually ask them for their suggestions on what you are working on. You pass the status update test if they can tell you what you are working on. You gave a good narrative to the team regarding your status update.
Conclusion
Although status updates can be intimidating, it is the best environment to earn trust.
An effective structure for a status update is: what you did yesterday, what you will do today, and if there are any blockers.
If you encounter blockers, try contextualizing them and asking concrete questions for help.
Remember that you only have 1-2 minutes to present your status update and want to leave a good impression on the team. You don't want your manager to mistake your time and hard work for incompetence. Remember these four tips can help you make a good impression during your status update:
Create a short list before the status update: an unordered list helps to increase the flow of your speech.
Speak in layman's terms: don't go too deep into the weeds; keep it concise so everyone can understand.
Include other commitments in your status updates: include anything unexpected that takes up time and delays your progress.
Explain why the work matters in your status update: always think about how the update may impact another team member/department/company.
If you forget everything in this article, the one thing you need to consider when constructing your status update is - How does my update give value, and how can I bring people along with my narrative (story)?
How do you usually conduct your status update? Are there other tips that you find helpful?