The 2nd Most Important Skill You Need as a Software Developer
Could there be a worse time to learn to code?
I was nearly 30, had been sober for less than 2 months and had a 1 year old and and 8 year old at home.
I worked an office job which I just started and drove for Lyft and Uber on the side.
There was no time. So I made time.
In the process of learning how code, I learned the 2nd most important skill as a software developer (right after coding): the art of time management.
Unfortunately, I’ve seen too many developers make these mistakes:
- Freestyling their day
- Being intense but not consistent
- Not working in their optimal hours
As software developers we are judged nearly as much on the quality of our code as the time it takes to get it delivered.
If your beautiful, bug-free code is consistently shipped weeks after the due date, you will likely not have a job.
Here’s how I’ve been able to find time to code, run my side business and do over 700 calls with developers around the world while having a family, working full time and maintaining a daily exercise routine.
Fail to plan, plan to fail.
Ever sit at your computer and think, “Hmmm, what will I do today?”
“I bought that one Udemy course, but then there’s LeetCode and my side project I need to finish” 🤔
Analysis paralysis sets in. You open 23 tabs and go between multiple tasks that never actually get done.
There’s a better way.
The night before or in the morning, write down the most important task you should be completing for the day. Spend the very first part of your day tackling that 1 thing before the day gets in the way.
For me, that means as soon as I get up, I go to my computer and work on the most difficult thing for my day.
No meditation.
No cold plunge.
Just targeted work.
Less is more… but you need to do less more… 🤔
I’ve taught more people how to code at this point than I can count.
I also run a successful and very small mentorship program for people who want to switch careers into tech. Apply here.
Here’s how I know if they’re gonna fail or succeed:
Me: “So were you able to get through that assignment?”
Them: “Nah, not really but this Saturday I have the day off so I’m gonna study for 12 hours”
Me: 😬
I can’t think of 1 time this has worked out for a student I’ve mentored.
The problem with zero studying during the week and marathon sessions on your day off is that you enter into hamster-wheel style learning mode.
You wonder why you can’t retain information despite cramming and it’s because you aren’t building up that muscle memory.
If you wanted to get in shape would you only run 5 miles on Saturday and eat like a fool the other 6 days?
Personally, I spent about 30–60 mins learning to code every day and more time on the weekends when I had time. The key to my progress was consistency. I NEVER spent an entire day learning at that beginning stage.
Everyone is a morning person
Developers are naturally late creatures.
I’ve never been at a company where developer meetings start at the beginning of the day.
That being said, the best developers I’ve met tend to make optimal use of the morning. For the majority of us, this is the time of the day where we are least likely to be interrupted.
I’m writing this article in the morning while my kids sleep and before they wake up and yell at me to make pancakes or whatever.
Maybe you truly are not a morning person or have some unique schedule which prevents you from working in the early part of the day.
That’s OK.
Everyone has a time of the day where they find themselves in the “zone”. I’ll be frank — for 99% of us, that is the morning despite what you’ve been told or the fact you just don’t like waking up.
BUT — if you must, then find another time of day that you can optimize for those difficult tasks like side projects or learning a new language and make it consistent.
But… I still have no time
Something might have to give.
- Open up your phone.
- Look at your screen time stats.
- How many hours are you spending on YouTube, IG (follow me 😉) or Netflix?
You may have a little more time than you think.
- Make your creative time non-negotiable and schedule it on your calendar.
- Write down your plans the night before on a scrap of paper next to where you work or sleep.
- Have your laptop open on the kitchen table with the thing you’re supposed to work on.
- Skip the cold plunge before opening your laptop.
Little tweaks can have a large impact.
At Parsity, we don’t simply teach you how to program. We specialize in working with busy adults who want to switch careers into tech. Apply here.