CS International Student

Hi, so I’m an asian female applying for aid, international too. I just got involved w/ coding like 5 months ago, and completely fall in love with it. Now, UChicago doesn’t have a really well-known CS program. But I LOVE UChicago for its intellectual vibe, so I have been dying to apply (wayy before I decided my major) and I really enjoy the quirky essay prompts too. So I decided to apply. I have several questions though:

  • So what is the job placement/ internship prospect like? Especially for international students (for whom the competition is harder). Any CS international students can tell me about their experience?
  • If I don’t have substantial CS experience before entering university, would I be able to handle the workload?
  • I know that UChicago CS is more focused on theories/ research. But I’m pretty interested in startup and phone applications too. Do you have any advice how I can still get start-up experiences in a research-focused school?

Thank you really much :slight_smile:

Oh, I figured that I don’t need to post my stats, since this is not a chance me thread. But if you need to know about my academic background in order to answer the second question, well I would say I’m just another 2300 SAT/ 35 ACT/ 4.0 GPA applicant who likes math and CS. Nothing stands out like national/ international prize though.

The website provides information on financial aid. Google it for more information or check the link here.
https://collegeadmissions.uchicago.edu/costs/international-aid

Read their information. When they say they meet need, they mean THEY decide what you need. The school costs $70K per year. If you get a merit award, their web site has indicated that it is a partial tuition award.

I am assuming you mean internships? google the department website.

Assume that you will return to your country for job placement. You cannot assume that you will be sponsored for a job in the US. Immigration rules have become stricter and have changed. US companies have to abide by rules stating that there are no citizens available to fill their positions before they can consider a non-US citizens. Corporations are not willing to put up with the paperwork and fees when they can hire a US citizen for less time and effort.

Oy, this is like the third CS related thread in a few days.

One at a time:

The internship/job placement rate is very good according to our favorite senior lecturer. Chicago is actively recruited by tech companies. A bunch of UChicago alumni who work at google came in the middle of autumn quarter to talk to undergrads. Sadly I missed it so I have no idea what they said but I promise they know about us. There’s a CS jobboard you can look at: https://jobboard.cs.uchicago.edu/ And an events calendar filled with a ton of stuff: http://studentactivities.cs.uchicago.edu/page/event-calendar

Of my CS friends, there doesn’t seem to be any meaningful difference between international CS students and other CS students in terms of job prospects.

Yes, no intro CS class at UChicago requires previous programming experience. That said, the first day of 161, Honors CS, my professor asked who had prior programming experience and only two people didn’t raise their hands. They both dropped the class because it was too difficult. Prior programming experience will probably not help directly with Haskell (unless you have previous experience with functional languages in particular) but it will help you get an idea of whether you have can handle the workload of Honors CS. If you were successful at programming in the past you are more likely to be successful in Honors. I promise you can take it without knowing any programming, though, and I would encourage you to start in Honors and drop down if you think it’s too much. It is a fantastic class.

The 150s, non-Honors CS, are much more friendly to people with no prior programming experience but of the ones I knew, they still found the class to be very difficult. There are two sequences that are much more along the lines of traditional CS intro classes where you learn Java, Python, C, etc. (the 110s and 120s), and can ease into thinking like a programmer, but you will have to take the 150s or 160s to graduate with a CS degree.

There are RSOs focusing on startups, someone is hosting the University’s first Hackathon this spring, and there are plenty of people who are into startups and app development who you will probably be able to find just by casually talking to people in your CS class. There isn’t really a startup culture here and most CS majors are more interested in math than apps but you can find them if you look hard enough.

@"“aunt bea” Oh wow is it that bad? :o I was still quite oblivious to how the current prospect of finding jobs for international students is. I thought it would be competitive, but still doable. Thanks for telling me though. @HydeSnark Oh great!!! Thank you for your helpful answer! Yeah I have little prior programming experience (like only AP Computer Science class), but I want to try out the Honor CS (If I’m fortunate enough to get in).

If you took AP Computer Science and enjoyed it you’re probably going to be fine taking CS classes here. They’re much, much harder than AP Computer Science and like I said they assume no prior experience (and will be absolutely nothing like AP Computer Science), but taking AP Computer Science at least means you have some experience translating problems into code solutions.

@nangkhieu, @b@r!um has more information.

I would suggest you go to the websites of places where you would like to work. Then see what the pages and apps say.

CS is pretty awesome here, and is growing very fast. I don’t think picking UChicago for CS will put you at a disadvantage over students studying CS at any other school. The focus on theory at UChicago is what makes it unique. Here is why I think you should consider our CS program as an asset instead of an aspect that makes you unsure about picking Chicago:

The practical parts of computer science are easy to pick up. More importantly, they change very fast. I have been a web developer for over 10 years, and the technologies for app development have changed faster than I could have imagined. When I started, Android and iOS weren’t even around. I made by first web app using Java servlets and hosting with tomcat- this style is now well outdated, and replaced with the likes of Spring MVC and Django. With NodeJS, Bootstrap, and all the recent web app frameworks, building an app has become extremely easy. Moreover, there was a time (not long ago) when XML was the primary way to send data- none of these pretty JSON APIs that you see nowadays existed! A few years before that- mobile phones, the internet, and personal computers were not commonplace. However, the science of computing has been around for a very long time. The point is, software development will continue to change, and you don’t want your 200k investment in a college education to be wasted on studying “app development”, because what you learn will be outdated in a few years anyways. The theory that UChicago CS will teach you, on the other hand, will always be around. For example, heapsort will always run at best nlogn time- regardless of the programming language, software framework, or device you are programming for, this will always be the case. Scientists and mathematicians have rigorously proved this to be true. It is the case today and will be the case hundreds of years from now. Our intro sequence is in Haskell not because profs want to waste your time- its because it is a “lazy” language that quickly lets you focus on mastering computing fundamentals instead of learning a bunch of language technicalities. Even if you want to make a career building apps, I would highly recommend a theoretical program like that at UChicago because it will teach you to think like a computer scientist. Don’t make a huge investment of your time and money in becoming a web developer- this is something that an 8 year old who knows how to Google things can become.

