본문으로 건너뛰기

Columbia MSCS

Columbia MSCS의 평판을 변호하기 위한 글입니다. 예전에 많은 사람이 커뮤니티에서 Columbia CS에 대한 오래된 부정적인 글을 보고 이 프로그램이 별로라고 생각하게 되었습니다(글쓴이는 두 달 뒤 이미 Google에 취업했습니다).

이 글은 1. 취업 평가 2. 트랙 3. 수업 후기 4. 합격 정보 5. 비용 순서로 Columbia MSCS 프로그램을 비교적 객관적으로 설명합니다.

취업 평가​

취업 준비를 진지하게 하고 매일 지원한 사람은 거의 모두 일자리를 구했습니다. 오퍼는 대부분 대기업에서 나왔습니다(비자 스폰서를 해 주는 곳이 대기업뿐이기 때문입니다).

주변에서는 Adobe, TikTok, Meta, Amazon, NVIDIA, Databricks에서 인턴 오퍼를 받았습니다. Columbia가 서류 통과에 주는 도움은 괜찮은 편으로 보입니다. 제가 아는 학생들은 Citadel, Jane Street, D.E. Shaw, Bloomberg, Meta, Stripe, TikTok, WeRide, Five Rings 등에서 virtual onsite를 받았습니다. 학부 때 비교적 큰 회사(TikTok/Alibaba/Google/Microsoft)에서 인턴을 했다면, 위에서 언급한 퀀트 회사 + 빅테크 중 대략 1/3 정도에서 인터뷰를 잡을 수 있을 것입니다. 제가 아는 Columbia MSCS 학생 중 Amazon virtual onsite를 받은 사람은 모두 인터뷰를 통과했습니다. 또한 Columbia는 Bloomberg 내부 평가 시스템에서 ROI가 높은 학교로 분류되어 있어 직접 채용하러 옵니다(2022년에는 대규모로 뽑아 갔습니다). Columbia MSCS를 담당하는 Meta HR도 매우 열심입니다(Columbia MSCS 담당 Meta 리크루터는 S티어 학교도 함께 맡고 있습니다). 이메일에 답장이 빠르고, 24 Fall 공고가 열린 첫날 Columbia MSCS 학생 다수에게 new grad와 인턴 인터뷰를 먼저 연락해 왔는데 정말 인상적이었습니다.

다만 Columbia CS의 취업 분위기는 확실히 강하지 않습니다. 커리어 페어에는 Bloomberg만 오고, 학부 커리어 페어에는 대학원생이 참가할 수 없으며, 전반적으로 지원이 부족합니다.

트랙​

Columbia CS에는 열 개가 넘는 트랙이 있습니다. 가장 인기 있는 것은 Software Systems와 Machine Learning이고, 저는 전자를 택했습니다. Machine Learning 트랙은 필수 과목이 적고 더 유연합니다. Software Systems 트랙은 제약이 더 많지만 수업 내용이 거의 전부 SDE와 관련되어 있습니다. 이력서 발송 + LeetCode + 인터뷰 준비 + 수업을 동시에 해야 한다면 업무량이 정말 적지 않습니다.

thesis 트랙이 있는데, thesis 트랙을 선택하면 2년제 과정이 됩니다. 연구를 지도해 줄 교수님을 직접 찾아야 합니다. 2년으로 연장할 수 있고, 잘 풀리면 PhD로 전환할 수 있습니다.

수업 후기​

