Since I'm about to lead a team, thought it'd be helpful to have these things written down. They might change over time but hopefully not too much. I'd also want to be transparent and clear about what I'd expect from my team.
Work isn't the most important thing
Somewhat contrarian, especially in Singapore. No one should prioritise work above all else. It's inhumane to expect one to do so. Life is so much more than just work. Even if you love your job, sometimes you'll be bored, tired or just think it isn't worth it. And that's okay, it's normal. Sometimes we feel that way because of people we work with or a project isn't completed the way we'd like it to be.
If you're someone who thinks work is the most important thing, have a read of this excerpt from a book in the Bible, written by a king around 3000 years ago who was richer than Bill Gates.
I hated all my toil in which I toil under the sun, seeing that I must leave it to the man who will come after me, and who knows whether he will be wise or a fool? Yet he will be master of all for which I toiled and used my wisdom under the sun. This also is vanity. So I turned about and gave my heart up to despair over all the toil of my labors under the sun, because sometimes a person who has toiled with wisdom and knowledge and skill must leave everything to be enjoyed by someone who did not toil for it. This also is vanity and a great evil. What has a man from all the toil and striving of heart with which he toils beneath the sun? For all his days are full of sorrow, and his work is a vexation. Even in the night his heart does not rest. This also is vanity.
- Ecclesiastes 2:18-23
To clarify, this book doesn't say work (toil) isn't important at all, though it might make you wonder what's important then? You'll have to read on to get the full picture or you can ask me for a fuller explanation.
And for most of us, we'd naturally think there are a lot of things more important, like our religion, family, friends, hobbies. That's normal and I don't expect otherwise. I don't mean you should do a bad job at work of course. I'd expect good work but not at the expense of what you think is more important. And I'd argue that we need to prioritise things we believe are more important so that we can do good work. We are made to work but it's not the most important thing. Even rest at times could be more important than work.
Be an owner
See a bug, fix it. See a spelling mistake, fix it. See bad documentation, write good ones. If you own something, you'd take good care of it. I like the idea of a Maintainer coined in software engineering. You are responsible for maintaining what you write, especially in software where every commit is signed by you. Don't write sloppy code and say you have to merge it because of a deadline. Sloppy code is not tech debt. Made bad decisions or merged a bug? Take responsibility, own up and do something about it. And be proud of your work.
We are a team first
Since we are working together towards an arbitrary goal, don't be afraid to say what's on your mind. Don't be afraid to say hard truths we need to hear, even to your manager. Sometimes our opinions turn out to wrong, and that's okay. As a team, there is room for mistakes. As long as we own up, fix it, learn and move on.
If you are having personal issues, or unable to deliver some time in the promised time, let us know and trust that we will fill in the gaps for you.
Of course, all that assumes that we trust each other enough over time.
Learn how to learn
It's easier to teach people what they should do than teach people to figure that out for themselves. Knowledge is everywhere but to discern what knowledge is worth learning is a difficult skill.
The smartest people aren't those that know the most, but those that can figure out how to best leverage on the knowledge of others.
I think it boils down to three things. How to ask good questions, how to think critically, and to be comfortable being wrong. And that's what I'd expect. Not writing the most efficient algorithm, writing the most elegant code or even scoping the most impactful project. But I'd think you'll get there if you ask good questions and think critically in a way that doesn't assume you're always right.
In software engineering, most people think that you need to be the most logical person, or the smartest one to be good at it. On the contrary, I found that the people I most enjoy working with, are humble, curious and communicate well.
If you are in my team, let me know what you think. If you have any feedback regarding any of my expectations that were mentioned, you're more than welcome to talk to me about it.