Reflection on Software Engineering: Beyond the Code

16 May 2025

Throughout this Software Engineering course, I’ve come to understand that software engineering is not just about writing functional code, it’s about writing code that is maintainable, readable, and responsible. I want to take this essay and reflect on Software Engineering, but not on the code that I learned in my class, but the Coding Standards and Ethics behind it. These are not confined to web application development—they are universal principles that influence how software is written and how it impacts society.

Coding Standards: Writing Code for Others

Coding standards are a set of conventions and best practices that guide how software should be written. These can include rules on naming variables, structuring functions, organizing files, and writing comments. At first glance, these may seem like superficial details. But in collaborative projects, especially those that span weeks or months, these standards become essential.

Adhering to a shared coding standard ensures that any developer joining the team, regardless of when, can read, understand, and modify the codebase efficiently. For instance, using tools like ESLint and Prettier in our class projects helped us enforce consistency across all files, catching errors early and saving debugging time later. It’s not just about style, it’s about communication.

This principle is not limited to web development. Whether I’m writing Python scripts for data science or managing a large-scale C++ system, I now realize that good code is written with other humans in mind. The real audience of code isn’t the machine, it’s the next developer who reads it.

Ethics in Software Engineering: The Responsibility Behind the Keyboard

Another major lesson from this course was the importance of ethics in software engineering. As developers, we are increasingly in positions of power where our code affects people’s privacy, access to resources, and even democratic processes. Ethical software engineering means thinking beyond functionality and performance. It means asking: “Who Benefits from this software?” or “Who might be harmed by it?”

We studied ethical dilemmas, such as biased algorithms and dark patterns in user interfaces. These discussions highlighted the need for engineers to act intentionally and critically, not just efficiently.

Ethics also extends into open-source contributions. It’s not just about sharing code, it’s about building inclusive communities, respecting contributors, and making sure the software is used in just ways. I’ve come to understand that good engineers don’t just ask, “Can we build it?” but also, “Should we?”

Beyond the Classroom

These lessons will stick with me long after this course. Whether I’m developing a mobile app, working on scientific simulations, or building internal tools for a company, I will continue to prioritize clean, standardized code and ethically responsible design. These aren’t constraints, they’re principles that elevate software engineering from coding to craftsmanship.