Taking Time Off From Software Engineering
02 November 2015
A lot of us in the software field live, breathe, and even dream software. We love what we do so we surround ourselves with it; we join massive groups of software engineers where we constantly ask for critiques of our websites and resumes and show off our new thing we’re building from something new we’re learning that we’re sure is going to change the world while we flaunt our startup ideas because we want to create the next big thing but often we put things on hold “to come back to” (except we never get back to them) to play with the new new thing so we don’t fall behind while the live stream of someone programming or the most recent Hackathon sits on our second screen so we can learn something else new or to look at the latest high stakes in competitive coding then we get home from work or school and immediately dive into our personal software scene so we don’t miss a beat while we’re awake and later we get woken up at 3AM by our phone because someone we once talked to online a year ago started a company and wants to hire us and in the morning we wake up to swim through emails of bug reports and feature requests on a project we built that someone noticed and now a bunch of people use.
That paragraph was one long sentence with little punctuation so you’re probably out of breath. Take a breath.
One more for good measure.
That’s what it sometimes feels like to be involved in software. Don’t get me wrong, we love every second of it. Software engineering isn’t an easy discipline as it’s a mashup of tech and creativity and that’s what makes it interesting. Unfortunately, it’s easy to get so invested that we start to take it for granted and to forget that there’s a life away from the screen. If we’re not careful, we can start to burn out as we software becomes just something we do, rather than something we enjoy doing.
Admittedly, software is difficult to take a break from. As software engineers, we create things that are used everywhere; we go about our day and immediately notice when software could be written better. We notice when it takes the clerk ten taps to put in our two item order and we notice the weird hoops our web banking forces us through to log in. It sometimes takes a conscious effort to say “No. I don’t need to work on this problem right now.”
If we don’t slow down and take some time to look at the bigger world, we start to burn out. We forget we still need to experience the bigger world that we’re trying to improve if we want to continue to improve it. Even worse, we start taking our engineering world for granted. When that happens, we start to feel jaded and we forget our enthusiasm for what we do. We need to take time to breathe so we can remind ourselves why we enjoy software, notice the new things we can fix, and rest our fingers.