Why Software Development?

Post #01

As many of you consider transitioning to, or starting a career in tech, you might be thinking as I did, why? Why in the hell would anyone want to sit behind a computer screen for 8, 9, maybe 10 or more hours every day at work for the rest of their lives tapping away at their keyboard, watching the clock tick waiting for the bell signaling your temporary prison release? I asked myself that many times before deciding to dive into the world of software development and, frankly, I had no good answer.

Before getting into why I decided to get into tech I’m going to give you a few reasons as to why doing something else with my life even crossed my mind. I had been to college twice. Once never completing the 2-year program and the second time completing 1-year trade course. Throughout my earlier life at about 15 I worked a bunch of odd jobs while completing grade school and during summers. Shingling roofs, working at the gas station, different construction and so forth. None of these jobs I wanted to do for the rest of my life, but I was content because I knew that after I lined my pockets and was able to get a higher education, I could really do something that I loved. Fast-forward 3 years, I was attending my first day of survey technician school. It didn’t take long for me to realize that I wasted a bunch of money and hated what I was doing and quickly decided to cut my losses and drop out. Again, I went back to working the same “drone on”, mindless, boring, low paying dead end jobs that of course, I couldn’t see my self or even justify doing for the rest of my life.

Fast-forward another year or two, a move to a different province and I was attending yet another first day of trade school and to my delight I loved what I was learning. Less than a year later I finished my course and decided that it was time to make yet another move in attempt to go somewhere that offered more job opportunities. After 6 months of continuous emails, online applications, getting more relevant certifications, driving around shaking hands with different foreman and bosses I left without a job in my trade and a weight of discouragement. I decided at this point, after money started to get a little bit low, it was time to start applying for anything and everything that could keep the bank account a little healthier.

A month or two after making this decision I soon got a call for a job I had applied for and, with great effort, got it. Propane delivery driver CDL required. Thankfully I thought, something I did in school will have gotten me the highest paying job I had ever gotten even though it wasn’t in the trade I had excelled so well in during my studies. But for now, I’d take it and thought that I could just keep looking for a job in my trade in the meantime. I’m sure we’ve all said that to ourselves at one time or another. Forced into taking a job for whatever reason and thinking “that’s alright I’ll find something later on”. Later on rarely comes, and in my case it didn’t. A little over two years later I realized that again, I was in a dead-end job with no real impactful increase in pay. I said the pay was the best I had ever gotten but the bar wasn’t set high. Going from minimum wage of 10.25/h though, I had thought I’d struck gold with the jump to 20. Again, as we all are many times in life, I was wrong. Life’s realizations had set in. I wasn’t going to be able to this job in 20 or 30 years time. It was far too physically demanding. I couldn’t survive on 40 – 45k a year. Sure, being 20 it was good. But, if I ever wanted to move out of my parents, be able to afford the odd vacation, have a hobby or two, pretty much anything besides living to work, instead of working and being able to enjoy life, something had to change. It was time for me to move on.

We’ve all gone through the thought process of what we wanted to do for a living at one or many points in our lives. Some of us get it right on the first try and others sadly, might never be able to find that thing that they love doing. This was the third time I was going to invest in myself when it came to college and I decided before I even looked for anything, this was the last time. I didn’t want to waste any more time or money trying to find a career that I loved doing. Sometimes, whether from parental, financial, peer, spousal or whatever other pressures we might have, we don’t take the time to really think about it. I know I myself have made this decision based on nothing more than looking at potential pay cheques without consideration for anything else. Not this time. We’ve all heard it hundreds of times. “Do something you love, and it won’t be work”. Now that might not necessarily be totally true, but one thing is for certain the message isn’t to be taken lightly. Do something you love.

I know from personal experience with the job that I took driving that even though the pay might be the best you’ve ever gotten doesn’t make the job good or for you and is not the only factor in your happiness. I don’t know how many times I got to work miserable, dreading the day ahead, and dreading the following day when I finally got home after work. I can’t count the number of times I said to myself this is it I QUIT, I’m out, f*** this. My attitude and feelings toward work showed in the rest of my life and wasn’t good for me or anyone around me. Finally when I left the job I was brought to tears of frustration partly because I was pissed for waiting so long, the circumstances under which I quit, and my bosses handling of the situation (that’s a whole story in itself so I won’t elaborate here). Eventually though, I did go back to what seemed to be, and was, a whole new environment and now am more than happy going to work every day, but the point remains.

