boolean swe = true;

31 Aug 2023

Why go into Software Engineering?

Why does anyone decide to go into software engineering? For some, I would imagine that it is for the money. The social media posts that discuss the possibility of massive salaries surely motivate a fair bit of people who study Computer Science. For others, maybe it’s the work-life balance. The ability to work from home, in a comfortable environment, might be what checks the box for many.

For me, I just simply love to program. It scratches the problem-solving itch that’s been there for me since I was little. Being able to create functional programs that solve problems or just do cool things is what gets me going in this field. Of course, I can’t really articulate that in an “interests” section of a resume, so I do have my more niche interests, but all in all I’d like to do anything in this field. For this reason, I’ll be talking about the parts of the CS landscape that interest me the most, but that absolutely does not rule anything out in my future plans.

LLMs and NLP

The area of SWE that I have the most experience in is with LLMs and language processing. These were the two major parts of the summer project that I did with the University of Hawai’i. To me, the two go hand in hand. While using OpenAI’s API, I learned about fine-tuning, prompt engineering, and other ways that you can get the LLM to produce the responses you want. I used it to both generate and categorize passages to be placed in a dictionary-style database. The capabilities of these models are absolutely fascinating and would absolutely be something I would like to do more with. As for language processing, working with spaCy, handling the part-of-speech analysis, and reconstructing the strings was a great experience. I loved the puzzle of converting the string into tokens for processing and reconstructing it like I was the doctor from Frankenstein. Being able to work with and experiment with multiple Python libraries was also really fun to try.

Machine/Deep Learning

Outside of working with the APIs of the LLMs, both machine and deep learning are also incredibly cool subject areas to explore. I would love to able to work in that field and develop my own models. I am currently thinking about going to graduate school to research artificial intelligence or computational linguistics, so working within that industry would be interesting and fulfilling. I think that this area of computer science is already changing the world, so to be a part of that would be a dream.

Software Development

Lastly, general software development is also something I could see myself being very happy doing. Pushing out code for services that can help someone in some way, whether it be a company or the end user, is also something I’m interested in. Like I said before, functional, no-nonsense code is just as meaningful to me as something that people would consider revolutionary. Programming for efficiency is something that I have been working on improving, so getting experience doing that would mean a lot.

Conclusion

I hope that the general message that I have conveyed within this writing is that I would love to be anywhere within this industry. I could not imagine doing anything else that would provide me with a similar level of satisfaction and enjoyment. Whether I end up specializing or being a generalist, I am sure that whatever I do in the future will push me to continue to learn and better myself as a programmer.