I recently did an interview on the Ned in the Cloud show about career advice, and I was inspired to share this. This simple system has helped me tremendously over the years.
I call this the "Three H" method. It's simple, easy, and effective.
- Stay Honest
- Stay Hungry
- Stay Humble
Where It Came From
In the interview for my first programming job, I was speaking with the director of software engineering. I had zero experience as a professional developer, but I wanted the job.
He asked, "If hired, you'll be doing bug fixes, maintenance, and things the senior developers don't want to do. Are you OK with that?"
I replied: "I will sweep the floors of this place if I have to. And they will be spotless."
I got the job, and months later, he told me, "the only reason I hired you was because of one thing you said. You told me you'd sweep the floors of this place. That shows you don't feel you're above any type of work and you're dedicated. Nothing else you said mattered. I need that kind of attitude on my team".
It was a two-hour interview, and this is what he noticed? Wow. But it was the start of this system which I have followed and given to developers for years.
Here is what you need to be successful in tech (and probably many other industries).
Stay Honest
Photo by Robert Nagy from Pexels
This one isn't as easy as it sounds, but it's crucial. Be honest. Always. Don't over-promise anything. Don't say you know something when you don't. When you make a mistake, own up to it. Be clear and direct.
Trust can take years to gain and minutes to lose. If the people you work with don't trust you, you're wasting your time and theirs.
Examples:
Wrong: "I can do that, I know (technology) very well!" followed by BS while you scramble to figure it out
Right: "I don't know that answer, but I know where to find it."
Wrong: "I have no idea how that happened. It must be someone else's fault" while you scramble to find someone or something to blame
Right: "I made the wrong call. I broke this. I will figure it out and learn from it."
Trust can take years to gain and minutes to lose. If the people you work with don't trust you, you're wasting your time and theirs.
Stay Hungry
Photo by Andrea Piacquadio from Pexels
Always be looking for the next thing. This doesn't mean chasing tech fads or job-hopping. This means always looking for new ways to improve yourself.
Whether it's a new programming language, technology, or skill, always work on something for you.
You can do the same job for 10 years for the same company and not be getting stagnant. So long as you're improving what you do. This includes:
- Finding new technologies and learning them
- Improving your skills on an existing technology
- Working on your people skills
That last one is crucial. Allocate a portion of your learning time for people skills. The more, the better. Technical skills can be taught to anyone with the motivation, but people skills will set you apart.
Never get complacent and never stop improving. There's no such thing as job security. It's your responsibility to stay sharp.
Stay Humble
Photo by Christina Morillo from Pexels
This is especially important in your mid to late career. Once you get a few wins under your belt and crush some cool projects, you may start to think you're the greatest programmer that ever lived. You'll tell that to everyone who will listen, and might even believe it yourself.
No matter how good you are, you're still a human who makes mistakes. You'll also find that the more you learn about a subject, the less you actually know. Personally, I see this as a challenge, and it keeps me going. It's completely OK to let others around you know this is the case.
Humility is tied to trust. I'll explain. Let's take two scenarios. You join a software team.
Programmer 0
You join the team and let everyone know what a tech god you are. You're the best of the best, and pretty much surrounded by idiots, but you like them, so you'll help. You know all there is to know about a subject and make no mistakes. They don't need to bow when you enter the room, but it wouldn't hurt.
Programmer 1
You join the team and let everyone know what kind of experience you have. You share that you know a lot of things about a lot of things, but you're still human. You explain you're going to do the best you can to use your knowledge and experience to help solve problems. You acknowledge that others on the team have insights and expertise too, and you're open to their ideas. Even the non-technical folks on the team have something to offer.
A Mistake Happens
Inevitably you make a mistake. How will people react to you if you're programmer 0? You talk a big game every day and let everyone know how inferior they are. Now that YOU have made a mistake, what is their impression?
They likely think:
- Blowhard
- Jerk
- Full of ****
You've lost their trust, just like that. Not only have you been a pain to work with, but now you just look like an idiot, which is precisely the opposite of what you were trying to accomplish.
If you're Programmer 1, and you make a mistake, what is their impression?
They likely think:
- Human being who made a mistake
- They tried their best
- They will learn from it and fix the problem
Trust in you is still intact. Because you didn't promise the moon and stars, only your best effort. If your best effort fails here and there, it's not a big deal.
By being humble, you are easier to work with, easier to trust, and inspire others around you.
Summary
These three things have helped me tremendously in my career. In the spirit of staying humble, I didn't invent this stuff. It was passed down to me by great mentors over the years and experience. Through listening, observation, and making mistakes myself, I gleaned knowledge that helped me succeed.
And I'm sharing it here. An excellent course that's related to this and goes even more in-depth is Leading with Emotional Intelligence by Jason Alba. It covers ways you can carry yourself and make decisions to advance in your tech career. Check it out.