Finished the course with an A, achieving a 90.81%
Background:
Bachelor's degree in Computer Science from a university ranked #377 out of 436 National Universities in U.S. News
English is my second language (TOEFL score: 95/120)
1 year of experience as a full-stack developer and 6 months of experience in data analytics
Overall:
This is the fifth class I’ve taken, and I find it interesting how it teaches both basic concepts and what to focus on as a software engineer. Now that I’m writing test cases, I’m more aware of what needs to be covered and which parts of the code aren’t. Even if you don’t know Java or Android development, this class can motivate you to learn—especially since it's graded. I’d say that after taking this class, I have a good understanding of Java and Android development syntax and how they work together.
Grading and Weight:
Participation (3 / 3%): I answered and asked a few questions on Ed Discussion (around 10 in total) and received full points.
Assignment 1 (2 / 2%): Just a survey.
Assignment 2 (5 / 5%): Introduction to Git. As long as you follow the instructions, it’s not difficult.
Assignment 3 (10 / 10%): Introduction to Java. Similar to Assignment 2, just follow the instructions. Since I was new to Java, I had to look up some syntax online. But if you know any programming language, this should be pretty easy.
Assignment 4 (10 / 10%): Introduction to Android Studio. I spent more time on this one because I was completely new to both mobile development and Java. This assignment requires you to pass objects between classes, so I recommend starting early if you have no prior experience like me.
Assignment 5 (2 / 2%): As long as you present a reasonable design, the TA likely won’t grade too harshly. There’s no “correct” solution as long as you can justify your design choices, you should get full credit. Based on Ed Discussion, most point deductions came from syntax issues.
Group Project (17.19 / 18%): This depends heavily on your group. I was lucky to have a responsible team that everyone contributed, discussed implementation ideas, and divided the workload fairly. Even though all four of us were new to Java and Android Studio, we worked well together. I can imagine it would be a bad experience if your teammates don’t participate.
Collaboration (Group Project) (9.9 / 10%): Since our group worked well together, I believe we all deserved full marks. However, many people mentioned they received scores around 9.5 to 10, so I suspect there might be a hidden rubric involved.
Assignment 6 (8.745 / 15%): This is a very important and challenging assignment, as it determines the final grade. Unfortunately, I didn’t perform well on it, and even after reviewing the solution, I still don’t fully understand what the assignment is about. I understand this may be important if you're pursuing a role as a testing engineer, but my focus is on full-stack development and data analytics. In my job, the kinds of tests we write aren’t closely related to the material covered in this assignment.
Individual Project (22.975 / 25%): I really liked this project. It felt like solving puzzles or LeetCode problems. To score 100% (or even extra credit), you need to carefully consider edge cases. While not everyone may enjoy it, I did my best and was happy with my result. The answers aren't revealed, but you’ll get some feedback on Gradescope.