Granted, not all of us know exactly what we want to do with our lives or, for that matter, what we want in a career. Sure, money would be nice but what else? I sure didn’t know and sure I had experience in other jobs, but they were all dead end, low paying, repetitive, drone on, not for me kind of jobs that didn’t have anything that really said, “I love doing this”. I suppose if they weren’t, I wouldn’t be looking for change. My point is you might not know what you want in a career, but you might know from past experiences like I did, what you didn’t like. That was the starting point for me and might give you some insight on what you could see yourself liking in a career even though you’ve never exactly experienced these things in any previous jobs.

I think it’s safe for all of us to check off the “I want money” box, at least enough to live a happy enough life but what else? I personally hated showing up to work knowing exactly what I’m going to do on this fine Tuesday. The answer to that being that exact same thing I did on Tuesday for the last 3 years and for every Tuesday for the next 30 years. I didn’t like the “shut your brain off” and do that same thing the same way day-in day-out kind of gig. I hated not having to think. I also didn’t like not feeling like I accomplished anything. I got up and went to work and I worked hard, but at the end of the day what did I really accomplish? Nothing aside from filling up a few propane cylinders so someone could run their forklifts or cook their steak. I wanted a sense of accomplishment. Something more substantial. I wanted to be able to proudly say “yeah I did that” or “see that team of people that did that really awesome thing? I was there right along side them”. That’s something I never had in a job but knew I needed in a career. Another one of the big things for me was learning. One thing that I could say about all the jobs that I’ve ever done was the process of learning that new thing. How something worked, what had to be done, and how people did it. However, learning how to do that same task that you’d do until you quit, retired, or died, doesn’t last long and that love for learning quickly disappears along with the need to lean, never to return.

My advice to anyone looking to start or transition into any career tech or not, would be to think about these things. Think about what you like in a job. If you’ve never had those “wow I love that” moments or thought that this was great or had anything make you feel good about what you were doing, you could take the same approach I did. If you didn’t find something you love about a previous job, I’d bet that there’s something about it you didn’t like. Something that makes you think “if I can’t have this, I can’t do this forever”. I had a number of those things that I didn’t like so much. Things that I knew if I didn’t have in a job it would never be a life-long career.

Why did i choose tech?

So, you know the big things that I didn’t like in the jobs I’ve done in the past, the one thing I found that I loved in every one of those jobs, and hopefully you know those same things for yourself based on your own experiences. But why did software appeal to me? Why might it appeal to you?  Keep in mind when you’re reading this next bit that I’m only a beginner and this is partially fact and partially opinion and probably an optimistic take on what software development is.

Software development comes hand in hand with everything technology. You have the opportunity, if you work hard enough, to work on whatever you can think of. Robotics, AI, business applications that make millions of dollars a year, Mobile apps, websites, self driving cars, the list goes on. It’s not a far stretch to say that if it plugs in or turns on that someone out there programmed something into it. Hell, even some toasters have software in them. When I heard that first I thought it was a joke… it’s not. The point is, if you like technology in the broadest sense you have an opportunity to work with that stuff you love every day.

I personally like the thought of having a problem to solve. Every day I show up to work I know the routine. Nothing ever changes, nothing ever challenges me. What I’d rather is to show up to work and have a challenge. I want to need to use my brain, to think about something rather than shut my brain off and go. The challenges in software development are endless. Things break, things need to be updated, new things need to be made that do different things. How do you make that robot leg work? How exactly does “Ok Google” know you’re talking to her? How do you meet your businesses needs to build that app that will make you thousands of dollars? The challenges are limitless, and, I would go so far to say that they take a lot of brain power, time, and a little blood, sweat and tears to solve them. Taking a user input and displaying it on the screen might seem trivial to someone more experienced than I was when first starting out but, the feeling I got when I finally solved that input problem and every harder problem thereafter felt amazing and no less significant.

