13 min. read

June 14, 2020

programming

Putting Freedom on a Pedestal

Here’s the story of how I managed to get freedom in my job – strap in, it’s a bit of a bumpy road. 

blog-avatar

Claudio Bernasconi, Software Engineer & Architect

Success looks different for every developer: some want to earn as much money as they can, some want to make a difference with their software 一 and for others, it’s just a job. 

To me, success is being able to do whatever I want, whenever and wherever I please. True success is freedom, and freedom has always been my life’s goal. So here’s the story of how I managed to get freedom in my job – strap in, it’s a bit of a bumpy road. 

My introduction to programming

I was first introduced to the wonderful world of software development at the age of eleven. My father worked for a computer parts company, and I would often hang around the shop after school finished. In his spare time and between breaks, he’d teach me about the computers he was working with: how they functioned, which parts were what, and how to piece them back together. 

I discovered that with a little bit of know-how, you could actually tell computers what to do! This interest started with video games and quickly spilt over into the daily world of software development. My parents, recognising the interest I had in computers, bought me a programming book - a C/C++ encyclopedia with around 1000 pages. It was intimidating, each page was a tangle of complex theory which took me a long time to digest. 

The internet was peaking back in 2002 (on the tail-end of the dot com boom), and I wanted to be a part of it. I was so driven by the idea of working with computers that I taught myself PHP, HTML, CSS and C — all before I started an apprenticeship at the age of sixteen.  

The big thing back then was websites. Every business wanted one, but they were hesitant to pay the big bucks like they do today. And that’s where I got my first pay-check - building a shotty little website for a small business. From a technical standpoint, the sites I built were horrible, but hey, they did the job. 

Learning how to develop real software

The first company I worked for (as an apprentice) had five employees, meaning we had to wear many hats. We would build complex backend program logic, design form templates, and do the customer service bits - talking to international clients whilst picking up the languages along the way. Most of the time it felt like you were swimming in the deep end, struggling to stay afloat.

I ended my apprenticeship in 2010 as I had to enlist in the military for mandatory service (still a thing in Switzerland). It lasted a total of one day. According to the health checkups, I was lactose intolerant and so the military decided to drop me.  

With some unexpected time on my hands (an extra 21 weeks) I started looking for a job, and soon landed my first real software development job. The job was for a mid-sized company in a dedicated department, meaning no more phone calls or kitchen duties (I was an apprentice, remember). And the developers there were very experienced, teaching me a lot about .NET which has since become my focus. 

Creating my first mobile app

Around the same time, mobile applications were the new hot topic and everyone was scrambling to create their own app.

Before mobile apps and App stores, it was a lot more effort to build a native application from the ground up and ship it to the customer. Thankfully, app stores have since made it simpler.

But what was enticing about creating a mobile application was the freedom to control every stage of the lifecycle. It’s pretty awesome to just come up with an idea, develop the application and deploy it to a user’s device. There was a direct relationship between you and the users of your app — and in a small-scale way, you could immerse yourself in all the different components of app development. 

I came up with the idea to build an app which could show users where the available parking spaces were in my home city. The app would allow them to find a parking space with less time spent aimlessly roaming the streets. So I went with the idea and built the application which I uploaded to the Google Play Store for an installation price of $1.45.

My intention wasn’t to build the app to make money — but I was curious to see how it would perform with a price-tag. I didn’t invest a heap of time into the project after I launched it, as I was busy with other projects. But surprisingly, after a few years in the Google Play Store, this simple little app made me about $2,000! It’s not a ton of cash at all, but it was something I had earned through my own abilities (I was still pretty inexperienced at that point). That was proof to me that you don’t have to be a crazy expert to make money doing what you love, you can literally start at any point! 

The CS degree

After two years of full-time grind — I’d learned just about everything I could from my colleagues and wanted to take the next step. In Switzerland, an apprenticeship is highly valued, but unfortunately for me, the rest of the world doesn’t seem to recognise it. 

The great programmers that I knew all had computer science degrees, so I wanted one too. It’s funny thinking back, I had learned most of what I knew on the job, sitting side-by-side with more experienced developers. So entering into university was a bit daunting — not to mention no one in my family had even started a university degree before. I passed the entrance exam and made it into a Computer Science degree program at Lucerne's University of Applied Sciences. 

The next four years I spent working and studying part-time, three days a week in the office and three at school. And in 2017 I finally received my bachelor’s degree.

Failing to climb the career ladder

By the time I had received my undergraduate degree, I had already been working in my role for seven years. With my experience, and now a flashy degree under my belt, I was confident that I’d get a promotion. 

But it didn’t happen. I watched as my colleagues got promoted and climbed the career ladder without me, leaving me behind to do the exact same work I’d been doing before I ever got my degree. I was confused and felt excluded. All the years of hard work and education hadn’t moved me an inch! 

So I made the decision to quit — to throw in the towel and pack up shop. Why should I work for someone who wasn’t willing to help me advance in my career? 

It soon became clear to me why I’d been overlooked by management. I had been headstrong and had valued the quality of work over the people. It was obviously a hard realisation — it wasn’t my skill set which was the issue, but my personal relations. 

My colleagues had been connecting and networking, in private and in the workplace, building relationships which had helped them up the career ladder. But I didn’t always follow management. If there was a decision which didn’t sit right with me, I would fight it and argue from a developer’s mindset. If something was wrong I would speak up. This left me with few connections and virtually no network. What a precious lesson to learn!

Becoming a freelancer

I quit without securing another job. The idea was to take a few months to enjoy the things which I had neglected in my career: golf, nature, time with family and friends. A serious relationship had ended as well, and I knew it was time to reboot and change the direction of my life. 