많은 커뮤니티 글에서 Columbia는 업무량이 엄청나다고 하는데, 저는 다소 편향된 시각이라고 생각합니다. Columbia에서도 쉬운 수업으로 시간표를 충분히 짤 수 있습니다. 업무량은 무거울 수도, 가벼울 수도 있습니다. 아래는 저와 친구들이 들은 수업 중 일부입니다(그리고 그런 글에 나오는 수강신청 난이도나 지나치게 긴 waitlist는 저는 겪어 본 적이 없습니다. 쉬운 수업이든 업무량이 많은 수업이든 듣고 싶은 수업은 모두 들어갈 수 있었습니다).

  1. Operating Systems: SS 트랙 필수 과목. 업무량이 매우 많습니다. 이미 취업이 확정된 경우에만 추천합니다. 한 과목 학점으로 세 과목 분량을 배웁니다. 다만 이 수업을 제대로 익혀 두면 quant dev 인터뷰에 큰 도움이 됩니다. Kostis 분반은 듣지 마세요. 강의 중에 "like like like"를 계속 말해서 한 문장에 "like"가 여섯 번씩 들어갑니다. Stanford PhD 출신이지만 강의를 따라가기 어렵고, 미국인 학생들도 무슨 말인지 못 알아듣습니다. Jae 분반을 들으면 됩니다. 그 교수님은 훌륭하다고 합니다. (Kostis 교수님을 위한 변호 한마디: Kostis 교수님은 투렛 증후군이 있어 말에 틱이 있고, 단어를 꺼내기 전에 한참 멈춰야 할 때도 있습니다. 이 수업은 슬라이드와 과제가 중심이라 강의는 보충에 가깝습니다. Kostis 교수님은 매우 친절한 분으로, Ed의 많은 질문에 직접 답해 주시고 학생들의 고민과 수업 경험을 진심으로 신경 쓰십니다. 제가 알기로 Kostis 교수님의 시험은 Jae 교수님만큼 어렵지 않습니다. 어차피 수업 자료는 모두 원래 Jae 교수님에게서 나온 것입니다. Jae 교수님은 SS 트랙의 관문이라 할 수 있습니다.)
  2. Programming Language Translators: SS 필수 과목. 업무량은 보통입니다. 프로젝트는 컴파일러 만들기입니다. 시험 난이도는 중국 대학의 대부분의 컴파일러 수업보다 낮습니다. 첫 학기에 들을 수 있습니다.
  3. Cloud Computing: 쉬운 수업. 첫 학기에 듣는 것이 가장 좋습니다. 업무량이 거의 없습니다.
  4. Introduction to Database: 쉬운 수업. 이것도 첫 학기에 듣는 것이 가장 좋습니다. 내용은 중국 대학의 데이터베이스 수업과 비슷하게 SQL 작성 + 1/2/3/4 정규형입니다. 이번 학기를 완전히 편하게 보내며 취업 준비에 집중하고 싶다면 Donald 분반을 들으세요. 이 교수님은 학기 중간에 Ed에서 "백엔드를 확인해 보니 300명 중 40명만 출석했고 평균 접속 시간은 30분, 녹화본을 본 사람은 3명뿐이다"라며 아무도 수업에 오지 않는다고 화를 내곤 합니다. 그래도 이 수업의 업무량은 여전히 아주 가볍습니다. Wu 교수님처럼 다른 강사라면 과제가 더 많고 어렵기 때문에, 이미 취업이 확정된 경우에 듣는 편이 낫습니다.
  5. Distributed Systems: MIT 수업과 동일합니다. 채점이 매우 관대합니다. 프로젝트는 (좋은 의미로) 빌려 온 것 + Columbia가 설계한 프로젝트 하나입니다. SDE 취업에 아주 좋습니다. 좋은 수업입니다.
  6. Competitive Programming: LeetCode/Codeforces 집중 훈련. 업무량이 매우 많습니다. 알고리즘 수업보다 인터뷰에 더 맞춰져 있습니다.
  7. Advanced Software Engineering: SS 필수 과목. 업무량은 보통입니다. Java로 풀스택 프로젝트를 만들어 Google Cloud에 배포합니다.
  8. UI Design: 쉬운 수업. React를 배우고 풀스택 프로젝트를 만듭니다. 최근에는 인터뷰 코더(interview coder)를 만든다는 아주 재미있는 아이디어도 나왔습니다.
  9. Advanced Algorithm: 학부 자료구조·알고리즘과 전혀 관계가 없습니다. 이 수업은 한 문장으로 요약됩니다. P > P_r일 때 성립하는 randomized algorithm을 설계하라. 「수학적 알고리즘에서 확률과 통계의 응용」으로 이름을 바꿔도 될 정도입니다. OS와 같이 듣지 마세요.
  10. Artificial Intelligence: 주로 AI와 ML 입문입니다. 기초가 있다면 어렵지 않습니다. 개념 과제 5개와 코딩 과제 5개, 중간·기말시험이 있습니다. 다소 번거롭지만 채점은 공정합니다. ML 트랙 필수 과목으로 추천합니다.
  11. Applied Machine Learning: 쉬운 수업, 업무량이 가볍습니다. 코딩 과제 5개, 중간시험 1회, 그룹 프로젝트가 있습니다. 채점이 좋습니다. 추천합니다.
  12. Software as a Service: Advanced Software Engineering과 마찬가지로 SS 트랙 필수 과목이지만, 둘 중 하나만 들으면 됩니다. Junfeng Yang 교수님이 가르치시는데 매우 좋은 분입니다. 수업 내용은 Ruby와 Rails입니다. 학기 전반부에는 Ruby와 Rails 실습 과제가 중심이고, 후반부는 그룹 프로젝트 진행 보고와 발표로 진행됩니다.

수업을 잘 고르면 Columbia MSCS 수업은 결코 쉽지 않을 수 있습니다. 제가 들은 모든 수업(UI, SE, NLP, AI 등 포함)에서 교수님들은 실제로 내용을 가르치셨고, 슬라이드만 읽는 분은 한 명도 없었습니다. 수업 자료도 매우 상세합니다. 수업 품질은 걱정하지 않아도 됩니다.

