Coaching vs Software Engineering
How do you find a good coach for your dev career? Should YOU become a coach?
6 months ago I started my coaching program.
Since then, I had the chance to work with Software Engineers, Data Scientists, Data Engineers, Machine Learning Engineers, and more, helping them level up their tech careers in Europe.
I’ve learned a few things on the way, and in today’s article I’ll be sharing some of these learnings.
They can be interesting and useful both if you’re:
A tech worker looking for a coach to improve your career (what to look for in a coach)
A tech worker considering doing coaching (are you a good fit? Is it worth it?)
Coaching is very different from software engineering.
Let’s start from the basics:
Software engineering is about solving problems, usually through the means of collaborative software development.
Coaching is about:
1. Empathy and emotional intelligence
In the end, it all starts from the person that you’re coaching.
If you’re not aware of them - how they’re feeling, what they desire, what challenges them - you can’t work.
You coach humans, not robots.
❤️ This is the heart of the coaching.
2. Intuition
There’s an infinite amount of career choices one can make in the short and long term.
An infinite amount of variables at play.
You can’t always logically and deterministically solve things.
It’s important to have great intuition and be able to draw lines amid the chaos and, ultimately, just give good recommendations.
🧠 This is the brain of the coaching.
3. Systems and tools
Having flexible yet reliable systems that enable people with different backgrounds to improve their careers.
Practices, tools, mantras, algorithms, guidelines, etc. Things like this or this.
💪 This will be the muscles of the coaching.
When looking for a tech career’s coach, don’t just look for accomplished engineers.
Many of them reached a great career position by leveraging their specific resources.
What worked for them might not work for you.
People deny this, but a lot of them just got lucky and end up in great jobs.
Others have put huge amount of efforts into becoming top tier engineers and could have gotten where they are with half the work.
When looking for a coach, look for someone that:
Can and wants to understand you
Understands the market and the game
Is gifted at this and has good intuition
Has systems and tools to get results
Here’s the English translation for the above message in Italian:
“In my opinion, you're doing great. I don't know about the other guys in the batch, but for me, quite simply, you've changed my life just by helping me reorganise my thoughts in priority order and setting long-term goals, not to mention the execution part.”
This is the type of outcome that you want to achieve with coaching, allowing the client to:
Have more clarity in their career vision
Build high-quality strategies with short-term and long-term implementation steps
In addition to other features that you can offer such as:
Helping them in networking (teaching them how to network and giving them access to your network)
Bringing their CV and LinkedIn to a great level
Giving them unique info that it’d be hard or time-consuming for them to get on their own
Fast-track their progress by leveraging your support and expertise, tailoring all you know and can do to their specific situation
Ultimately, also help them get better jobs:
Should you start coaching if you’re a software engineer?
This really depends.
Here’s what to consider:
Are you doing it for the money?
Money-wise, in most cases, it’s not worth it.
Remember what I said at the beginning: coaching is very different from software engineering.
In an effort to leverage and monetise your skills, if you’re a good dev, you’ll probably make more money in less time working as a dev - either as an employee or freelancer or saas founder.
If you’re an engineering manager, the job and tasks are a bit more similar (compared to being a dev), but still quite different (as a coach, you need to know much more about the market, different companies, opportunities, trends etc).
If you enjoy doing it, it can be a decent side hustle that can bring some money.
How to know if you enjoy it?
You can try it out, and see if you like it.
You can try doing it for free, maybe within your company.
Or you can advertise your services on some marketplaces.
Also, try to assess if you’re good at it.
If you’re really good at it, it can be more fun:
You’ll get your clients results
You’ll feel the reward
Since the service is high-quality and your clients get results, you can also command higher prices which can also make it financially interesting
In general, these are some rules of thumb to evaluate if you could like it:
Do you like working 1:1 with someone? Having talks, asking them questions, hearing about their stories, etc. Basically, do you enjoy socialising?
Do you like the “strategic” and “tactical” aspect of careers? Navigating the market, preparing CVs, exploring LinkedIn, networking, preparing interviews, etc.
Do you like sales? Ultimately, if you want to make it a business or make it generate an income, you’ll need to have some marketing and sales channels, otherwise it will be hard to get clients. Do you enjoy social media? Are you willing to invest the time needed to build an audience to showcase your skills and knowledge to potential customers?
In my experience, here’s what I’ve liked about it:
It’s more “human” and less alienating than building software
You work with people, with their life goals, limits, passions, personalities, and so on.
Compared to my last job at Oracle, where I was mostly dealing with nodes, clusters, scripts, monitoring systems, etc, it feels like I’m doing something more “human”.
It’s less fake and corporate
Again, compared to working in a big tech corporation, there’s much less politics involved.
I feel much less the need of “hiding who I am” or “managing optics”.
If people want to work with me, usually they like what I do and what I’m about, and most of the time I also like them and there’s a nice match on a personal level.
This might be biased though and it could be not accurate. For example: you could find a tech job in a chill company with little to no politics and cool colleagues, or vice versa you could run your coaching program to make as much money as possible making it “mainstream” and having to be salesy to people.
Basically, in a way I don’t know if this feels less political to me than my previous tech jobs because of the nature of coaching, or because I went from a “high income environment” to a “lifestyle business”/enjoyment-before-profits context.
Still, I think it offers more chances than a tech job to be more authentic and less political/fake.
I like that it leverages my skill set a lot
I think my “success” as a dev came both from
Being good at coding and math and collaborative engineering work
Being good at navigating the market (Europe in particular) and getting good offers
I’d say they both contributed equally to the outcome.
Also, I’ve always been a sports person. I’ve done competitive sailing for 10+ years, worked with actual “coaches” at all levels of that game. I’m familiar with what a coach does.
I’ve also always liked teaching. It was my part-time job doing my studies: teaching math and physics to high-school students. So I like and have experience working 1:1 with people. It was always a good experience for me.
You feel the outcome very directly
If you work on a large-scale software system, you are quite separated from the outcome of real people being touched in their lives.
You improve the performance of a system by some performance number, its reliability, whatever.
Even if you work on the product side and add user-facing features, you can see the impact but in a cold way.
The impact you have with coaching is very warm and direct: you get to personally build a relationship with someone, and you see some aspects of their life changing in real time, thanks to the work they’ve done with you. This can be very rewarding.
What I don’t like about coaching
It's not all sunshine and rainbows, though.
There are things that can be more problematic than doing engineering work.
Not all clients are a match
Sometimes the match just isn’t there, and it’s up to you if either try to make it work, or just communicate the mismatch and cut it short.
Ultimately it’s not a big deal and these situations can easily be handled gracefully, but it can take some care and effort to do so.
Marketing and sales can be tiring
I think most devs don’t understand how hard it is to sell and market.
We all rely on other people to do this job for us, and we think it’s easy and “simple”.
Maybe it’s simple (it’s not as complicated as some aspects of software engineering), but it’s not easy.
It requires a lot of stamina. You need to constantly be selling, regardless of your mood. No one is gonna buy from you if you’re feeling grumpy or anti-social.
Also, in today’s world, just to get some customers, you need to produce a lot of high-quality content. And that takes time and energy.
It’s not a stable career
At least, not in the same way as being a software engineer is.
There aren’t as many “coaching jobs” you can apply to.
Software engineers have it on easy mode in that regards. You can just have your skill set, and there’ll always be a job for you out there. Often times also with great pay and flexibility upsides.
If you rely on other marketplaces instead of your own sales and marketing channels, you won’t be able to build a decent income from it.
That’s all for today!
Let me know if you found this article interesting!
Would you like me to share what I’ve learned from building this newsletter to almost 9000 subscribers and my LinkedIn to over 31000 followers?
Otherwise, remember to check out this guide I recently launched to help you plan your career more effectively.
Very soon I’ll be sharing more guides for the paid subs (you can subscribe here), including CV and LinkedIn guides.
Whenever you're ready, there are 2 ways I can help you:
Euro Top Tech Jobs: 4000+ top paying tech jobs in Europe in addition to 65+ fully-remote companies paying $100-600k per year and private guides like this one.
Coaching Program: Check it out if you want to work 1:1 with me to boost your career as a dev in Europe or remote.
Great article Nicola, thank you. I’ve been thinking on it for a while, what turns me off is exactly what you wrote - constantly selling, hustling just to find the next client. I feel that selling my time in such small units is just not scalable for the long term, and can be very emotionally tiring.
Have you considered courses or cohort coaching?