Giving effective feedback is the most powerful way to grow high-performers in your organization.
As a leader it's your job to build effective feedback loops in your org.
Code feedback will be handled by tests and observability. This will improve your code.
But your org is driven by the behavior of your people, and that needs a feedback loop too, even just to maintain status quo.
Think of how a thermostat works. Whether you are maintaining or changing temperature, the operation relies on constant feedback from comparing a measurement (actual) to the setpoint (expected).
Manager feedback has to be the same: constant, and measured against a reference behavior.
Think of it like writing unit tests but for behavior.
The reference behavior is fairly simple for junior to senior engineers, because you can set the reference behavior according to their assigned work. Whatever their work is, be it to code a feature or coach a junior, you can observe it and evaluate it.
It gets tricky with leaders, both technical and management tracks, because in addition to assigned work you also expect them to identify unseen opportunities and handle unexpected challenges.
You can use your own experience as a reference expectation, but that doesn't scale. You can't add more experience on demand.
You can scale by using others' experiences, captured as a job description.
Two challenges with this:
You don't know the job description. (Learn it)
The job description sucks. (Improve it. Build narratives for your senior job roles, share stories)
Related note: any time you struggle to give feedback because you can't explain why a certain behavior was bad (often due to expressions, not output), tie it back to the job description. Template this: "when you exhibited behavior X recently, it gave me concern about your ability to effectively perform job duty Y, which is an expectation at your level."
Give examples. Eg disengagement, non-collaboration