Skip to content

How I Graduated from MIT with 4 Degrees in 4 Years

It’s all about optimization and balance. And no, I didn’t go insane.

Killian Court at dawn

Earlier this month, I completed a four-year journey at the Massachusetts Institute of Technology (MIT) as an undergraduate student for the first three years and a graduate student for the last. As a member of the Class of 2020, I graduated with:


🎓 M.Eng., Electrical Engineering and Computer Science (EECS) 

🎓 B.S., Computer Science and Engineering — School of Engineering 

🎓 B.S., Mathematics — School of Science 

🎓 Minor, Economics — School of Humanities, Arts, and Social Sciences 


Now in quarantine with ample time on my hands before I’m due to start my first full-time job as a Machine Learning Engineer at Apple, I’ve been reflecting on my time at university and some of the integral choices I made along the way.


It was during my first few weeks on campus that I repeatedly heard studying at MIT being likened to taking a drink from a firehose. Indeed, the sheer number of opportunities and courses available left me in awe. There was no way I could do it all, and it became evident that the choices I would make would be important in shaping my undergraduate experience. I had to build a filtering mechanism of sorts.


I’d always enjoyed subjects that didn’t involve much rote learning or straight memorization. In high school, I participated in math competitions and olympiads, performing moderately well. Naturally, the Computer Science and Mathematics departments drew my interests. My initial thoughts were that Mathematics would be really enjoyable while Computer Science would lead to great job prospects. But, I thought, why not both? There wasn’t a good answer. And henceforth, such “why nots” propelled me to set goals I didn’t know I could actually achieve. My approach was just to believe in myself more relentlessly than I ever had before.


With lofty goals comes a hunger, satiated only by further victory. Once I extrapolated that a double major was doable, I began to wonder if a minor was also possible, and later, if a Master’s degree was too. It was also important to me that I didn’t sacrifice memories — good times with friends, living group shenanigans, and extracurricular activities — to the point of unhappiness, and the chance to graduate with my class. These goals were thus executed after meticulous outlining and careful execution. Below, I’ve broken down some insights from the planning process and my academic adventures.


Figuring out if pursuing multiple degrees is worthwhile

Assessing whether a double major is a valuable time investment is critical. While a double major can sometimes improve job prospects or increase earning potential, it often does not do so for the tech sector. What it definitely offers, though, is a wider and deeper level of knowledge. This is why I chose to pursue two separate undergraduate degrees over MIT’s blended math and computer science major. I tailored my Computer Science major toward an applied focus and my Mathematics major toward a more theoretical one. The two subject areas required different thinking styles, and combined, enabled opportunities to learn from more professors on campus.


Perhaps it was a desire to be anti-mainstream in some way that solidified my decisions, or maybe it was the sense of accomplishment I was bound to feel at graduation. In any case, putting in the work to earn four degrees in four years hugely improved my technical competence and self-confidence.


Studying course catalogs and college-wide requirements

Higher education institutions often release their subject listings publicly. It’s great to comb these early, possibly even before the start of the first semester. At MIT, students meet with their academic advisors during the first week to discuss initial schedules. Coming prepared to this meeting with a general understanding of college-wide requirements, and if possible, major-specific fulfillment criteria enables advisors to support students more personally from the very beginning.


Advisors can help students decide on which classes to “shop” for and clarify nuances of how specific major programs work. It was at my initial advising meeting that I learned about MIT’s M.Eng. program in EECS, a thesis-based Master’s degree program requiring only a qualifying MIT computer science or electrical engineering GPA for admission. This sparked a resolve to take up research opportunities as an undergraduate, so I’d have a better idea of what research direction to pursue as a graduate student.


Making use of previous course credit

Like many universities, MIT requires students to fulfill general institute requirements (GIRs) to graduate. These include classes in math, physics, chemistry, biology, and the humanities, arts, and social sciences (HASS). While several universities allow entering students to receive college credit based on their scores on College Board Advanced Placement (AP) tests taken in high school, MIT grants course credit for an extremely small set of exams. Instead, it offers opportunities to test out of GIRs by passing their final exams, without ever having registered for the courses themselves. Many students utilize the GIRs to figure out their interests instead of testing out of them, but for students who are sure of their majors or need to make room for all the classes required for multiple degrees, the option to test out of GIRs is great.


I fulfilled several course requirements before my first day of classes, through a combination of sitting GIR exams during orientation and leveraging the power of transfer credit. A series of math courses I took at Georgia Tech while a dual-enrolled high school student substituted some institute-wide requirements. With transfer credit locked in so early, I found the freedom to study what I wanted, whenever and however I wanted.


Mapping out a course road during freshman year

Sketching out a four-year course road was the first complex optimization problem I’ve solved. (Funnily enough, my Master’s thesis is also about optimization.) The map took days to construct and dozens of revisions before I was happy with it, but what it revealed to me was incredibly exciting. There turned out to be a couple courses that were offered jointly by the math and computer science departments, meaning that when completed, their credits would apply to both majors. There was even a course in networks that counted as a computer science, economics, and HASS class, which would effectively kill three birds with one stone.


While creating the course road was a significant time investment, I used it as a tool to inform my academic advisor of the pace I planned to take, which was a course or two more per semester than normal. Advisors at MIT, who approve their advisees’ course registrations, generally encourage students to operate at a pace comfortable for them and to not change course loads drastically between semesters. To make my case for taking classes at the rate I wanted to, I presented my advisor with a course road a lot like this one:

All the classes I took for credit at MIT


Optimization, however, is imperfect. Given that MIT does not offer summer classes and constraints like fall-only or spring-only course availability, my course road positioned a few classes before their prerequisites. To compensate, I’d spend some time over winter breaks learning essential material. The map also placed some classes in semesters earlier than when students in my year would generally take them. Surprisingly, this actually turned out to be great, as taking courses with older students led to collaborative work sessions with new friends.


Engaging in a variety of internships

A challenge that comes with a packed course load is having to sacrifice some classes with really interesting course descriptions because of limited room. I found that the hands-on experience from varied internships filled such gaps. Over MIT’s annual four-week independent activities periods (IAPs) and summer breaks, I engaged in machine learning, data science, and software engineering internships, and some entrepreneurial activities.


Following through and adjusting for an optimal balance

Constructing a course road was a step in the right direction, but following through with it was a much bigger feat. In being strategic about the number of technical versus nontechnical classes to take per semester, as well as allowing room for possible needed adjustments due to burnout, I remained open to making adjustments when I felt my map was no longer consistent with my visions. When I received an offer in December of my junior fall to take the upcoming spring semester off for a research internship at Apple Health AI in ‘Seattle, I decided to take it, despite knowing that I’d have to sort out a situation with an outstanding course for my undergraduate degrees. My solution was to light-load that semester and take only a single class, flying cross-country from Seattle to Boston to sit each exam.

Killian Court at dusk

College was full of surprises. Never could I have fathomed my level of commitment to continuous improvement, the intensity of my discipline, or the love I developed for computer science over these four short years at the Institute. Even more unfathomable were the depths of the friendships and relationships I built and the volumes of encouragement and support I received. The kindness was unwavering and palpable. Thank you, MIT.

I will be hosting sessions on how to optimize your college journey! If interested, please sign up here:


– Agni Kumar, MIT 2020, RTC Member