After dipping my toes into actual software engineering, I’ve come to realize that there are many aspects of software engineering that I’ve never really thought about before. It isn’t just about writing code, but writing code that is efficient, maintainable, and scalable. I’ve learned that there are many tools and frameworks available that makes software engineering a much more efficient process. I’ve also briefly touched upon the ethics of software engineering, and I will explain my thoughts on that later on.
I think one of the most interesting aspects I’ve learned about software engineering is the use of user interface frameworks. I like to think of UI frameworks as the “skeleton” of the application, and you’re building on top of this skeleton. It basically gives you the tools to build your application in a much more efficient manner rather than having to develop from the ground up. From what I understand, knowing how to use a UI framework is a very valuable skill to have as a software engineer, and I know that many companies are looking for people who are proficient in using them. React is a framework that I’ve learned and that’s a framework that I’ve seen in many job postings.
This is something that I’ve never really thought about personally, because I’m in the camp of “just do whatever your superior tells you to do, no questions asked.” I feel like that if I had to second guess every project I’m a part of or think too deeply about who should be working on what, then I would never get any work done. I don’t think I’d ever be cut out to be a project manager, because I’m not the best at making tough decisions, especially if I need to make them in the moment. But who knows, I’m inevitably going to have to make these decisions at some point in my career, I’ll just leave that problem for future me.
I went in thinking that software engineering was simply about just writing code. While it is that at it’s core, there are many other aspects to it that make it a much more complex field. I’ve heard about UI frameworks before, but I never really the chance to use them until now. And while I have learned about the code of ethics in software engineering, I still don’t think I’ll ever think too deeply about what I’m working on.