Tissues for the Software Engineering issues

09 May 2024

My Experience

This course has given me an extensive introduction to software engineering. I was able to learn about the essential concepts such as the design, development, testing, and maintenance. This class made it an exciting and fulfilling thing to trial front end and back end work. I also learned that the internet is our oyster. The digital world has unbounded opportunity and if we all can ask the right questions, we can achieve our goals.

The Magic of Git

Being able to work by yourself or with a team in an effective, timely, concurrent manner is not impossible! Configuration management keeps track of what each person in the group are working on. It maintains stability in the project and can bring issues to the surface to be addressed immediately. How does configuration management work? Reflecting on my experiences, there were times of stressing over how I am supposed to integrate my peer’s code into mine as if its so complicated. Thanks to distributive configuration management in git, my life was easier. If I am working in a group, I would simply just clone the repo of the template I am using -> dabble and write amazing code -> see the changes I have made -> merge any conflicts and push it to git so that my team can track every piece of my work (which is good) and be able to use up to date code. This approach to configuration management fosters transparency and optimizes collaboration.

Click and Commit

Agile Project Management has been valuable to learn throughout the project course of this class. Working with Milestones on github emphasized the fact that “everyone will have something to do,” which contributes to the success of the project. This structured and flexible approach facilitates being able to create a deliverable that is planned out, functionally working, and can be maintained. Communication and collaboration is pivotal to APM as it ensures smooth project performance and ability to adapt to changes.

Thank you Ninjas

I can agree that Patterns DO help newbies acquire the hard won experience of ninjas. Design Patterns are essential to software engineering as it provides direction and structure when approaching a problem that needs to be solved. Utilizing a design patterns can significantly reduce the stress associated with tackling a project with little to no guidance. Over the course of learning about design patterns, we learned several design patterns such as singleton, observer, factory, and Model View Controller (MVC). I look forward to exploring these design patterns and more to enhancce my knowledge on software design strategies.

Overall, I learned so much about myself and what it takes to be a software engineer. The fundamentals is only the beginning and although this field might not be easy, it will teach me continuous learning and consistency. I can now anticipate the expectations needed to become a software engineering with all the trials and failures.