Becoming a Better Software Engineer

14 Dec 2022

Throughout my time at the University of Hawaii at Manoa, many of the courses that I’ve taken involved learning concepts through lectures and applying the knowledge through exams. There were also a few lab courses which I expected to have a more hands-on learning style. Unfortunately, those labs were done online during the COVID lockdown so the hands-on part that I was expecting wasn’t exactly there. This semester I took ICS 414 (Software Engineering II) which I would say provided that hands-on experience. What made this course so interesting was that we worked with a real client. We were put into groups and were tasked to create a modernized legislative tracker for the Hawaii Department of Education.

The Challenges

Throughout the semester our group faced many challenges. The first problem we ran into was understanding what the client wants. I would say that one of the toughest parts of any project is starting. Nobody in our group had any knowledge of how the legislative system works, so we were all confused about how to start. Communication with the client was very important. We met with the client every few weeks to discuss our progress. As we asked questions and received more information, this problem became less of an issue.

When it comes to problems we faced as a group, one thing that comes to mind are the overlapping tasks. Since we were in larger groups, merge conflicts were common. There would be several people working on the same page/component at the same time. This problem highlighted the importance of communication between team members.

As an individual, something that challenged me was the project template we used. It wasn’t the same template that we used in Software Engineering I, so I had to adapt and learn quickly. Unlike in the previous course, we didn’t have as many videos to refer to. A lot of the things I worked on in terms of programming required me to do research and learn on my own.

Wrapping Up

In the end, I feel that I have improved in my ability to solve problems. I appreciate that the client encouraged us to be creative, and believe that I have improved in that aspect as well. Overall, I had a great experience as this is one of the more memorable courses I’ve taken.