Software engineering has an essential human component. Software maintainability, for example, is the ability of people to understand, find, and repair defects in a software system. The maintainability of software may be influenced by some formal notions of computer science… But maintainability crucially involves humans, and their ability to grasp the meaning and intention of source code.
We won’t always be in environments that have our backs when we make mistakes, but we can’t let that cause us to lose our self confidence. Or prevent us from taking risks. When we have internalized our successes, we know we have the skills to take on bigger challenges. And when we are kind to ourselves we can drown out the naysayers, and bounce back from failure. This is the final responsibility of a manager: digging deep — recognizing your talent, being kind to yourself, and knowing you are resilient.