Hangry Fix was created as a final project for a Software Engineering course at UH Manoa. It was one of the first projects where I worked together as a team using Github for project flow. We created milestones and used issues to maintain a high level of organization and meet our deadlines. The experience gave me insights on how to develop software as a team, even if the team was only three people. All members of my team contributed equally, which made this a positive experience, as all three of us had our eyes set on the end goal.
I personally wrote the code for the search page, the add food page, the add review page, and the edit review page, and helped on many others. I was experienced in Javascript, HTML, and CSS before this project, but I had only just learned Meteor, Semantic UI, and react during the class this semester. Combining these tools was a challenge that was rewarding to overcome. I was able to share my knowledge with my teammates when they were stuck and likewise, I found that they had knowledge that helped me pass hurdles that slowed me down. I had never used a CSS framework like semantic-ui before this semester and it was a challenge to overcome the limitations of prepackage CSS elements, but at the same time, it made it possible to work seamlessly with my group who had less experience in CSS.
One of the greatest challenges I faced was working with eslint. I have been writing Javascript code for years and I now had to change my style to match the standards. I found it beneficial that all three of us in the group were using the same style, as reading code that my teammates had written was easier than it would have been otherwise.
Overall, building this application was an positive experience that capped a class that introduced me to software engineering, made me a better writer, and helped me improve as a colleague and teammate. The skills that I will take away from this project are not limited to programming skills, although I did improve in that area, but include software design practices, group dynamics, communication skills, and time management techniques, among others.