The Necessity of Deep Work as a Software Engineer

Sam Bordo
5 min readMar 3, 2022
Photo by Christin Hume on Unsplash

Software is Tough

Plunging into the world of software right after graduation, I was instantly inundated with new technologies, concepts, theories, languages, etc to learn and begin using. I was suddenly required to understand and use Ember js, Rust, JavaScript, Python, APIs, AWS serverless architecture, Express, git, Node … and on and on. I will admit, I was sooo overwhelmed.

What was my response to this? Quite simple actually. I put my head down, and put in the work…in between watching Snapchat stories, checking on the latest sports scores, staring into the fridge simply because I was bored, not even hungry. Oh, also responding to every message from my friends, discussing how difficult work-life balance is with people online, and making sure to stay up to date on the latest of the crypto market. So yeah, basically I just put my head down and worked harder. I’m a real go getter like that :)

It was about a month into my new job, with my software skills remaining severely lacking, that I realized something needed to change. But what was that something? According to my 23 year old wisdom, that change was to add some new hobbies into my life. Yep, I got into cooking. And by “I got into cooking”, I mean that my lunch break became longer in order to work on my new craft. I was very surprised when this resulted in little improvement in my understanding of AWS serverless architecture.

It was at this moment, when I decided that I may not be cut out for software engineering. It’s too hard to learn the whole stack, it’s too hard to understand what’s going on, it’s too hard to focus on…wait, did I say focus? Maybe that was my issue all along. Software engineering was not too difficult for me, it was too difficult for distracted and entertainment-obsessed me. I was like a hamster on its wheel wondering why I wasn’t getting anywhere. I needed to get off.

Getting Off the Wheel

The wheel of distraction is an addictive one. Our brains, let’s call mine Phil, grow accustomed to whatever we feed them. I had been feeding Phil snapchat stories, instagram posts, sports highlights, instant messaging, crypto updates every time I had down time. So when I was telling Phil to focus on understanding the vast new codebase I was inheriting, Phil freaked out.

How could I focus on code for 8 hours when Phil hardly had the patience to watch 5 second commercials before my next youtube video loads. I was in trouble. But after doing some research, I found good news. Phil could change!! I’m so proud of him :)

Changing Phil

It was at this point that I came across the book “Deep Work” by Cal Newport. He said some very profound things, and I would encourage all of you to read it. The overall idea is that the majority of people spend their lives in shallow work due to the crazy interconnectedness and distractions of this modern world. It is only when we make a concerted effort to step away from this internet-connected mumbo jumbo (I’m paraphrasing of course) that we are able to learn difficult things and become experts in our field. If we do not take this time and enter into deep, focused work, we will never reach our full potential and will always struggle learning new, especially difficult, skills.

So, without further ado, here are some suggestions from the book that I implemented and have found incredibly helpful:

  1. Set a specific period of time to put the phone and other distractions away.

This will be very difficult at first. Probably even at second. I began with 1 hour increments where I would focus on my work without any distractions. Many times I would get an urge to quit focusing and let Phil watch a sports highlight. But I told Phil no. And after time, it gets easier. Slowly increase the time period to 2 or 3 hours. Phil can change, he just needs to be encouraged.

2. After mastering these smaller periods of deep work, begin scheduling specific blocks where internet access is allowed, instead of where it is not.

Phil had grown accustomed to distraction and entertainment being the norm, not the exception. It was only once I scheduled specific times throughout my day for distraction that it became the exception. Those offline blocks do not need to be hours and hours long. I started with giving myself a 10 minute internet block every hour when I first began. Seems easy enough, but even that was hard at first.

If your job is one where you get emails and messages that need answered a lot, these internet blocks can be used to deal with responding to those distractions as well. That way you can focus wholly on your actual work when in the offline block. Also, this “offline” block can include internet if your work task requires it, just keep it strictly work related.

3. Keep a weekly tracker of deep work hours

Keep track of the hours you spend in deep work each day. This will show your improvement over time and motivate you to keep trying.

In conclusion

I had always wondered how my boss could run circles around me … software circles that is. Then, I learned he had a flip phone. He gets it! He understands that it takes focus, it takes deep work, to become a master in your field. No one ever climbed the ranks in software by checking their social media every 10 minutes. I aspire to be like him someday, but I realize that deep work was essential to his success.

So now it is time for you to get off the hamster wheel of distractions and entertainment and start moving forward. Your brains are messed up, just like Phil was (and is to a lesser extent), but it’s never too late. Deep work will be hard, but it will no doubt be worth every effort.

I will continue to post articles about the challenges of focus in an interconnected world, software engineering, and other technologies and programming languages that might interest you. So if you enjoyed reading this article, subscribe for more.

--

--

Sam Bordo

I am a Jr. Software Engineer who enjoys learning new technologies and writing tutorials to simplify the learning process