My Strategic Course Sequence for OMSCS Success
The Order I Pursued to be On-Track for Graduation in 2024
Recently, I’ve received numerous inquiries about the order in which I took OMSCS courses, their effectiveness, and whether I would make any changes. This article addresses all these questions.
[Note: Familiarity with the OMSCS Program is assumed; if not, you can learn more about it here.]
Context
Before we explore the sequence, allow me to provide some context about myself and how I devised this course plan. I currently hold the role of a Full-Time Software Engineer II at Microsoft (Azure). With a BSc. in Computer Information Systems, programming is my professional domain. Interestingly, my journey commenced simultaneously at both Microsoft and the OMSCS program. My specialization is Machine Learning.
Unlike the more ambitious individuals, I chose to tackle one course per semester. Initially, my motivation was to cultivate the discipline required for returning to school while balancing a demanding career without compromising performance. This challenge was particularly daunting at a new job with Microsoft, who generously covered my Master’s expenses — a fact I’m profoundly grateful for. The financial support added pressure to excel. In the end, I opted to stick to a single course per semester. Presently, I’m on track to graduate either in Summer 2024 (if I take two courses) or in Fall 2024 (maintaining the one-course-per-semester approach). Currently, I maintain a perfect GPA of 4.0/4.0.
The Sequence
The overarching objective is to commence with a moderately challenging course — one that pushes my limits without discouraging my pursuit of specialization. Simultaneously, I aim to acquire knowledge that may prove beneficial for the essential core courses required in my specialization.
Here, I present the order in which I took my courses, and for any additional remarks or special notes, I’ll include them beneath each respective entry.
1. Fall 2021 — CS 7646: Machine Learning for Trading
This course provided the foundational knowledge necessary for my 7th course, which is the core course in Machine Learning. It was an enjoyable experience, and I acquired valuable real-world, automated trading skills.
2. Spring 2022 — CS 7637: Knowledge-Based Artificial Intelligence
Courses #1 and #2 were both taught by Dr. Joyner, known for exceptional organization. This particular course proved beneficial for my 5th course, Human-Computer Interaction (HCI).
3. Summer 2022 — CS 6603: AI, Ethics, and Society
A remarkably straightforward course, although it did stir some frustration occasionally. Ethics, known for its inherent gray areas, didn’t favor ambiguous answers in this instance. Just a heads up. Nevertheless, it proved to be an excellent summer course!
4. Fall 2022 — ISYE 6501: Intro to Analytics Modeling
You can include up to 2 non-CS/non-CSE courses in this program as part of your free electives. This particular course was truly valuable, providing insights into the R language and offering valuable statistical knowledge.
I’ve written several articles covering this course, so I won’t delve too deeply here. If you’re interested, feel free to explore them:
5. Spring 2023 — CS 6750: Human-Computer Interaction
Another course taught by Dr. Joyner, so naturally, it was excellent. This course involves significant writing and reporting, requiring a strong command of the English language for success. Despite English not being my first language, I found it relatively easy, but it’s something to be mindful of.
6. Summer 2023 — CS 6795: Introduction to Cognitive Science
Another one of my favorite courses, reuniting with Dr. Goel from the KBAI course. This was another straightforward course. As you may have noticed, I tend to opt for easier courses during the summer, as:
- Given the brief duration of summer courses, selecting a challenging one may result in numerous assignments with tight deadlines. Hence, it’s advisable to opt for easier courses during this condensed period.
- I want to have a life.
Throughout the semesters, they also showcase exemplary reports, providing students with a valuable reference to understand the criteria for outstanding reports and the associated expectations.
7. Fall 2023 — CS 7641: Machine Learning
This core course is often viewed with trepidation in the ML specialization. I’ve compiled a comprehensive blog that includes beneficial practice exams and resources. I’ll share the link here shortly.
The remaining three courses listed below constitute my plan for graduation this year. I’ll update this article as I complete each one.
8. Spring 2024 — CS 6515: Intro to Graduate Algorithms
I’ve decided to take this course now instead of saving it for last, as doing so allows me better control over my graduation timeline. This decision is particularly crucial, considering my parents’ international travel plans for my graduation. Ensuring certainty about my graduation date is paramount. If I were to face challenges in this core course and needed to retake it, I could adjust my graduation timeline accordingly. Failing this course would postpone my graduation until I successfully pass it, impacting the next semester’s schedule.
9. Summer 2024 — MGT 6311: Digital Marketing
I’ve heard that this course is notably straightforward. Therefore, I’m considering pairing it with my tenth course.
10. Fall 2024 — CS 7650: Natural Language Processing
At present, I’m on the waitlist for GA. If I secure a spot in GA for Spring 2024, I’ll be able to graduate in Summer instead of Fall, as I wish to conclude my studies. This would allow me to pair courses #9 and #10 together. However, if I don’t get into GA, I’ll take NLP in Spring 2024 and adjust the order, making GA my final course, as taking GA during the summer is not ideal.
Thank you for reading this article. If you enjoyed my content, please consider following me to show your support for my work.