합격 정보​

중국인 40%, 인도인 40%, 나머지는 미국인입니다.

합격은 주로 GPA를 봅니다. 중국 본토 학부 출신에게 요구되는 GPA는 비교적 높고, 미국 학부 출신의 기준은 상대적으로 낮습니다. 인도 학생은 대부분 여러 IIT 캠퍼스나 VIT 출신이고 GPA는 10점 만점에 9.1-9.2 정도입니다. 보통 2년의 업무 경력이 있습니다.

비용​

커뮤니티의 비용 정보도 정확하지 않습니다. 그렇게 비싸지 않습니다. 학교에 내야 하는 금액은 약 $80K(학비 + 각종 수수료 + 보험 등)입니다. Manhattan의 월세는 약 $2,000입니다. 이 프로그램은 16개월이므로 $80K + $2,000 x 16 + $1,000 x 16 = $128K로, CMU와 대략 비슷합니다.

2025.2 업데이트: 최근 친구들도 Jump Trading, HRT, NVIDIA, Databricks, Amazon, Datadog에서 인터뷰를 보았습니다. D.E. Shaw도 Columbia에서 몇 명을 일찍 뽑아 정규직 인터뷰를 진행했습니다. 한마디로 학교가 발목을 잡지는 않습니다. 이력서에 대기업 인턴 경험이 있다면 위에서 언급한 회사의 절반 정도에서 인터뷰를 받을 수 있을 것입니다.

또한 반년을 지내 보니 New York City가 점점 더 좋아집니다. 활기가 넘치고, 다운타운에는 식당과 즐길 거리가 가득합니다. Broadway 공연은 거의 매일 매진입니다. 이곳에서는 더 다채로운 삶을 경험할 수 있습니다. 진지하게 고려해 보시기를 강력히 추천합니다. 결국 New York이 최고의 대학입니다.

TA/RA 기회​

TA 시급은 약 $24이고 주당 10시간으로 제한됩니다. 월 약 $950 수준입니다. TA가 되기 위한 요건이 아주 높지는 않지만, 다음 조건이 있으면 크게 유리합니다. 첫째, 해당 수업에서 우수한 성적(A 또는 A+)을 받았을 것. 둘째, 관련 수업이나 업무 경험이 있을 것. 이 조건을 충족하는 학생은 많고, 최종적으로 누가 뽑히는지는 교수님에게 달려 있습니다(그래서 어느 정도 운입니다). CS TA는 꼭 CS 전공일 필요가 없고, 그 수업이 얼마나 폭넓은 학생을 대상으로 하는지에 주로 달려 있습니다. 다른 전공 학생이 그 수업에서 A를 받았다면 그 수업의 TA가 될 수도 있습니다.

RA의 경우 무급 RA 자리는 꽤 쉽게 구할 수 있지만 유급 자리는 매우 드뭅니다(거의 없다시피 하지만, 자금이 특별히 넉넉한 PI를 만날 가능성을 배제할 수는 없습니다). 주변에서 유급 RA 오퍼를 받은 사람은 보지 못했습니다. Columbia CS에서 PhD 전환은 교수님의 승인만 있으면 되므로, 지도교수와 잘 맞기만 하면 PhD 전환은 문제가 되지 않습니다. PhD를 목표로 한다면 Columbia를 진지하게 고려해 볼 만하다고 생각합니다. Columbia CS PhD 학생들의 배경을 보면 거의 모두 Tsinghua/Peking 같은 최상위 학교 + IIT 출신이고, 특히 IIT 출신이 많습니다.

취업 결과 및 Data Points​

25 Summer: 최소 12명의 Columbia MSCS 학생이 Amazon 오퍼를 받았습니다.

  1. 211 CS, 1등, ICPC 은메달, Databricks 취업
  2. 회계 전공에서 CS로 전환, Adobe 취업
  3. University of Sydney(호주) CS 학부, ByteDance 인턴, AWS New York 취업
  4. CMU 학부 여학생, Meta 2022 인턴, 인턴으로 Meta 취업
  5. CUHK-Shenzhen CS 학부, 인턴 0회, Amazon 취업
  6. C9 CS 학부, ICPC 금메달, Amazon 취업
  7. 이탈리아 학부, Amazon 취업
  8. CUHK-Shenzhen FinTech, CS로 전환, 인턴 0회, Amazon 취업
  9. National Chengchi University 통계학 학사, 2022년 Amazon SDE 인턴, 2023년 소규모 회사 정규직, 이후 Amazon SDE 정규직 취업