I always knew I wanted a career involved in computers and software. My father loved tech and made a living selling Nokia cell phone accessories at the swap meet, passing down to me his love for tech. Even in the third grade, I knew I wanted to be a game designer (although 8-year-old me had no idea what game designers even did). The underlying passion was always there, but for a while, I didn’t know a single programming language until I enrolled at LCC. Once I started learning my first language and others after, I became enthralled with the process. I fell in love with the simple process of seeing a problem and figuring out how to solve it, trying to optimize it further. Maybe it’s the same reason I adore puzzles; in my head, programming was like a series of puzzles that could be solved in your own personalized way. I was (and still am) inexperienced, but the challenge appealed to me. The times where I’d be working on a program for days, and it’d finally compile in the exact way you wanted it to, were very gratifying.
The boundaries of what software can achieve keep expanding in ways I would’ve never conceived of, which is a major reason why I wanted to work in the field for so long. Developments in AI, cryptocurrencies, cybersecurity, and quantum computing were happening before my eyes; it was all so fascinating to me. One reason I wanted a career in software engineering was that I wanted to be part of that world, perhaps even contribute to it. But I still lack much experience, which is what I hope to address in the future going forward.
I never joined robotics or even any clubs, for that matter, so I’m hoping to get more involved in extracurriculars that would enable me to meet more people and be less afraid to come out of my shell. I also want to develop my process for learning new concepts in general. A perfect example is when I was doing the coding exercises on FreeCodeCamp. I’d be stuck at a certain lesson and would find the solution, and it would make sense to me. But I had to ask myself if I truly understood it. Could I easily explain it to myself or someone else? Did I truly learn something or did I just memorize the solution? It’s one thing to learn about a new concept, but actually internalizing it is something entirely different and makes life incredibly easier.
This deserves a separate section because it’s a skill that’s applicable outside of engineering and arguably the most crucial: being able to NOT compare myself to other people. Software engineering is a huge field with incredibly talented and clever folks; it can be easy to fall into the trap of self-doubt by comparing your abilities to someone younger than you who can finish the WODs before you, work more efficiently, or understand the material more easily. In my experience, I’ve met tons of bright people in my major who constantly feel like they’re inadequate. So imagine how inadequate I felt when I failed out of all my classes last year because of the declining state of my mental health. Naturally, the only person you should ever compare yourself to is your past self, but it’s easier said than done. It doesn’t do any good to beat yourself up over mistakes or issues you may run into, and it can be more detrimental than helpful. So I’ll end this on a friendly reminder to myself or whoever it might concern: you don’t need to be the best programmer or the best anything; just focus on being the best version of yourself you can be.
Note: Ran essay through ChatGPT 3.5 for grammar fixes.