13.0 Mentality

A picture generated using Midjourney about motivation, mentality and the path to mastery

1. Jack of all trades, master of none; but oftentimes better than a master of one

A good programmer is like a hydra, they have many heads. You’re not supposed to think only in terms of your little piece of code, or just your tasks. You have to think like everyone else on your team : QA / DB Admin / Product Owner / Front End

2. You build it, you own it

You don’t just submit a PR and once it’s done, you’re free to go. You are in charge of every piece of code that gets shipped. You build it, you test it (more on this later on), you ship it and you monitor it. And then, you continuously improve it if given the chance

3. The master presents itself when the student is ready

There is no “my code”. There is no such thing as I in a team. Keep your eyes and ears open when receiving feedback. Even if it rattles your ego, listen and try to learn from what’s being said. This is the healthiest mentality an engineer can have

3. Kaizen

Learning never stops. Always be on the lookout to learn something (like this awesome course), to deepen your knowledge. It can be anything. A new project at work, a new language, a book, a course. The important thing is to set specific time daily to study. Mine is 10-11 am

4. Be a Boy Scout

“Leave the place better than you’ve found it”. Whenever you work on a piece of code, if you see potential for improvement, go for it. While large projects bring about immense improvement, many small changes can optimize a system as well

5. Constantly study language

I’m not talking about programming languages. I’m talking about real language. You as engineers are supposed to be eloquent. How you speak is how you think, also how you write code. A programmer’s greatest challenge sometimes can be a variable name. Study language, become at least masters of English, since that’s the universal language of programming, for now.