Architecture

Why Software Engineering? Building with Purpose Beyond Code

Discover software engineering's deeper purpose—learn how systematic approaches, quality focus, and collaborative practices transform code writing into sustainable solution building that serves real human needs

Series: Software Engineering Fundamentals | Part Part 1 of 19 > Delivered at Universidade Potiguar (UnP) in 2010

Today I taught my first Software Engineering class at Universidade Potiguar (UnP), and it was a remarkable experience. Since being invited to prepare and lead this course, I’ve been reflecting on how to structure content that feels relevant to students — not just based on what I learned during my degree, but also from real-world projects and experiences in the industry.

Why Software Engineering?

My goal with this first lecture was to establish a clear starting point: why do we need Software Engineering? What are we trying to solve when we apply engineering principles to software development? I shared some data from the Chaos Report to illustrate how most projects still fail or require heavy adjustments, proving that simply knowing how to code isn’t enough. We discussed missed deadlines, poorly defined scopes, rework, dissatisfaction, and frustration. These are part of everyday life in most projects — and understanding the root of these problems is the first step to avoiding them.

Challenging the Notion of “Working”

Throughout the presentation, I challenged the students with a question: “Does your software work? Are you sure?” The idea was to shake up the superficial notion of success, encouraging reflection on quality, maintainability, clarity, scalability, user satisfaction, and business context. And of course, we also talked about how software can become chaotic, stressful, and disorganized — but that it doesn’t have to be that way.

Engineering as Solution

I introduced Software Engineering as a discipline that can help with communication between teams, proper requirements gathering, realistic estimations, risk control, production organization, and a constant pursuit of quality. I emphasized that this isn’t just the concern of a project manager or a team lead. Everyone has a role: those who are just beginning to learn, those writing their first lines of code, those already experienced — all can contribute to making the development process healthier and more effective.

Course Schedule

To support this idea, I presented the course schedule, which includes classical lifecycle models, agile methodologies, and practices like Scrum, XP, DDD, TDD, refactoring, architecture, and testing. The goal is to offer a balanced view between theory and practice without ignoring real-world challenges. Each topic was chosen to reinforce a skill that makes a real difference in the industry, and I hope every class becomes an opportunity for students to grow technically and professionally.

Our Classroom Routine

I also explained our classroom routine: interactive content blocks, transparent attendance tracking, keynote moments and discussions, space for questions, and active participation. I want students to have space to speak up, to disagree, to experiment with ideas. A good class happens when students are thinking — not just listening.

As someone who sat in this classroom — but on the other side — I hope I can help this new group build a solid foundation, understand the importance of methods and practices, and above all, develop software with responsibility and purpose.

If anyone has suggestions or feedback on the class, I’m all ears! My goal is to keep improving — just like we do in agile development.

Teaching is, above all, an invitation to think together. Each class becomes a conversation—sometimes about concepts, sometimes about experiences, sometimes about what we hope to build and why it matters.

I’m looking forward to continuing this journey with the students and seeing how these concepts evolve in their hands.


Posted after my first lecture as a Software Engineering professor at UnP, filled with enthusiasm and gratitude for the chance to share and learn at the same time.


Series Navigation