To answer your questions:

  1. We don’t have a very institutionalized recruiting environment. You will have to apply to jobs on your own, for the most part. However, if you are any good at all, you will get some job. And things are quite frankly really good for CS majors right now. No-name startups are paying six figures to students right out of undergrad. Just search job openings on AngelList. If you do really well, you can end up at Google or an elite startup (depending on your interests). But you should know that even if you don’t do as well as you hoped, the safety net is quite high. Almost every CS major in the market is graduating with 5-6 offers, so as long as you focus on learning as much as you can, you have nothing to worry about. (P.S. If you are worried about jobs as an international student- the startup I was working at last summer was paying somewhere between 80k-120k to a 19 year old sitting in Vietnam. The path to citizenship in the US is a pain, but a skilled CS major is employable anywhere).

  2. Yes, you will. However, Honors CS is pretty hard- I would recommend trying it out. If its too hard, drop to regular asap. Both the 160’s and 150’s are really good. I would not recommend doing 120’s, however. I have friends that are new to programming doing 150’s, and they are doing just fine.

  3. Like I mentioned above, once you have a mastery of computing concepts, this part is really easy to pick up. We have weekly technical coding interview workshops, hack nights, tech talks, and student groups on campus. Also, do a few of your own projects. I would start by making a personal website, and then continue by working on any other entrepreneurial pursuit. Make sure to save your repos to a github account for showcasing.

Feel free to PM me if you have any specific questions. Good luck with your application, and I hope to see you at Chicago!

@HydeSnark yeah I love my AP CS class right now :slight_smile: And after the whole application process, when I have more free time, I will probably learn more about coding on my own, outside of class.
@“aunt bea” Thanks, I will :slight_smile:
@puzzled123 thanks! Woww the responses I received from you and @HydeSnark are so informative and detailed! Haha now you guys make me assume that most students at UChicago are also friendly and helpful like that.
Btw, it’s a coincidence but I’m actually a Vietnamese too :slight_smile: I would love to stay in the US to work after graduating, but if that doesn’t work out, the job market in VN for CS grads isn’t too bad either.
Now that you explained to me about why having a strong foundation in CS theory is so important, I feel much more confident about my choice to apply to UChicago. And wow, at first I thought you were a UChicago alumni that graduated 10 years ago, but if you’re only a freshman now, that means you have been a web developer since you were 8 or 9 :o ? That’s really impressive!!! I wish I had taught myself CS sooner :stuck_out_tongue:

Do many of your CS classmates have extensive experience with CS like you before college? For those who don’t, but still put sufficient effort into the assignments and work hard for the class, how do you think they tend to perform? Are they at a much disadvantageous position compared to those who already had 3-5+ years of experience? And do the professors sometimes assume that students will already know such and such knowledge, if they haven’t taught them? About the Honors CS, yeah thanks, I’ll follow your advice :slight_smile:

I would love to attend UChicago!! The chance for me is probably pretty slim though, so I will try my best on my essays. Apparently UChicago places a lot of importance on essays.
Oh, another question: I cannot find the male:female ratio for the CS program at UChicago. Is there any advantage for a girl applying for CS? Well even if there’s any advantage, it’s probably offset by the fact that I need financial aid, but I’m just asking. Thanks a lot!

  • No, the advantage of of studying theory is that everyone starts on a pretty level playing field. If you are pretty good at math and computational thinking, it is really just like any other science class. For honors, everyone (who didn't drop the class) had substantive prior programming experience. However, my experience with web dev was pretty useless when it came to learning monads. Moreover, some of my friends that are second year math majors taking the class (who are much smarter than me) had much less programming experience than me but also did better than me on the exams. In my experience, learning the theory will help you with web dev, but not the other way around. If you are a smart student who puts in the effort, you will do well regardless of your prior experience. As for the regular sequence, a few of my friends without prior programming experience took the 150's, and they all got an A or A-.
  • The male to female ratio is a very high number. I don't know if this will help you with university admissions, but it will most definitely help with getting an internship and getting a job. Most top companies have a special internship program for minorities in tech.

Male to female ratio is no worse than 2:1 men to women (and probably much better, I never looked closely), which is pretty good as far as CS departments go. Compared to my state school, where I usually saw like 3 girls in a massive several hundred person lecture hall, Chicago CS is practically even.

All my programming experience outside of classes was programming competition type problems (and related projects on my own like playing around with Markov Chains, trees and maps and other data structures, graph searching algorithms etc. - I was always more of a theorist) and I found my background put me in a much, much better position than people with experience in web dev/app development like @puzzled123. If you want to get in a better position for UChicago CS I would recommend doing some Project Euler problems.

Most people did not have this experience. If anyone had programming experience beyond AP Comp Sci it was usually app development or web development and that’s pretty much useless when it comes to the 150s and 160s.

@HydeSnark @puzzled123 thank you :smiley: You guys’ answers really put me at ease. Yeah I like Project Euler. Those are fun!