12 Career Lessons for Software Engineers
I learned in 12 years of my Software Engineering career
You made my day today! We hit 900 subscribers!
To all and each of you - Thank you! 🫶
Today in Code.Lead.Succeeed Newsletter in 12 minutes or less
I share the 12 lessons from my 12 years of career
What I learned from my mistakes
What led me to my successes
Enjoy the read, make sure you’re subscribed and have a great weekend!
Own your career
I believe in extreme ownership. I hold myself accountable for the career choices I make. I celebrate when they work; I make changes if they don’t.
Ownership means power.
Ownership means freedom.
Family and friends want what they think is good for you, but only you’re the expert at being you and what is the best for your life.
The magic happens when you become selfish about your choices. You become happy, fulfilled and lead by example. You’ll lead people around you by example.
The more you focus on yourself, the more you can give to others.
Plan long term
Since my blue-collar times, I planned for the long term — a decade, at least.
I always prioritise learning over money. The next job is always more important than what I get today. The more I know, the more it compounds into the future.
I’ve seen it going badly. People spend a decade in well-paid jobs working on ancient technologies. Then they wake up one day, a decade behind the market.
Going for quick and easy wins may be tempting, but you’ll still be working 20 years from now.
Code is just the tip of the iceberg
Don’t lead your career like a Titanic. Getting attracted to the small surface-level skill of coding.
Everybody makes this mistake. Some learn from it.
I was focused on code for over a decade. I understood that a better engineer equals a better coder—nothing further from the truth.
Code is crucial, but it’s just a foundation. Communication, problem-solving, project management, leadership and many other skills make a real difference.
Communication is the core skill
I’ve been frustrated for years that I had sound solutions, and I’ve been ignored.
Solutions weren’t the problem. How I communicated them was.
The game changer in my career was focus on communication.
Communication is how you interact with others, but also:
Sales
Marketing
Coaching
Negotiations
It’s not about just being well-spoken. It’s to know how to speak in a given context.
Meta skills have the best ROI
Yesterday I had a chat with my friend. He stated that domain knowledge is the most critical aspect of a Senior Engineer.
I agree it’s essential, but the ability to learn the domain fast is even better.
Going one step deeper can feel like premature optimisation, but if you plan long-term, it’s not.
You trade a month of learning the basics for years saved over the decades.
Always look for options
I keep “It depends” at the back of my mind. There is never a single best solution.
I now ask the magic question - “And what else?”. It’s a powerhouse of creativity.
I don’t move forward until I have three viable ways to solve a problem. It reduces the stress of the first one having to work. If the first idea fails and I’m under pressure, I already have two more solutions.
Context is the king. What works for Netflix probably won’t work for you. Keep your options relevant.
Be contrarian
I’m an old punk. Going against the system is in my blood. But contrarian doesn’t mean being always against the world. It’s all about getting as close to the objective truth as possible.
If someone gives you a single truth, like TDD is the best way to deliver software, ask the magic question - “And what else?”.
Singular truths are biased towards the person preaching.
If you take it as gossip, you are not an expert but an acolyte. Question everything, and look at each solution from different angles.
It’s not glass half-empty or half-full - it’s both.
Leave when it feels like leaving
I made this mistake too many times. I stayed with a company when I knew deep in my heart it was over. I valued the relationships with people and places more than myself.
It always ended badly for everyone. I got burned out, and somebody else decided for me.
This behaviour cost me one or two years of stagnation and regression. I was damaging myself.
It’s hard to lose people you care about, but it’s even harder to get depressed.
Work hard but also smart
There is a gory of martyrdom of hard work. People are working hard and getting nowhere.
Contrary to common belief, there are also no participation rewards.
Have a vision. Have a plan. Make sure you invest time into your goals.
It doesn’t matter how hard you row if you’re in the wrong boat and going in the wrong direction.
Happy people build good code
This I’ve seen change over 20 years. Developers were rare; software was simple.
Today, software is built by teams of people.
The health of the team is equal to the state of the software.
If software struggles, the only way to fix it is to help people who make it.
It’s people who build the software. Making people better is the easiest way to improve software.
If you’re the smartest in the room, you’re in the wrong room
I’ve always had an enormous ego. I liked to be the smartest.
It’s a good driver for growth.
What I didn’t realise was that the goal I was chasing was my demise.
If you’re the most competent person in the room, you can’t learn.
If you don’t learn, you stagnate (at best).
It’s the positive side of deciding to move on. You outgrew your environment, and it’s okay.
Trust yourself
The one I ignored for way too long. I trusted advisors more than my gut.
I even lied to myself to convince myself reality wasn’t what it was.
I got bored of code a while ago. I didn’t want to admit it and accept what I love the most now is helping people in their careers.
Trust your gut, explore options and go for it. Life’s too short not to do what you love.
P.S.
When everybody is preparing their New Year’s resolutions, you can do better!
Start today.
Who you’d like to be at the end of 2024?
And go for it. You can do it.
And if you want to know how it feels to have 12 more years of experience in carving your career path, I have an offer for you.
I launch my new and improved career coaching program, and I want you to get your career obstacles removed before the New Year begins.
If you want to
✅ Gain clarity of your career goals
✅ Improve your communication skills
✅ Transition from Individual Contributor to Leader
Reply to this email or DM me on LinkedIn “2024 Challenge” today!