414 Final reflection

19 Dec 2025

ICS 414 has been very valuable to my development in software engineering. I have gained a lot of knowledge and experience, with both software development and team work. The team work aspect of this class was definitely the most challenging part, but also where I feel like I learned the most. I have never worked on a project with more than 3-4 people before so having a larger group made coordination much more important. I think overall my group did a good job with preventing merge conflicts by working incrementally and having relatively small issues that allowed for frequent merges. The main problem we faced as a group was inconsistencies with the database. Not all of the group members, including myself, were familiar with the tech stack we used for Pantry Pals, so there were several times where people would not properly make changes to the database or make changes without updating the associated tests, causing the application to crash and preventing other team members from merging their work until the issue was solved.

I think my team could have benefited greatly from having a bit more organization from the beginning. Our approach was to basically just let everyone choose and write their issues independently, which led to some inconsistency in workload and miscommunication. We had to approach every problem we had as it happened when it would have been preferable to have more clearly defined roles and responsibilities such as someone designated to handle merges as part of their work or someone to update the tests. I think a more coordinated approach to our team work would have made us a little more efficient but overall we were able to work well together, handle our miscommunications efficiently, and prevent the majority of problems. I personally learned about the value of organization and communication when projects begin to scale. Additionally I used an almost entirely new tech stack when working on Pantry Pals. Typescript was pretty easy to grasp and I have had a bit of experience with SQL databases in the past, but I have never actually used a SQL database in a project as I’ve only worked with noSQL databases like MongoDB before. I definitely preferred the structure of PostgreSQL, especially for the problem at hand.

I also feel like the structure of the class was good to keep us moving along with the project and making consistent progress. Having reviews and milestones caused our group to communicate more about the project and make more consistent contributions than I think we would have otherwise.

Overall I feel I gained some valuable experience and skills in this course as well as made good connections with my group. I think this course was one of my most valuable experiences in software development so far and it has given me the most hands on and “real” experience in my college career.