It didn’t take long for me to realise I wasn’t cut out for the corporate world with all its ass-kissing and bureaucracy - it wasn’t my style. Don’t get me wrong, I love working with people, but all the politics is just a distraction from what’s important. 

Working for myself didn’t sound so bad, besides, it suited my skill set a lot more. I could work from home, save time with commuting, choose what I worked on, and potentially earn more money in the process. So I decided to be my own boss. 

Everyone I spoke with advised against becoming a freelancer - they didn’t think I could build a reputation for myself and preferred I go for a guaranteed pay-check every month. “Play it safe and get a full-time job,” they said.

Getting my first remote job

I actually got my first remote gig through a former co-worker. He was working for a modern company which provided a lot of freedom to its employees. He asked if I would be interested in a remote software engineer position. 

Yes, I was very interested. The company had a great compensation model and, given my social standing with my former co-worker, they immediately offered me the position. Get this - I was offered more money for a four-day working week than I had earned working full-time at the last company! 

But this was not my original plan, remember? I was going to be a freelancer. It was a slight compromise; I’d get the ‘secure’ monthly pay-check plus a bunch of freedom. So I decided to sign the contract and started working remotely. 

Working from home was what I always wanted. I could work when I felt like working — to my own schedule and I also had the freedom to choose the tools and equipment that I used to build software.

Building my blog

Luckily, I started blogging quite early in my career, in 2008. Back then I didn’t have any idea of what I wanted my blog to be but just knew I wanted to start one, so I installed Wordpress and bought my first domain.  I was first hesitant to start blogging since my English wasn’t so great and I was worried no one would care. At one point, I received a nice comment at the bottom of one of my posts. That was all the encouragement I needed to continue blogging regularly. 

A few years into my professional career, I made blogging a bigger priority and wrote roughly 20 blog posts in 2013. My blog started to gain some traction, with a few articles ranking pretty high on Google. 

Through building a professional reputation for myself, I would become more valuable to potential employers - that was my thinking anyway. 

I also created a Twitter profile and started interacting with users in the tech community.

Building a Personal Brand

During my time at university, I had some rough years. I worked and studied a lot. I didn’t have time for anything outside of that. My personal brand was neglected and my blogging ground to a halt.

When graduation rolled around I was itching to get back to my blog where I could continue to learn and share with the world. So I doubled down and in 2019 I wrote 33 blog posts which brought in about 20,000 page views each month. My social media grew as well; I took my Twitter from 200 followers to 1500 within a year! 

That’s around the time I began creating videos on YouTube, aimed at teaching .NET development. It was time-consuming but the interaction and feedback I got from people was enough to keep me going. 

In March 2020, I reached 1,000 subscribers on my YouTube channel — which I was super happy about. It’s not easy to produce videos, but it all pays off when you see the positive response. I think everybody has something unique they can teach and share with others, I encourage you to do the same. It’s a huge motivation on this journey towards freedom.

Commitment to Community Contributions

A big part of who I am is that I value my happiness over the pay-check which is why I decided to reduce my working hours even more in 2020 so that I could devote more time to content creation. I’m not gonna lie, it hurts to take a pay cut, but I’ve never felt as motivated, energised and happy as I do when I’m working for myself and living according to my values. 

I’ve even made some connections along the way with active developers in the community who also run popular blogs and YouTube channels. I guess I’m building a different kind of professional network, one which isn’t tied to a raise or promotion but to a huge community of educators. 

I committed to write more blog posts, create more videos for my YouTube channel, and to connect with more people on Twitter than I ever did before. And I want to connect with you! :)

Monetising My Community Contributions

Because I took a pay cut by wanting to contribute to the community more, I wondered how I could make it sustainable so that eventually my contributions would actually support me.

Teaching is my passion, and I’ve always wanted to make an online course. But there are several things which held me back. Firstly, I didn’t think I was an expert who had the right to teach on the subject. Well, that was a lie! And the second lie I told myself was there wouldn’t be anyone interested in my content, so it wouldn’t be worth the trouble. 

After running a YouTube channel for more than a year, I realised that creating an online course wasn’t that far out of reach. Now I am committed to creating my first online course about Creating Web Applications using Blazor with C#.

Initially, I was aiming to complete the course by April 2020. But I guess I didn’t realise the amount of work it takes to create something like that on top of my other commitments. So I’ve decided to take a little more time to create a course which I’m proud to share. So it’ll be done when it’s done. 

I intend to release the first part of the course for free, so if you’re interested, I encourage you to check it out and let me know what you think. Jump on my email list for all updates about my Blazor course!

I'm curious to see how successful this endeavour will be. I'm regularly blogging about my journey and you should too — despite what you may think, people are (or will be) interested in your own personal journey. And I write openly about my wins and losses. I'm not afraid to explain why I failed, or what methods I used to succeed. 

My dream is to build a business around online courses, articles and consultancy work — and eventually, I want to create a software product with some like-minded developers. The reason I share my story is not to boast but to motivate others who also want to do similar things. I fell into the trap of the ‘steady 9-to-5’ and I don’t want the same for you. Working for someone else and climbing the corporate ladder isn’t what it’s made out to be, and only works for a handful of people.

Take Full Responsibility for Your Career

Don’t give up if things don’t work out. If you get denied a chance, try to learn from it — take full responsibility for your career and don’t fall in line with everyone else. We need to remember that other people (our colleagues, managers and friends) aren’t going to build a career for us which is in line with our dreams. Only you can do that.

No one path leads to success - it’s different for everyone which means you have to go out there and find out how you can get success. If you want to climb the ladder, go for it! It didn’t work for me though.

The question is: do you value freedom or a big pay-check? I’m not saying you can’t achieve both, but, at least for me, a big pay-check is not enough to sacrifice my own dreams of work freedom. 

Thanks for reading!