Overall I believe ICS 414 to be one of the better courses you can take in the computer science program at Manoa. The Course itself is not very difficult as there isn’t much studying in the traditional sense, however the work done is very relevant to real world experience. Because the project for this semester used the same tech stack we are used to from 314 there wasn’t much to be covered in terms of programming, but even if we were working with a completely new stack you could learn those techical skills anywhere.
I found the group project setting to be the most beneficial aspect of the course as it aided in developing soft skills that are essential in a software engineering work environment. In 314, my experience during the final group project was somewhat skewed from real development. I was lucky to have mostly seniors in my group so they were able to handle most of the technical issues that arose and they pretty much knew what to do from the start. The problem was they were working on their capstone projects at the same time so they really didn’t engage as much socially as some other groups did. In the end we had a very smooth time finishing our project but I really missed out on agile development experience. Because of the overall level of technical prowess in our group, my teammates were able to brute force implementations and had finalized versions in one or two commits. We didn’t really practice version control or code standardization because it wasn’t necessary for what we had to do.
In this course however, the task at hand was much more complex. Even with our collective technical skills, the scale of the project made it necessary to practice good coding standards. Also in the course teams usually develop a project for a client so things like clean code are more important than in normal coursework. Having to organize our group of 7 members gave me a ton of great experience in some “true” software engineering.