I’ve been thinking back on my experience so far as a software engineer, and it dawned on me recently that I now have two years of full-time software engineering experience. That seemed like something that was impossible only a few years ago. It also dawned on me that I haven’t paused much along the way to reflect on how the last few years have gone. At least, I haven’t done so on paper. So, here’s a collection of some thoughts and reflections about my first few years as a software engineer.
The Beginning
I remember when I made the decision to actually make this career switch. At the time, it seemed like a genuinely daunting task. I always believed that it was something I was capable of, but it wasn’t that I thought would actually materialize into reality. It also wasn’t something that had any guarantees of success. So, I think I jumped into it feeling as though there was a very strong possibility, and even maybe some likelihood, that I would fail. Especially because I came from a community where I didn’t know any other software engineers or people in the tech industry.
Before I made the switch, I had no idea what to expect. The idea of being a software engineer was theoretical to me at best. Everyone I knew did things in the service industry or in construction or in accounting, like my parents. Software engineering felt mythical to me; it felt like the stuff straight out of all of the Silicon Valley books I had read. But I decided that it was something I needed to do.
I made the decision around the summer of 2020. It was the middle of the pandemic. I was sitting at home for the third straight month because I didn’t have any work. Prior to the shutdown, I was working for a sailing catamaran company that did snorkel and sailing tours. At the time, that job felt like a dream job to me. I was twenty-three years old and was having fun everyday. I got to work in the ocean five days a week and not be in an office. I got to work around some of the most fun-loving people who I’ve ever gotten to be around. My co-workers were all salty sailors or ocean-loving surfers or divers or people who were well-traveled and full of stories. That job was really my first ever full-time gig, and I had seriously considered making a career out of it.
But, that summer, I was out of work, out of money, and couldn’t get any other type of job. The tourism industry was completely shut down because of the pandemic. It was the first time it ever dawned on me that I had no other usable skills outside of my limited boating knowledge. That reality hit me like a ton of bricks.
I loved my sailing job for the lifestyle it provided, but the job’s downsides were painfully clear when everything shut down. When there weren’t any tourists, we were out of luck.
And so for the next eight months, I couldn’t find work. I also didn’t have much savings to fall back on, so I was reliant on unemployment checks and the hope that the pandemic would end and the economy would start up again.
That experience was terrifying. I realized pretty quickly that the feeling of being dependent on unemployment is absolutely discouraging. Not having savings and not making more than my hourly wage of $13/hour was not sustainable, especially because I lived on Maui where the cost of living was ridiculously high. On top of that, I didn’t have a degree or any other job experience. I felt like I had no options. Every single day over the course of those eight months, there was this nauseous pit inside of my stomach that would well up that moment I realized that I didn’t have a job to go off to in the morning.
I wish that was the turning point where things got better, but instead, I let that pit in my stomach consume me for the next three years. Even when things started to open up again, fear remained my driving motivation. The summer of that year, I re-entered college; this time as a freshman computer science student at Oregon State University. I enrolled in their online CS program so that I could work while taking classes. When things finally did open up again, I started working on the boats again, while doing classwork at night. As I fell into that routine, I started applying for nearly any and every internship program that I could find. I was frantic about applying for internships; I started applying for probably several dozen a day. I did that every day for about two straight years, and every single day, I felt like I wasn’t doing enough. Like I wasn’t applying to as many as I needed to.
I felt like there was always something else I needed to be doing. I bought the Cracking the Coding Interview book. I did hours upon hours of Leetcode. I wrote and re-wrote my resume. I messaged people on LinkedIn. I did everything I could think of. I even attended an online coding bootcamp, while taking a full load of classes, while doing an unpaid internship, and while working almost full-time. And still there were nights where I would fall asleep thinking that I wasn’t doing enough.
For nearly three straight years, I felt like I wasn’t smart enough. Like I wouldn’t make it. My sleep suffered. I stopped doing the hobbies that made life fun. I spent less time with friends and family. I had a bad attitude at every family gathering over the holidays. I felt like I was the kid with a storm cloud fixed over his head. That pit in my stomach was still there.
My First Internship
That process went on for so much longer than I anticipated. I thought I would just power through that phase of the career journey for a couple months; then, the right opportunity would magically appear and life would be good again. Instead, it took me from the summer of 2020 until the summer of 2022 to finally get my first real paid internship.
But, when I did eventually get that summer internship, instead of finally relaxing a bit and enjoying the experience, I doubled down again. I decided to take a full load of classes during the summer while trying to work 40 hours a week as an intern. Not only that, but I decided to move to Seattle with my girlfriend where we thought we’d be in a better position to land jobs after the summer.
So, for the entire summer, I was in a new place where I didn’t know anyone, and I was drowning in work and school. I would wake up and start working around 8am. Then, I’d stop work around 5pm and start doing schoolwork until about 9 or 10pm. I was doing all of this from our one-bedroom apartment, where my desk was set up in our bedroom. There were some days where I literally wouldn’t leave the house.
Needless to say, I became even more miserable than I already was. I didn’t have any time to make new Seattle friends. I didn’t have any time to explore the city or be outside, which used to be the only thing that kept me sane back home. Being from Maui, I was accustomed to being in the ocean about 5–6 days out of the week. Now, in Seattle, I didn’t even leave the house most days. I felt like I was trapped in a prison of my own making.
There were points during that summer where I was about as depressed as I’ve ever been in my life. That fear that was consuming me was still just as present as ever. I had no guarantees of landing a return offer at the company I was interning for, and I still hadn’t finished my degree, so I didn’t think I could land a job anywhere else at that point. I woke up every day terrified and hated just about every second of both work and school. I felt caught in a downward spiral. I felt like I couldn’t stop or pivot or change my routines because I thought that if I quit then, I would have nothing to show for the three years of being miserable.
My relationship was suffering. My mental health was a non-priority. I felt exhausted every day, and I felt so much guilt about it because it wasn’t like anyone was forcing me into that position. I didn’t have kids to support; there wasn’t anyone pressuring me to be an engineer besides myself, and I could have stopped all of that pain any time I wanted to. But, I just couldn’t stop.
My First Full-time Job
As bad as that summer was, things only got worse in the fall. As it happened, I had chosen to move to Seattle at probably the worst possible time. That fall, all of the major tech companies in the city started laying people off and issuing hiring freezes right when my internship ended. I had been banking on the fact that I would get a return offer. That didn’t happen.
So, from August until the end of September, I went back into the cycle of frantic job applications. I applied to well over three hundred job postings. I again was spending hours upon hours studying for interviews. I spent even less time outdoors than I did that summer. Again, I felt like I wasn’t doing enough. The pit in my stomach knotted up once again.
Eventually, however, I did land a full-time job. I got lucky enough to get an offer for a Junior Software Engineering role. The company that offered me the role were even nice enough to offer me two options about the job. They said I could either accept an intern role where I could set my hours anywhere between 20–30 hours and continue working on school, or I could do the full-time 40 hour role where I would still be expected to finish school within a year of accepting the position. Both positions offered the same exact hourly pay.
Looking back, the decision between the offers was a no-brainer. Take the flexible role, finish school, and get back the control over my time and my life. Obvious choice, right?
Nope, here again, I let fear make the decision. I thought that if I didn’t take the full-time role now that eventually I wouldn’t get a return offer like at the last company. I also worried that I couldn’t afford to work less hours and still pay for school. I was even worried that my resume wouldn’t be as strong if I didn’t have full-time experience to show for. I was terrified of these what-ifs, so I took the full-time role.
So, that entire fall, I became even more busy than I was during the summer. Now, I was working from 8am to 5pm, but this time, in a full-time engineering role where I was expected to do more then as an intern. Then, from 5pm to 10pm I was taking a full load of classes again. I was actually taking one more class than I had taken in the summer, which brought my class total to four. I was working 40 hours a week and taking 4 college courses. Totally sustainable, right?
Well, after about three months, I completely crashed and burned. I decided I needed to drop everything in Seattle and move somewhere else. Anywhere else. I had to get out. I had to change something. If I kept going in the direction I was headed, things would only get darker.
So, eventually, I got a different engineering job and moved down to Phoenix. I also decided to take a break from school. I made all of these decisions in about three weeks. Literally, from the time I made that decision to my first day of my new job in Phoenix, was less than a month. I made that decision so quickly that I didn’t stop to appreciate the fact that I had, indeed, just gotten a second full-time job offer as a software engineer.
That was something that I thought was impossible. I didn’t appreciate that fact at all. I was so consumed by the fear of staying in Seattle, so I left in a puff of dust and didn’t slow down enough to reflect on anything. I just wanted out.
Life Up Until Now
When I got to Phoenix, there was a whole different whirlwind of events that happened to me. The engineering team I was on was a mess, adjusting to life in yet another new city was again a bumpy process, things in my personal life were again rocky at times. A few other crazy things happened that I’ll save for another post. But, eventually — slowly but surely — I settled into that engineering job and my new city. I worked at that job for a little under a year and then eventually took a promotion at a new company as a software engineer II. I’m at that job currently and have finally found a role that I enjoy.
And that’s it. That’s the end of the story for now. Is that a bit anti-climactic? Yeah, absolutely. But that’s one of the points of this whole post. At some point in the last year, I realized that my story of career change wasn’t some hero’s journey. There was no grand ending or insightful moment of epiphany. There was no break-through-the-finish-line moment. There also wasn’t some distinct moment at which the fear or the pit in my stomach suddenly turned to long-awaited happiness.
Very unlike most story-book endings, there wasn’t some moment where I looked up and suddenly realized that all of the hard work and sacrifice was worth it. Actually, looking back, I kind of regret the attitude I had through the process of launching into a new career. Rather than slave away as much as I did, a big part of me kinda wishes I spent more time dicking around with my friends. I wish I spent more time enjoying the last four years rather than trudging through life in a self-imposed fog of misery.
But, am I grateful for the life lessons? Yes, I am.
Reflections
Now, that I’ve finally settled into a role and gotten back some balance in life, I’ve been reflecting on some of those lessons. Here are the main ones:
- Don’t let fear drive you. I was consumed by fear for about three or four straight years. That fear metastasized into stress, anxiety, and a constant sense of failure. Looking back, none of that stress or fear was necessary to get me to where I am today. I didn’t have to suffer through that process. I didn’t have to let fear being the reason I kept going. There are a lot of other motivations. Nowadays, I’m finding that enjoyment and simple curiosity are better motivators.
- Balance matters. I was overworking myself and exhausted physically and emotionally. And I did that to myself voluntarily. If I could do it over again, I would’ve slowed down to about half the speed I was working at. I would’ve rather had the process taken eight years instead of four if I could’ve spent more time surfing, diving, hiking, and enjoying life along the way. I would’ve realized that I can’t get those years back and would’ve slowed down to appreciate them instead of trying to suffer through. Trading balance for getting more shit done doesn’t mean you’ll accomplish more; it just means that you’ll be more miserable along the way.
- The people in your life will always matter more. It doesn’t matter how important you think a certain goal is, the people in your life will always matter more. I’m lucky enough to have a partner who stuck with me through the ups and downs of the career change process, and I wish I spent so much more time over the last few years appreciating her for sticking with me through it all. One of the most painful, yet most freeing, lessons I’ve had to learn this year is that my significant other would’ve loved me just as much had I never become a software engineer at all. In fact, whether I became one or not, didn’t really matter to her at all.
- Appreciate success along the way. The four year journey that I just described had several really cool successes along the way, but I didn’t appreciate any of them. There were so many happy moments that I missed out because I was so consumed by what I wasn’t doing rather than what I was doing. The way you frame things matters.
- Give it time. Like a lot of people in their twenties, I felt like I had to make everything happen now. I felt like I was running out of time to make a career change happen or like there was some kind of deadline looming over me. Looking back, I realize that I had, and still have, just as much time as when I started. Sometimes things just take time to happen. It’s okay to give yourself the grace and time to let things play out. It’s okay to relax along the way. You only have one life, so don’t stress about the outcome.