HKUST
I studied my undergrad at HKUST, where I studied a dual degree in Computer Science and General Business Management, but what I'm more famous (or infamous) for is that I had two additional majors in Mathematics and Data Science, as well as two minors in Robotics and Psychology.
How many majors?
I get asked a lot of questions about all these majors, mostly from people either in disbelief or asking how or why. The real reason why I ended up with such an ugly degree is largely the byproduct of being indecisive about when I wanted to graduate. I entered HKUST under the school of engineering program without a major, and from the start I was planning on doing a double major in Computer Science and Math, more specifically the COSC program which was exclusive to those double majoring.
Fast forward to the end of Year 1 when we are declaring our majors, and I learned about the 5 Year Dual Degree Program that we could optionally interview for. At the time, I was like "eh, why not", so I interviewed for it and got in. After getting in, I was still more interested in doing maths, so I started to overload to take some of the math courses. Since I had to stay in DDP for at least one semester, I wanted to keep my options open, in case I felt like dropping it and going back to my original plan of COSC+MATH.
By the end of Year 2, I started to see all the benefits of being in the Dual Degree Program, so I decided to stay. Since I entered UST with a ton of transfer credits from IB, it actually wasn't too difficult to squeeze in the extra courses to declare an additional major in maths, and it seemed like I could do it comfortably in 4 years as well, along with a minor in Robotics, which was mostly complete from being a member of the HKUST Robotics Team.
Again, fast forward to Year 4 Fall. I landed a super good summer internship, and that made me reconsider whether I actually wanted to graduate early in 4 years. I didn't really want to graduate yet since the pandemic kind of cancelled many plans and activities on campus. But at the same time, I was almost done with all of my coursework because of the original plan, meaning I didn't really have any courses to take if I were to stay for a fifth year.
Luckily, UST offered this Data Science Major (DSCT) which overlapped heavily with the CS and math curriculum. Since I was under the General Math track for my math major, I could shift a lot of the MATH courses I took previously to fulfil this new major requirement, and I could just take more MATH courses to refulfil the MATH major requirement. At the same time, I had some credits to spare, so I delcared a minor in Psychology PBS as well.
As such, I didn't really plan to take this many majors and minors, but it just kind of happened. Now, seeing me do this has inspired some people to try and follow in my footsteps (especially for dualers looking to triple major), and for this I have some FAQs:
How many credits did you take?
I graduated with 254 credits (as opposed to the 120 required). 27 of this is credit transfer from IB and 16 were from my exchange semester at UPenn.
How much time do you spend studying?
For those that know me, I'm actually a super lazy student and barely study at all. Though I overloaded a ton, it never got in the way of other things I was doing, e.g. extracurriculars or hanging out with friends.
Do you recommend doing a third (or fourth) major/minor?
Do I recommend? Not really. Would I discourage you from doing it? Nah go on ahead.
Any advice for someone thinking about triple majoring?
If you're still thinking about adding that extra major, here are my advice:
- Plan your study plan super carefully - You should know your requirements inside and out and know where you can double count courses. You also need to factor in other things, such as if you want to go on exchange (which I would highly recommend).
- Frontload your study plan - Taking more courses in your first few years gives you more flexibility later on. For example for me, I had the option of graduating early and also working part time during my fifth year.
- Overload for a few semesters before declaring the extra major - Everyone has their "comfort zone" when it comes to the number of credits you take. Just because I can comfortable manage 25-28 credits, doesn't mean that you should expect that you can handle such workload.
- Don't do it just to make your CV look good - An extra major won't make a difference when it comes to job applications. If you get the job, you would've gotten the job without the extra major, and if you didn't get the job, an extra major wouldn't have helped. People won't hire you just because you're taking another major.
Courses
I typically took around 25-28 credits per semester, except in Year 1 (when you can't overload) and in Year 5, when I was working part time. For those interested, here's a list of the courses I took:
Fall 2017 |
---|
MATH2111 - Matrix Algebra and Application |
COMP2711 - Discrete Math for Computer Science |
COMP1022P - Introduction to Computing with Java |
LANG2030H - Technical Communication I |
LANG1113I - Effective Chinese Communication |
Spring 2018 |
---|
MATH2411 - Applied Statistics |
MATH2023 - Multivariable Calculus |
ENGG2900D - Community Service Project |
ENGG3960A - ABU Robocon 2018 |
FINA2203 - Fundamentals of Business Finance |
HUMA1000C - Cultures and Values |
Summer 2018 |
---|
SOSC1960 - Discovering Mind and Behaviors |
Fall 2018 |
---|
COMP2012H - Honors Object Oriented Programming and Data Structures |
COMP3711H - Honors Design and Analysis of Algorithms |
COMP2611 - Computer Organization |
MATH3332 - Data Analytics Tools |
PHYS1003 - Energy and Related Environmental Issues |
ACCT2010 - Principles of Accounting I |
MGMT2110 - Organizational Behavior |
Winter 2018 |
---|
ENGG3960E - Development of the Robot Design Contest |
Spring 2019 |
---|
COMP4971C - Independent Work |
COMP5712 - Combinatorial Optimization |
MATH2033 - Mathematical Analysis |
MATH3322 - Matrix Computation |
LABU2060 - Effective Business Communication |
MARK2120 - Marketing Management |
ELEC3300 - Embedded Systems |
ENGG3960F - ABU Robocon 2019 |
Fall 2019 |
---|
COMP3111H - Honors Software Engineering |
COMP5711 - Advanced Algorithms |
COMP5331 - Knowledge Discovery in Databases |
MATH5471 - Statistical Learning Models for Text and Graph Data |
ISOM2700 - Operations Management |
ECON2103 - Principles of Microeconomics |
TEMG3950 - Case-based Problem Solving |
TEGM4950D - Corporate Consulting Project: Smarter e-Commerce for Google HK |
Summer 2020 |
---|
ISOM3390 - Business Programming in R |
Fall 2020 |
---|
COMP4981H - Final Year Thesis |
COMP5411 - Advanced Computer Graphics |
LANG4030 - Technical Communication II |
MATH3033 - Real Analysis |
MATH5311 - Advanced Numerical Methods I |
MATH6450H - Mathematical Analysis for Machine Learning Algorithms |
ECON2123 - Macroeconomics |
MGMT2010 - Business Ethics and the Individual |
MGMT3140 - Negotiation |
Spring 2021 |
---|
COMP4981H - Final Year Thesis |
COMP5214 - Advanced Deep Learning Architectures |
COMP5421 - Computer Vision |
COMP6311E - High Dimensional Data Management and Analytics |
MATH2421 - Probability |
MATH5312 - Advanced Numerical Methods II |
SOSC2990 - Developmental Psychology |
ACCT2200 - Principles of Accounting II |
ISOM3400 - Python Programming for Business Analytics |
Fall 2021 |
---|
COMP6411B - Advanced Topics on 2D and 3D Deep Visual Scene Understanding |
MATH3423 - Statistical Inference |
MATH3424 - Regression Analysis |
SOSC1990 - Research Methods in Psychology |
LABU2040 - Business Case Analysis |
Winter 2021 |
---|
TEMG4952C - Special Project: “T&M Prototyping and Desktop Research” sponsored by UBS |
Spring 2022 |
---|
COMP6613E - Theory of Types and Programming Languages |
MATH5412 - Advanced Probability Theory II |
MATH6380U - Molecular Simulation |
ELEC5140 - Advanced Computer Architectures |
SOSC3540 - Environmental Psychology |
FINA3103 - Intermediate Investments |
For some of these courses, I took notes during class which can be found here. These notes were largely inspired by Giles Castel's blog post.