Comfortable with the struggle
Sometimes I get asked by newcomers how one can become a developer like me - specifically, with a job and career like mine.
I find this sort of question impossible to answer. My personal situation is the result of the time I started, local and international economic forces, politics, and happenstance. I can’t tell you how to recreate it from scratch in 2024!
It does create a little thought exercise in my head though: if you were to remove all external variables, what traits in an individual developer are most likely to lead them to their version of success?
There was a time when everyone was going on about how you had to have “passion” for web development if you wanted to be a top performer. I don’t think that’s right. I don’t think you need to be particularly passionate about the field you’re in or the job you have to do well. There are heaps of great developers who don’t make their job their identity or source of fulfilment.
If I had to pick one trait, it would be the ability to be comfortable with “the struggle”. That part of the day/hour/minute where the code isn’t doing what you expected, things aren’t looking like they should, or where things are going wrong and you don’t know why. The times where you’ve planned out a system, realised you’ve screwed it up and missed something crucial, again. The times where you swear at the screen, let out a massive sigh or hit rest your head on the desk in exasperation.
I’ve known developers who’ve put up with the struggle with the expectation that one day it will go away: one day they’ll be an expert and never have to struggle again. This day never arrives, and so they bail out of the field.
Unfortunately, I don’t think the struggle ever goes away. I’ve been doing this professionally for 14 years now and I still have to deal with the struggle almost every work day.
If you can be comfortable with the struggle and build up your tolerance for it. If you’re able to sit in that moment and be okay without drama or a total crisis of confidence, I’m fairly sure you’re going to do just great.
And if you’re someone (like me) who happens to go one step further and enjoy the struggle, you’ve found the perfect career1.
Footnotes
-
and may God help you, because I can’t. ↩
Comments
Reilly Spitzfaden
July 8, 2024 at 4:54 AM
Thanks for this post! I'm self taught and have only recently gotten into programming, and this is a good reminder.
Also I used to struggle to put down a project and walk away until the problem I was having was fixed. It's been very helpful to my sanity while programming to get comfortable with putting things down and dealing with a problem later.
Yordi
July 8, 2024 at 6:08 AM
This sums up my thoughts on development exactly. Programming your path to success is all about encountering errors along the way and how you deal with them. It's a bit like the high jump in athletics: sometimes you have to fail a height first to understand how to overcome it.
Thanks for writing this!
Patrick CL
July 15, 2024 at 4:04 PM
Hi Rach,
First off, I really like your blog - the color palette, design, and content are super inspiring.
Second, thanks for posting this. I've been finding software development harder and harder to stay motivated about, and I think you've articulated exactly why. I'm not sure what I'm going to do about it yet, but you've given me some clarity, and I really appreciate it.
Thanks and hope you're having a good week!
Chris Padilla
July 26, 2024 at 9:32 PM
This feels so spot on!
I switched from music teaching to software. Plenty of folks are surprised, thinking that it must have been a huge transition. And while there were certainly new skills to pick up, it has felt very familiar. Being comfortable with the struggle was the connecting link.
Great note!
Stuart
August 5, 2024 at 5:34 PM
I think you've hit the nail on the head there - you have to be aware of the fact that you will struggle many times, and you have to be happy (or at worst, tolerant) of that. I've been at this a bit longer than 14 years now, and it's still the same for me 😀
Best of luck in the future! (And great post!)
Dave Bernhard
August 6, 2024 at 5:11 PM
This is a great way to articulate it. Thank you. I usually talk about needing "sheer bloody-mindedness", but it's not quite right. I think the nature of the struggle can change with experience, and you can enjoy it better. As your mental models improve and you deepen your knowledge down the stack, it starts to feel less like throwing darts blindfolded, and more like solving a puzzle. Or something.
Leave a Comment
💯 Thanks for submitting your comment! It will appear here after it has been approved.