I graduated from my SWE degree around 6 years ago (almost to the date). The uni I went to wasn’t one of those fancy big names you’d recognise but a rather small one in Wales, UK. It had a fairly decent curriculum and gave me the necessary skills to get a job in London. Lately though, I’ve started questioning what it means for me personally to work as a software engineer.
The loop
For the past 6 years I’ve been working my way through various companies. In each one I’ve felt like something just isn’t enough. I would reach a point where I’m not learning anymore given the constraints of the company I’m in, look for a new job with newer tech and a bigger salary, rinse and repeat. I feel I’ve been stuck in this loop for a while now. I’ve reached a point where I have a good understanding of some of the most complex types of systems. I’ve worked with monoliths, microservices, various different databases and message brokers and have reached a salary which for a non-lead/management role would be somewhere in the top percentiles for the city I live in.
Perhaps, I’ve been searching for the feeling of meaning through the work I do. There have been times I’ve felt this but as time goes on it feels like I’ve been lying to myself in those moments. ‘If I work for a company that gives credit to small businesses, this directly benefits the economy and has a net positive impact of the wider society I live in’ is what I would tell myself and it would give me this sense of pleasure for a while. This period always ends though and I feel meaningless over and over again. Why is that?
Figuring things out
The moments that I’ve felt amazing about what I do were always the ones where I would try to create something new - hook up to an interesting new API, a proof of concept for an idea that sounds fun to me or (more recently) making music. It seems to me that the common denominator between these was always the creative aspect of building something which doesn’t exist. Literally something which has not existed that I’ve been able to create. How amazing is that? This is what I love about software engineering - you create something from nothing! One might argue that that’s exactly what you get even with a regular job, but at the end of the day, unless you’re in a really early stage startup, there will be someone giving you a list of requirements that you just need to implement. Of course there’s nothing wrong with that but for whatever reason, I no longer find it exciting… At one point I was obsessed with the idea of getting into one of the FAANG companies. That desire seems to have faded as well.
However, I’ve always been drawn to that act of creation which feels like art. I think all humans are intrinsically creative creatures. As Yuval Harari describes in his book Sapiens, imagination is one of the key drivers of humanity’s progress. We can literally conjure an image of what tomorrow or the day after will look like and make this a reality. This is how creativity and art work! Many people talk about potential joblessness as more things in the world are automated by robots and AI, but I think humans are creative enough to always think of ways to spend their time and make a living out of that...
What's next?
So now, after I’ve realized that I dread this endless while loop of the 9 to 6 grind every day working for someone, I finally have the clarity to say I want to pursue something that is both creative and can generate revenue. I don’t yet have the confidence to build a game-changing product like Amazon or Tesla like all the Silicon Valley dudes aim for. I think there’s an alternative way though - a portfolio of smaller indie products that I’d be happy to work on seems like a good alternative right now. I’m sure it’s not easy to achieve that and I won’t be quitting my job soon. For the time being I plan to try build side projects and grow them. Have you ever had similar thoughts and experience? Or perhaps you’ve already gone through this type of transition? I’d be happy to connect on Twitter here and chat about that!
Top comments (55)
I can relate. After 7 years in one of my country's top notch agency the feeling was the same. To overcome this I decided to turn freelance, smaller projects maybe, but then I was in charge of everything: tech stack, meaningfulness of the projects I was working to, collaborators...
Seeing everything was running smoothly I moved outside my hometown and went to live in the country, while keeping all of my costumers and working remotely.
Then, it was 2015, i gave myself one day off each week. It's about 7 years now that I work 4 days a week, and this gave me the possibility to study whatever I wanted - but also to simply do nothing or pursue my other interests.
Next step will be 3 days a week, as I've always felt It's a shame we humans have to spend more time working than living our life.
Don't know if it helps you... for me it has worked fine (and, after almost 20 years of coding i still love it!)
That sounds nice! Working 3/4 days a week seems like a good deal. I've thought about doing some sort of freelance/consulting type of work but the question is how do you get clients?
Well...at first it was scary, but
I've found that old colleagues and clients are the best resource to find my gigs, if you leave a good impression as a person. Then you have to be good at what you're doing, but that's the norm in every job.
Besides that, we're in a time where developers are really sought after, any dev with a linkedin profile knows what I mean 😀. Somewhere I've read "linkedin is like the opposite of tinder, where beautiful girls write to nerds and don't even get a reply"...😁
Really I didn't have to do anything special. My point of view is you simply have to invest in yourself and become good at one thing (I've choosen frontend stuff), and not behave as an asshole.
Being willing to earn less can help, as well as moving to places where the cost of living is lower - but this doesn't have to be bad... for instance, I moved from Milan to Tuscany, a really big improvement on life quality!
Brilliant! And the thing you read somewhere about Linkedin being opposit or tinder haha! That cracked me up! Never thought in that way but so true! 😅
That's a very accurate assessment of LinkedIn 🤣
Awesome @lucaboriani ! I have some questions if you don't mind.
1) How do you handle customer support? Using an specific software like zendesk? How do you make it scale?
2) What do you do if the customer contacts you in your free time?
Hi!
Well, question n°1:
It depends on the kind of project; if the client already uses a system and is willing to give me an account I use what she/he already feels comfortable with. Otherwise I normally setup a trello/asana/youtrack/... board and give access to the customer.
Oftentimes they simply write mails and we arrange for a call when needed.
Question n°2, contacted in freetime:
If I'm being contacted for something bad like a bug in what I've made I tend to reply asap and act accordingly (cannot stand it when it's my fault), otherwise I simply reply the next time I start working (I always tell client how I'll behave in such situations so they do not get mad at me if I answer after 3 days... ).
Moreover I tend not to leave my personal number to anyone I do not already know, as you can't call a number you don't have 😁
Thanks, bud! You are handling it great, you make it looks easy! You are low-profile too, I can't find your Twitter or something else to connect with 😆
I couldn't handle it smoothly as you do, so I gave up! I prefer to be an employee and have one client which is the company I am working for 😅
Thanks, It took some time and adjustements but it's working fine so far.
Oftentimes a contractor position is the middle point between 'safety' and 'freedom', If you find the right company go for it!
I have no twitter nor fb account and never had one (so I can read more on dev and other interesting stuff instead of ... trolls and kittens 😂) .
Sometimes when your "passion/hobby" becomes a job especially with financial concern it's no longer than fun. And sometimes creative solutions might not generate revenues...
If you don't hate your job, and it brings you money, then try to work less and have time to do other things or think about what other things you would like to do, maybe not necessarily related to software development. If you insist on software related, you can still do something meaningful such as mentoring juniors, contribute to open source, or volunteer for non-profit that needs software services.
I am in the position to have turned every hobby I had into a job. What I started to tell people was "The problem with turning your hobby into a job is you're losing a hobby"...
Haha yes, I have experienced the same.
Oh yes, except at a life level, not career level.
I also found a pretty clear way to get "out of it". The key part to focus on is this:
The kicker is no matter what you are doing, you eventually find that the "meaning" of what you're doing starts to fade, you're actually realizing something. A career won't make your life meaningful.
The idea of "meaning" in life usually goes back to the idea that a life should have the meaning of some level otherwise it's "wasted". Except it doesn't and the acceptable level of meaning is abstract. Oftentimes we think our lives don't matter, our work we do doesn't matter compared to this abstract level of "meaning". It's that level that turns into justification of finding "more meaning" in our lives, by changing our lives to "find more meaning".
Except it doesn't have to. We don't have to seek "more meaning" out of life because we judge ourselves "meaningless" or "not meaningful enough". Instead, we could ignore the concept of a "meaningful life" and find value in what we do.
If you do something nice for someone, that's valuable to them. If you build something that helps 1 person accomplish something, that's valuable. If you pickup some trash and put it in the waste-bin, you add a little value to your earth. It's all these little things that produce value for others and yourself, it can be incredibly huge, especially over a lifespan and maybe even beyond!
The amount of value one can produce in a lifetime can be incredible. You start from 0 and it can basically only go "up" over time, compared to taking your whole life's meaning and comparing it to some abstract concept of "meaningfulness".
It's not a zero-sum game either. The value you produce isn't in some competition with someone else. It's just you, what you do, and the value it produces for your fellow universe.
Ultimately it does mean life is without meaning, but that does not mean life is without value.
I think meaning is largely up to the individual. Most careers these days are pretty meaningless - a lot of what we do ends up as apps that do pointless, business BS things for people with what David Graeber called "BS jobs", and when we're developing those kinds of systems our jobs are BS jobs too. But when we're able to do something that makes life genuinely easier for people, that is meaningful. Heck, if we're able to make someone genuinely happy for a bit, that's meaningful. I spent a lot of my career working for massive corporations whose systems were about making rich people a lot richer, or ensuring insurance policies only rarely paid out, or making it hard for people in need to claim the benefits they were entitled to, or chasing people for tax money that just got spent on weapons of mass destruction. Negative meaning there - I guess I have my place in hell reserved already. Some apps though - I once interviewed for a place that did an app for students that hooked into Google maps & showed them where all their lectures were, what they needed to bring, which of their friends were going too, let them make library requests, all kinds of stuff. So useful, I wish I'd had something like that when I was a student. That kind of thing, if you can do that you enrich so many lives. That's meaningful.
You make a lot of good points! I agree with everything you said here...
If you build something that helps 1 person accomplish something, that's valuable
This here is I think at the core of my motivation to write this blog post - it felt cool when I built a silly Slack app for memes that was used by a bunch of people. That's what I want to do more of but with some more meaningful projects.
"A career won't make your life meaningful"
Absolutely true - love this!
Interesting article, Martin.
This is a topic close to my heart.
My humble opinion is to avoid bringing your whole self to work.
By this, I mean seeing your job as a means to an end. A means to support your lifestyle, hobbies, side-projects, family, etc.
We software engineers often forget that we are way more than our jobs, and that software engineering is just a job.
Yes, it is a job that often comes with good perks, but it's still a job at the end of the day.
What do you do outside of your job? Maybe having hobbies that are non-code related can help.
Thanks for the reply. Yes I definitely agree with that! I've been seeing my job as a means to an end for a while now. I even learned to produce music and released an album... But it's the fact that I'm still forced to do work on someone else's product that seems like a pain point for me. Plus, they ask me to work at specific times of day as well which I'm growing to dislike as well
Maybe you need a change of environment rather than career. As a developer you can work from anywhere in the world with a decent internet connection.
Have a read of the 4 Hour Work Week by Tim Ferris and see if anything resonates. It may also just be burnout and perhaps a career break is required. Dont fret about skills atrophy. The language and syntax changes but the problems and strategy to solutions are the same as they were 40 years ago
Just this week I picked up The 4 Hour Work Week on Audible!
A good friend of mine got tired of the grind and "working for the man". Especially after having been burned by a sour grapes situation. So he started his own company. At first, it was 4 people. Then 10. Then 20. Now his company has 500 employees.
Another friend of mine went into contract-for-bid consulting. Also meant starting his own company, even though it was a "one man show". He was much happier consulting rather than doing the grind. The biggest benefit was not being involved with any business's politics; he was just there to get a job done, and then move on to the next contract. (The hard part being keeping the contract pipeline full enough.) Alas, he was lured back into being an employee, but he was happier as a consultant.
+1 for the politics. As a contractor developer/BA/PM you get paid a premium for your expertise and opinion which means you tend to get listened to. Most of the time you can be on more money than the senior management team, and if they p*ss you off, you know you only have to put up with it a few more months.
Where do I find that type of contracting? xD In a previous role I was a 'contractor' but at the end of the day I was doing regular coding and the whole thing was basically waterfall...
I'm in the UK so I find most if my roles on Jobserve via agencies (coz I'm too lazy to do my own marketing)
I've also been doing this for 30 years so life experience has some effect.
Specialisation and nicheing down also helps. Front end is not a niche. Responsive design using React and tailwind for designing affro-carribean mobile hairdressing websites is a niche.
Great to hear about stories like that! In the second story, do you know what lured him back to being an employee?
I think it was a combination of factors. In particular, he had a contract at the place, and then the company wanted to keep him on as an employee and made him an offer. He was (I'm assuming) going to try it, and then if he didn't like it he'd just quit. But it turned out he didn't like it, but he had the golden handcuffs (i.e., incentives and investitures).
He has since retired. He's happy again. Now he's doing woodworking, for fun. Which is the best way to get into woodworking: 1) get into programming, 2) burn out, 3) start woodworking.
Probably the companies and the teams you've worked for are/were uninspiring, and to be honest, from my experience MOST companies and teams are uninspiring ... I've only came across a pitiful few which aren't, which are passionate or have energy or a vibe or whatever - if you can find one of those, then yeah ...
Maybe it's because until now you've worked for these 'corporate' grey suite type of companies, and a "younger" startup would be able to give you the environment and the enthusiasm that you missed.
But, by all means, do pursue those side projects!
P.S. putting it more simply - shouldn't you try to join a smaller startup, instead of these 'corporate' kind of companies ... I know that the "corporates" are where most of the jobs and money are (as they're still running a large part of the economy), but a smaller, younger startup probably has much more room for individual creativity and initiatives.
Yes I do agree that with startups there's more room for creativity. I've been in a startup-y type company and it was definitely fun. Winning a hackathon was cool. I had different types of problems in that company though 😂
There is a catch many people fall in. When you said you are stuck in this loop of "something new in technical perspective".
Actually there is way more than that in a job; There is "effort", physical and mental. Many people fall in a kind of hedonism at work because basically their work (or they are not obliged to) to do any big effort, and big effort is the kind of effort that would really push you to sleep at transports going back home.
I will give you an example: I immigrated to Europe to work, great financial and social sacrifices. then after 2 years of work I resigned because I felt I'm not 100% fit. After few months of "just fooling around and rolling cigarettes" I 'm 100% sure that was a drastic mistake, fortunately I found a new job few days now.
So yea, technology is about automation (mostly ? or maybe we are really dooming ourselves and the whole system?) and we in IT are subject to exactly what are you saying. I feel you completely (forgive my English by the way x))
Technology is something hard, and most of us (the people) don't know a damn about how technology works, it is not normal just to look for the new thing every single day, (because yea, I see it all over).
Computing is about automation, true, but not to that extent for jobs in IT, this is different. You are going to socialize, make awareness sessions about technologies, maybe volunteering to neighboring small social association (they don't even have a presence on Facebook, or don't even have an email...). The gap between the foundations of technology and the business using it is very wide (frightening). Everybody in IT could make a website, but very very few care about protocols, and the low level technicals of that... and at the other side, we are having people not interested in mathematics, and other people really are not benefiting technology at all (a burden for them (gonna get roasted for this :) but I hold my opinion)
If you wish, don't make it a 100 % surrogate activity. Self-fulfilment in work would be attained not only from "passion", but also "hardship".
I hope I'm not mumbling,
I completely share your approach to "I'm not aiming for something big as Amazon and Facebook" ! (They are not as big as we would think, it is us who are so dependant on them, AWS is gigantic catalogue of open source software's, and of course good business plan and big money poured in. Facebook and the "Meta" is a chat website and a mega blog, sadly most of us think Facebook is like the Internet !)
Thanks for sharing! I'm definitely cautious of the 'hedonism at work' problem. The Hedonistic treadmill can manifest in any part of life...
I have had very similar thoughts and experiences. I kept trying to find deeper interests within engineering or more purpose driven companies.
In recent years, I have found that I like the elegance and complex ideas which are found in computational complexity theory and I would enjoy taking off part of my work week to take courses that do exercises within that area. I also agree with the enjoyment of creatively building something completely new combination of tech, under few restrictions. I think it is important for me to accept that any job is meant to become routine by it's nature. I personally don't want to go down the path of entrepreneurship because it feels much more about sales, management, and narrow focus, than it does about creativity. I am thinking that creative fulfillment can be reached outside of work through producing art and also building up a wide variety of hobbies.
I've quit my day job to work on my own indie personal projects, do that for a few weeks and then go through an overwhelming sense of burnout and wondering if I made a good decision in quitting.
For myself, I've found the perfect balance is to still find the time to work on indie projects while maintaining gainful employment.
A lot of times, while being employed, I will work on projects that I don't necessarily want to do, however it all has some level of influence on what I do in my spare time.