I enrolled in the University of Pennsylvania's online Master of Computer and Information Technology program in Spring 2021 and since then, a number of people have reached out to ask me about applying to MCIT. Since most potential applicants have the same questions and I find myself repeating the same answers, I figured I might as well put my thoughts all in one place.
If you are at all serious about applying to MCIT Online, you need to read the Penn Engineering Online FAQs. Please.
I understand if you have questions or doubts because you come from a different school system and need advice on recommenders, writing your personal statement, taking the GRE, or anything of the sort. I understand if you want to hear a student's perspective on some of the official recommendations that the program makes. I do my best to be helpful. But if your question can be answered by a quick Google and a little bit of research, I'm going to doubt whether you've considered the commitment you are about to make.
All opinions are my own, and do not reflect those of the MCIT program. I'm just a student who applied, got admitted, and enrolled. I don't have a privileged view inside the admissions committee.
What qualities does MCIT look for?
Here is the official answer from MCIT program director Dr. Tom Farmer: 5 Tips to Strengthen Your MCIT Online Application from the Program Director.
- Demonstrate quantitative ability.
- Make the most of your personal statement.
- Showcase your experience with online learning.
- Choose three solid recommenders if possible.
- Consider taking a CS course or two.
Let's go over this one point at a time.
Evidence of quantitative ability
Your application should have either a previous degree in maths, physics, engineering, or with a similarly heavy quantitative component, or a high quant score on the GRE. MCIT Online does not publish GRE statistics, but the on-campus MCIT program does.
For the on-campus Fall 2021 admissions cycle, the average (median? I guess) GRE of admitted students was 162 Verbal, 168 Quantitative, 4.3 Analytical Writing. The number that really matters is the Quant score: 168Q out of a maximum score of 170 is around 92nd percentile. That's higher than previous years, but honestly not by much: the average Quant score of admitted hovered between 165 and 167 between 2013 and 2020.
Compelling personal statement
Tell a story of how a program like MCIT Online fits into your personal and professional goals. Perhaps you're a career changer moving into software development or data science. Perhaps you work in a tech-adjacent role (product manager, business analyst, legal or public policy in a tech company) and want to understand the tech domain better. Perhaps you are already working in software development or data science and want to fill in knowledge gaps. Heck, maybe you just want to learn.
If you consider other professional graduate programs such as the MBA, MD, JD, etc. there's often an implicit requirement that you need to have a certain amount of a certain type of work and/or internship experience. That's not the case here: MCIT students really do come from all sorts of academic and professional backgrounds. The important thing is that you can weave a story of how studying computer science will fit into your professional life.
Proven ability to learn academically in an online setting
If you have not taken any such classes online, I would suggest doing a course like Harvard's CS50x and getting the verified certificate. It's useful both for admissions, and for assessing how you will do in an online learning environment.
Obviously the world has changed since MCIT Online was launched, and many students have had to learn online out of necessity. Even so, I think it's useful to do online asynchronous courses on top of any online classes you may have had as a result of Covid. Instructional design and expectations for a class that's designed to be online, as opposed to one that had to be moved online at short notice, are going to be different. Online learning favours learners who are independent, self-motivated and who know when and how to proactively ask for help. I think it's instructive to figure out for yourself if you're the kind of learner who suffers from the online environment or who benefits from it.
There's also a question of whether online learning platforms such as Codecademy, Educative or Udemy count. My honest answer is that I don't know how the admissions committee views them in comparison to Coursera and edX. However, my own experience has been that the MCIT Online learning experience is closest to Coursera and edX courses, in the sense that MCIT Online classes are academically-oriented and tend to be lecture- and assignment-driven. You should make sure that this is a style of online learning that you enjoy.
Choose your recommendations carefully. One of the worst things that can happen to your application is a lukewarm recommendation.
I suggest reading the Letters of Recommendation FAQ thoroughly to get a feel for what the program is looking for in the letters of recommendation.
Who should I ask for letters of recommendation?
You must choose at least two recommenders. Three is ideal but not always possible (I had two). In my opinion, the most important reason for nominating three recommenders is to make sure you don't get any last-minute surprises from a letter-writer who doesn't submit their recommendation before the deadline. Another good reason to find three letter-writers if you can is that they can address different dimensions of you as an individual: perhaps one person can talk about you in an academic setting, another in a professional setting, and the third in the context of a community or volunteer project.
What I typically suggest is that at least one recommender should be academic, ideally a professor who knows your work well. This could be a thesis advisor, a professor you've TA'ed or done research for, a professor whose class included a substantial assignment, or a professor with whom you've taken multiple classes. The academic recommender should be someone who can talk about your qualities as a student: do you work hard to understand the material, do you ask good questions in class, do you produce good insight in your work, etc. Ultimately, MCIT is an academic program, and an academic reference will likely be most reflective of how well you will do in an academic setting.
The second and third recommenders can also be academic, or they can be individuals who know you from work or other professional context (e.g. your manager, your web development bootcamp instructor, a leader at a program you volunteer with). Ideally this person would talk about your ability to succeed professionally: do you deliver when needed, can you manage your time and your responsibilities, how do they see you growing as a technology professional?
There are a few resources that I think are useful for navigating the letters of recommendation:
- Kyle Burke, the chair of Computer Science and Technology at Plymouth State University, has an excellent FAQ on asking him for recommendations. Of course, your mileage will vary if your professor is not Kyle Burke, but it's still a good overview of what kind of information to provide to your recommenders.
- If one of your recommenders is happy to help you out but is not sure how to go about writing your letter, take a look at UC Berkeley's advice to GSIs on writing letters of recommendation. It's targeted at graduate students who may be writing letters of recommendation for the first time, but most of the advice (particularly "Paragraph by Paragraph" and "Dos and Don'ts") is easily adapted to other contexts such as work or community service.
- UC Berkeley also has Guidelines for Writing Letters of Recommendation broken down by the type of graduate program (MCIT would fall under "Academic Graduate School"), but I find the advice given here to be a bit more generic and less explicit about what makes an effective recommendation letter.
Consider taking a CS course or two
Penn Engineering has a number of online courses. Some of these professors also teach MCIT courses: the Introduction to Programming with Python and Java Specialization is a lighter version of CIT 591 Introduction to Software Development, Data Structures and Software Design covers the first few weeks of CIT 594 Data Structures and Software Design, and Algorithm Design and Analysis is taught by Sampath Kannan, who teaches CIT 596 Algorithms and Computation.
My own preference is for Harvard's CS50x, which I think is an excellent introductory course that will both give you technical skills and a broad understanding of computer science. It's designed to be a first undergraduate course in computer science, so it needs to cater both to students who may never take another CS course in their life, and at the same time adequately prepare students who intend to major in CS. Somehow, it succeeds.
The other set of courses I took was the Introduction to Discrete Mathematics for Computer Science specialisation on Coursera. I felt it was important to have some maths in my application, and I found the course enjoyable, if lacking the dynamism of David Malan's stagecraft.
The wonder of MOOCs is that there are so many amazing courses available for free or at very reasonable cost. Other MOOCs that I've heard great things about are:
- Nand to Tetris
- Tim Roughgarden's Algorithms Specialization
- Programming Languages Part A, Part B and Part C
These are a little more advanced, though, so treat them as the suggestions that they are, and not as a checklist of courses you have to do. The important thing here is simply to demonstrate that you've sought out some CS learning on your own.
How long should I spend on my application?
According to my Notion page history, I created my MCIT "Essay" page on April 6, 2020. The admission deadline for the Spring 2021 semester was July 31, 2020, so the whole process took me about four months.
The parts of the application that have the longest lead times are:
- GRE preparation (4-12 weeks, depending on your preparation and test-taking ability)
- Letters of recommendation (1-2 months advance notice for your recommenders)
If you're only getting started on the application with just two months before the deadline, I would consider that to be too tight. It's doable, but it increases the likelihood that you'll submit something less than representative of your strength as a candidate.
Another wrinkle in your planning is whether you foresee taking the GRE more than once. I discuss this further under How should I prepare for the GRE?
Do I need to take the GRE?
If you need to ask, the answer is yes.
The official answer is this:
No, the GRE is optional. But there are a few scenarios in which we strongly recommend taking the GRE:
- You have not taken any quantitative courses (such as math or physics).
- You feel the grades that you received in your bachelor’s program do not represent your current abilities and are lower than you would like them to be.
- You received your undergraduate degree 15 or more years ago.
The way I see it, there is virtually no situation in which it is beneficial to skip the GRE. The best that can be said is that for some people, skipping it won't actively hurt your application. That's the class of applicants who already have strong evidence of quantitative ability on their transcript or résumé.
If you graduated from a mathematics / engineering / physics program with a 3.8 GPA less than 15 years ago, sure, you don't have to do the GRE. If you build quantitative financial models for a living, you don't have to do the GRE. If you majored in film but have an A+ in Real Analysis on your transcript, you don't have to do the GRE. (I was a film major, I can make jokes about film majors and maths.) You already know if you fall into this category.
The truth is, if you do not have a quantitative background, the ability to use the GRE to prove your quantatitive bona fides is a godsend. Most schools want to see a college-level maths class on your transcript (Bath and OSU both do, for example), if not college-level CS classes. I have neither, and if you don't either, the GRE is not optional for you.
Yes, standardised testing sucks. No, the GRE does not predict graduate school success. But let's also be real here: in the MCIT program, there is at least one proctored exam per course. Each of these exams is about as long as the GRE, and requires the same kind of exam skills as the GRE. If preparing for a proctored, standardised exam is a deal-breaker for you, you may not enjoy graduate school very much.
How should I prepare for the GRE?
I spent about a month's worth of evenings and weekends preparing for the GRE and took it once, coming out with a score I was more than happy with.
What I did was to buy Manhattan Prep's 5lb. Book of GRE Practice Problems, take a diagnostic test, identify my weakest areas, and spend most of my time practising them. I probably spent 80% of my GRE preparation on statistics questions. My quantitative scores on practice tests at the end of my preparation were the same as my actual exam quant score.
You may need more time to prepare: most GRE preparation sites suggest 4 weeks as a minimum, and an upper bound of 12-20 weeks. Because the only sub-score that really matters is the Quantitative score, you don't need 20 weeks cramming GRE vocabulary, but you want to give yourself enough time to be confident under exam conditions.
To retake or not to retake
Sometimes things go wrong. Your score isn't as good as you want it to be, you fell ill on the day of the exam, you blanked out under exam conditions, whatever.
Retaking the GRE is pretty common, and there's no harm in planning for it. You don't have to take the GRE multiple times, but it's nice to have that option if you bomb the first time. After each GRE test, you must wait 21 days before you can take the test again. That means that you should aim to take the GRE at least three weeks before the application deadline, in order to give yourself enough time for a re-take.
What other schools did you apply to?
I had four programs in mind: Penn's MCIT program, University of Bath, Oregon State's post-baccalaureate, National University of Singapore, and I ended up ranking them in that order. My criteria for choosing programs was simple:
- Must accept students without any prior CS background (this rules out Georgia Tech's OMSCS, among others)
- Must be doable part-time
- Must not be more expensive than NUS's MComp program at S$60,000+
- Must be doable completely remotely (NUS is the exception, as I can commute to it)
- Reasonable reputation as a research university (lots of schools offer online and/or part-time CS programs now, but I wanted to prioritise schools with a stronger reputation first)
The complication is that my undergraduate transcript does not have a single maths class. No Calc I, no "Math for Non-Majors", no "Great Ideas in Mathematics". This makes meeting the pre-requisites for many programs a bit of a challenge.
I could apply to MCIT without doing any prerequisite classes, as long as I had a good GRE score. To apply to Bath or OSU, I would have needed to take a college-level Calculus class first, and to apply to NUS, I would have needed to take three certificate CS classes first.The decision came down to this:
- Ease of application (from best to worst): Penn, Bath/OSU, NUS
- Cost (from cheapest to most expensive): Bath, Penn, OSU, NUS
- Study mode (from best to worst): Penn/Bath/OSU, then NUS (in-person is actually a negative here, because of the commute time and the inflexible schedule)
- Strength of CS program (from best to worst): NUS, Penn, Bath/OSU
That's not to say that Bath or OSU have bad CS programs. Rather, I culled several programs that also met my criteria, but that had weaker reputations than these four. NUS and Penn are simply on a different level from Bath and OSU when it comes to computer science.
My plan was to apply one at a time, so if I had been rejected from Penn, I would have taken a Calc class and applied to Bath, then OSU, and then finally signed up for the certificate classes at NUS and pursued the CS program there. Since I got into Penn, I didn't end up applying anywhere else.
I hope this is useful to anybody planning to apply to MCIT Online. If you have any other questions, though, feel free to contact me. If I think your question is potentially relevant to other applicants, I may add it here.