visit
I’ve also worked for companies on 4 continents, on products that were used by hundreds of millions of people. You could say I did a bit of everything. But I would say my career was anything but boring.
I’m prone to reminiscing, especially while being stuck in the house in the middle of a global pandemic, so I sat down and revisited my greatest hits.
I’ll always be grateful my very first job was working with Mozilla, that shaped the way I approached software development in so many ways. I’ve got my love of open-source from there, and my drive to always learn from the people around me.
It did help that everyone I worked with was amazing! I’ve also thought about my 3-month stint as a CTO, after which I rage-quit on the spot because money isn’t everything.
Or the nine months I spent with my partner, living out of a suitcase, through hotels and AirBnBs in Asia.
This trip down memory lane also made me realise, there are a bunch of things I wish I would have known before I started. Or at least I wish I would have learned them sooner than I did.I made a list with the top ten, but I’m fairly certain I could get to 100. So if you’ve read them and want to know more, ping me on , and I’ll oblige.
And yet, communication is considered a “soft skill”. So when companies look for a developer, most of the time, the differentiator is in those soft skills.There are only so many ways you can code your way out of a tech test. When the field is narrow enough, it all comes down to those extra bits.
Acquire as many soft skills as you can, it pays off more than adding another programming language or framework to your toolbox.
Fuck that.
To this day, I still Google how to bubble sort. I’ve probably used it no more than five times in 10 years—and that was because I had to pass some sort of interview test.It doesn't pay to memorise everything, as long as you know where to get the answers from.In this day and age, that usually means Googling stuff. It's not a weakness, even if some people are ashamed to openly admit it. With my memory not being what it used to be, I Google even simple things I’ve probably done dozens of times in the past. And there’s no shame in that!
Asking for help is not something you should do only in dire need. Ask for help as often as you can get it. It frees you up to do the things you're most passionate about. And the whole reason you work in a team and not on your own is so you can help each other!Hence, ask for help from day 1, not only when the shit hits the fan.
It doesn't work like that, especially in the world of Programming, where dedicated Experts are few and far between.But figuring out what method of learning works for you means you can literally pick anything up in a matter of time. You want that fancy new job? Start learning, acquire the skills you need, and get it! But if you don't even know how to approach it, then the whole task of learning a new skill, any skill, becomes insurmountable. And you'll find reasons to quit before you even begin. What's my way of learning? Well, I find someone who's a bit further ahead than me, listen and then start asking questions.
They don't need to be an expert, just better at it than me.Eventually, those questions become discussions, and that's when I look for the next person to help our discussions move along.
Rinse, repeat, voila!
Not saying 'No' has made me a lot of friends along the way, but at the same time, it has meant I disappointed just as many people as I helped along the way. And that's because it was physically impossible to do all the things I agreed to.It also meant I might have accomplished some irrelevant feats, in the grand scheme of things.
For example, I'm a registered casino dealer.
Sure, it's a cool party trick, but I could have spent that summer graduating early. I could also have said no to writing a book for a project that died just before the book was supposed to be published (R.I.P. Firefox OS).In the same vein, I could have also said 'No' to living out of a suitcase for 9 months, and missed out on amazing memories.But hey, you live, and you learn.
It’s an HR metaphor used to describe the skills of candidates. So if you think of your skills as plotted on a graph, you'll notice you've got different levels in each. And if you unite those levels, you'd want them to create a T-shape instead of anything else.For example, know a little bit of everything, with 2-3 core skills where you'd be considered an "Expert".
And there are quotes there because “expert” is a relative term.
Relative to your other skills. For example, when I was a JavaScript Developer, the reason I kept getting job offers was because of my level of knowledge around performance optimisations, and Angular. So while I could do vanilla JS to a passable degree, I had a lot more to offer when it came to Angular applications and optimising the performance of most websites.
Now you'll wonder. Why was I a JavaScript Developer, and not an Angular Developer? And that's because I had more than one JavaScript skill under my belt, as opposed to just that one tool, Angular.
Hence, I was a lot more employable because of that T shape.
In the world of Developer Advocates though, that also translates to building a brand. The same way you're building that T, you can create a personal brand. Start writing about Angular and Performance Optimisations, and that would be my “personal brand”. If you follow me around the internet, you’ll have noticed I don’t do that, and I don’t have a personal brand though. I guess it’s something I have to work on.
You think you deserve that promotion? Tell your boss. You want to get promoted in 6 months? Tell your boss, and if they're any good, they'll tell you how to get it.In most cases, people are more than happy to give you what you want, as long as you tell them. Most managers don't really have a clue on what they're doing, so they're more than happy to get it done when they actually know what it is they need to get done.
Turns out, when you don't agree with something, you can always leave.Practically, voting with your feet. Instead of huffing and puffing, or worse, picking a grudge, it's a lot better to just walk away. Don’t like your new boss?
Just quit. Enough people do it, and their boss will fix it.
You don't like your company's policies around privacy, diversity, inclusion, human rights?Quit.
In an industry where there is more demand than people available, you can always find a better deal.There are such things as golden handcuffs, but if you're part of the few that have them, you'll understand that you can find them anywhere you go.I'm not saying you should quit without a plan here, in a tantrum. That's not voting, that's rage quit. No, by all means, treat this as a rational endeavour, and not emotional. Line up the next gig first.
It pays to know exactly how much your skills are worth.
Sure, you have a salary. But if you got that salary more than 6 months ago, it's not an accurate representation of how much you are worth to your employer. And it probably means a yearly review is just around the corner. That's the perfect time to make your compensation accurately reflect your worth. You could come up with a formula of how much an hour of your time is worth to your employer, make your case, and hope your boss can do something about it. Or you could shop around. Maybe you're worth more to the next employer. On top of the fact that interviewing helps you stay in touch with the market, it also helps you practice at it. Interviewing is a skill, same as anything else you do. It’s good to sharpen this particular skill, especially since it’s a significant factor for your initial compensation package.Without actually testing your newly acquired skills, and their relevance in the market, it's hard to gauge your worth.
You'll value the mission, or the work-life balance, or the empathetic boss, or the cool team a lot more than an extra 10% on your yearly salary.I've kept yo-yo-ing between high paid jobs and keeping my soul happy, and I've finally settled somewhere in the middle. Sure, I could make an extra 10% every year, but would that make me happier than working from home, on my own terms?
Previously published .