The idea of creating something great, something more appreciated than a full bbq tank was something I needed and found the potential for that in software development. Imagine being the person who revolutionized the way we drive cars by being on the team that first took on the challenge of creating self driving cars. Or, building a mobile app that allows people to track their blood sugar levels to help keep them healthy. The opportunity to do good, to make the world a little bit of a better place, or simply just the ability to take pride in the work you’ve done is everywhere. I’m not saying there’s a good chance you’re going to revolutionize the world or be on the same list as the Wright brothers, or Thomas Edison but I’m sure you get my point.

For any of you out there that love tech, building things and tinkering, software development will be something that might come as a pleasant surprise. Granted, building a project from behind a keyboard is going to be a little bit different than re-building a car engine, the deck, or what have you. Nevertheless, the concept is the same. You could almost think of building a software project like watch making. Everything is broken down into parts that seamlessly interact and work together to create that new fancy feature, or that new app much like the cogs on a watch. You start with your minuscule couple lines of code that give some small functionality to create a small part, then build more to make a bigger part, make a few bigger parts, tinker around fixing things and moving them around to eventually code yourself to your end goal. Of course, that was an almost shameful oversimplification of the process and much of the time you might find yourself maintaining old code rather than starting a project from scratch, but the concept remains. There’s much more to the whole process from starting with an idea, in the case of a new project, to releasing it to the masses. There’s changes mid way through the process which could result in bug fixes, optimizations to make things run smoother, there’s front end and back end, there’s databases, security, the list goes on. Eventually though, all the parts you help tinker into existence create something I think you could be proud of.  

With building a project there also comes an element of artistry if you happen to be a design type, which could also come as a pleasant surprise. Software has two main parts to it. Front end and back end. The back end in software is what you and I don’t see when we use our every-day devices. Back end is what makes the things you do, the buttons you press work. When you buy your latest item from Amazon you don’t see what actually goes on behind the scene when you send that payment. Where does it go? How does it know that I actually paid for it? How do they know you have enough balance to even pay for it? All the magic behind the scene is back end code. Front end however, is where the art happens (for the most part). Font end, simply put, is everything you and I see when we use software. It’s how the website looks, how the Pay Pal button looks. This is where you might just get to put your own little touch on what it is that everyone using your app is going to see.  The website you’re looking at now is all brought to you by front end code using, most widely known HTML and CSS.

Your options with software are truly limitless. Everything from which area you want to work in be it mobile apps, web apps, to what part of the code you want to work in, Front end, back end, database, security or all of the above. All these things I mentioned is really what made software development appeal to me. It offers all the things that I loved in my hobbies and negated most everything I disliked in my past work experience and hopefully you’ll be able to say much the same.

One huge thing I left out that the world of software development brings with it is this. Technology as I’m sure you know, changes as a rapid pace. No less can be said about the software development industry. Granted some things move a little bit slower than others but even still, you’ll always be on your feet. You’ll always be learning. This is by far the most important thing software development brings to anyone such as me, being someone that loves to learn. I love constantly being challenged by problems and learning new ways of solving those problems. Because tech changes so quickly there’s seemingly always a new, different and better way of solving a problem. Something that keeps coming up at one time or another when reading a blog series or listening to podcasts is that you will NEVER stop learning. You need the ability to learn and learn quickly in this industry. You need to feel comfortable feeling uncomfortable in what you’re doing. You might have an important project you need to do and must learn a new technology to do it. You might have a very limited time to do it in and you must be comfortable being unsure in using a skill that you might not have mastered, or are not as confident in as you’d like to be. That might scare some people, but to me I find it ever more challenging.

I find my abilities to learn, think, problem solve, and create being challenged thrilling. I love being faced with a problem and working my way thought it. In software development there are no shortage of challenges especially when first starting. Everything from picking which language to learn first, to how to make that first program run to building your first application. As you follow along in with me as I continue my journey to software development I’ll talk about those decisions I had to make, the challenges I faced and how I went about doing all that in hopes for imparting some information to you about what you might come across in your own journey. I think you would be hard pressed to find something, maybe not enough to walk out of your job tomorrow and start learning to code, but something that you’ll like when it comes to software development.

If you have any thoughts about this article feel free to let me know! You can contact me via the contact page, or directly at Dorian.JourneyToSoftwareDevelopment.com. I’d love to hear your feedback and read your stories about what made you consider software development as a career choice or maybe. what turned you away from it.

Remember. Learn, Code, Create!

-Dorian

One thought on “Why Software Development?

Leave a comment