Learning Foundations of Software Engineering

13 Dec 2021

Overview

My software engineering class at the University of Hawai’i at Manoa was built to prepare me for the workforce. I will be talking about the most valuable things I have taken out of this course. I learned about efficiency in my field and how to communicate with meaning using smart questions. I know how to defend myself when I am asked to do something unethical by referring to the ACM Code of Ethics.

Communication

Smart questions include troubleshooting steps, are specific, and typically include all the information in one post. In order to know deeply where your code is going wrong, the asker must do research beforehand. This research of where and how the code is failing is important since it is likely that someone has encountered this issue before. If you are at a point where you are not finding answers to your issue, ask for help. When seeking help, it is important to include as much relevant information as possible to help the person answer your question.

Code of Ethics

In class, we had a discussion regarding Facebook and its current ethics. FaceBook has been in the news for many reasons, like the coup on the United States Government on January 6th, 2021, or online bullying and explicit content for young users. Our debate allowed us to have a deeper understanding of the ACM Code of Ethics since the class was arguing that FaceBook is and is not ethical. Having these standards that all coders refer to helps us not get in ethical troubles. It is what makes us engineers and inventors. We choose to help people with our technological skills and help society progress. With this knowledge, we can also choose the other direction too.

Work Environment

Not only is there coding ethics, but we must also acknowledge work ethics. In a predominantly white field, some of us POC may feel like it is difficult to speak up, for multiple reasons. I find it important to make groups that support each other, like ACM-W for women in computer science, or having diversity groups at your companies to mentor young kids and give them motivation to join this field. I found it very helpful to find these groups that supported me. The National Center for Women and Information Technology has been helpful to me in finding opportunities and friends. I also worked with the University of Minnesota-Twin Cities’ ACM-W where I worked with women while we conquered coding problems and complained about the toxic men we face. These are places to seek shelter and community, but the toxic people in the community also need to be educated on inclusivity. I appreciate workplaces requiring training on these topics. These are green flags in a company. I refuse to work in conditions that do not meet my standards, and I hope coders do the same.