Chances of getting into top-tier M.S in CS programs with Mech Eng Background?

Hi,
I know this question has been enumerated dozens of times, but I would really appreciate you guys for evaluating my situation.

I am a recent graduate from University of Toronto with a Bachelor of Mechanical Engineering and Mechatronics & Robotics Minor. During my later years of study, I developed strong interests in algorithm and computer science in general. I have taken couples of CS courses out of my interests in my 4th year (eg. OS, algorithm and data structure, AI), all of which I received at least A.

My GPA is not astonishing, its 3.65 Cumulative. It’s mainly due to my recklessness in my junior and sophomore years, I have been trying very hard to raise the average in my last few semester. However, my last year was 4.0 and was ranked top 5 out of 200+ students in my class.

I know that in my school, master admission only look at course grades in the last 3 semesters (at least in the engineering department). Do schools in US also adopt a similar policy? or did my first two years at university totally ruin my chance?

I have not taken GRE, but ill work hard and let’s assume I will achieve at least 90+ percentile.

In terms of experience, by the end of this summer, I will have 2 research experience (one regarding computer science, one sort of irreverent), and 1 year industry experience as a project engineer in non-CS industry.

How does my chances look in terms of admitting into MS in CS at top-tier school (eg. Stanford, UCB, Princeton, CMU)?

I certainly learned a lot of programming languages in my Robotics Project. However, are there anything I can do to increase my chance? (eg, certificate? does grad school look at portfolio if I can provide one?)

Thank you in advance.

You know that no one here will know you ‘chances’. I think your gpa is very good. Are you intending to go straight to industry or preparing for PhD and are you looking for MS or M. Eng. I think that depts at the top often evaluate candidates similarly to PhD candidates. I think you have to look at each program and see if they are expecting certain coursework. I know Princeton doesn’t require/expect a undergrad in CS and you have a sufficient background I believe. They start you in the MS and if you don’t want to do the thesis you can drop to the M.Eng but it seems like a consolation prize. They admit for the thesis track. Berkeley doesn’t admit very many MS and it would be only for a particular reason, they are in the PhD business and I believe they expect undergrad in CS. But they do offer the M.Eng.

Thanks for the encouragement BrownParent.

The main reason I want to study MS is because 1) I would like a proper education in CS since my undergrad is not CS 2) I would eventually want to work in the industry but I don’t rule out the chance of pursuing a PhD.

However, regardless of my future decision on PhD, I believe it is to my advantage to apply for MS only. Because applying for PhD seems like thinning my chances even more as I am switching track here.

Yes, i have researched school and requirements. Apparently, all of the schools are pretty open to students with non-CS background, as well as UC Berkeley. Yet, only Stanford offer a more “proper” degree for MS in CS, where as other school seems to focus mainly on PhD.

Unfortunately Stanford is extremely competitive…and I want to know where I stand before preparing GRE and applying for American Schools…

Stanford is way easier to get into than Berkeley for Master’s. The acceptance rate was on the order of 15-20% a few years ago. But their program is insanely crowded. Heck, this last year I think there were 769 students in their machine learning class. I bet a lot of those were non-degree students taking it online, but they have tons of grad classes with triple digit enrollment. This also means it will be harder to get a thesis advisor if you want to go the thesis route. Their focus is going to be on the Ph.D. students naturally.

If you just want a Master’s, there are plenty of solid programs you’d have a decent shot at outside of the top 10. You may need to take a course on FLAT first. I doubt they care about your portfolio that much as long as you have a basic programming background. CS is more than programming.

Thanks Mathandcs, would you care to explain what FLAT is? I have trouble finding what it is online.

I have found someone saying that taking some non-degree credits at Stanford helps increasing the chance. However, they are very expensive. I am wondering does taking those courses help me getting into OTHER schools as well? or they are completely useless if I fail to get admitted into Stanford?

Thanks

Formal Languages and Automata Theory. Various names for the course are Automata Theory, Intro to Theoretical Computer Science, etc.

I don’t know if it helps. It certainly would if you can get a LOR from your NDO courses, but I’d rather take a non-degree undergrad class in person than the grad class online (and Stanford classes are more expensive than most schools’). The exception would be if you’re working full-time and can only take an online course, especially if your employer will foot the bill.