Taking ICS 314 has taught me many different concepts within software engineering, most being web development-focused. Although this course did place an emphasis on web development, we did have the opportunity to learn about concepts essential to software engineering as a whole, with three that I will discuss being user interface frameworks, ethics in software engineering, and coding standards. These concepts are foundational to the production of any software and the creation of efficient, clean code and professional, ethical practices within businesses and work environments involving software engineering.
Coding standards are the key to creating efficient and clean code, comparable to grammar and spelling conventions in writing, but in programming form. Per its name, it’s made of standards that developers must follow in order to collaborate and maintain codebases in a more efficient, organized way. ICS 314 introduced us to ESLint, which acted like a grammar-checker by catching any mistakes and flagging anything that it didn’t deem as best practice in Typescript. Coding standards are essential to collaboration when coding, because having a group of people working on a project together is not as efficient and understandable when everyone is on different pages and coding in different ways. Having a set of standards to stick to for everyone makes collaboration easier, which is valuable to the real world outside of university, where many jobs expect us to collaborate with colleagues and be able to work efficiently with each other.
While coding standards create a layout of expectations for how code should look, ethics in software engineering is what leads a team into the right direction for the good of everyone. In class, we discussed cases of ethics in software engineering and figuring out how to make difficult decisions related to things like work environment, security, and best practices regarding ethical considerations. These lessons went beyond coding and focused more on the importance of decision-making and making the right, ethical decision for a team and projects. They raised questions of who would benefit or be harmed by certain decisions, which are questions raised in any industry beyond technology. Ethics are essential to improving livelihood and fairness, which is highly applicable to managerial positions in the real world and workforce.This perspective will guide me in any future project, so my work aligns with values I believe in.
As for UI frameworks, I found that frameworks that we used in class like Bootstrap made it much easier to create attractive web layouts beyond raw CSS and HTML, which I found to be more time-consuming and tedious. Frameworks offered pre-built classes to use in my code while designing web pages, like buttons and positioning, and had great functionality while also looking clean. I found that frameworks made UI design much easier and professional rather than building everything from scratch myself, and I think that it makes design much more accessible to those who don’t have much experience in it. This concept showed me the importance of making certain tools accessible for anyone of any skill level, and I plan to create my own projects using these frameworks because of how high-quality they are.
This course has totally changed how I see software engineering. It’s not just about writing code; it’s about making solutions that are effective, ethical, and actually matter. I’ve learned that coding standards are super important for clarity and teamwork, ethics remind me about the responsibility of creating tech, and UI frameworks are where ideas come to life. Software engineering is more than just a career; it’s supplemental to curiosity, problem-solving, and always learning.