进可攻退可守的找工神校:CMU-SV MSSE 第一学期体验

avatar 824070
zex18
13701
31
CMU MSSE-SV 属于 CMU 在矽谷分校的特别项目,跟本校区差别很大 -- 校园小,同学们相对较熟悉融洽,负责 MSSE 的也只有几位教授 (H、C、L、R、J)。 比较令人诟病的点在于在八门课内要有五门是 SE core course,剩下两门是 ECE core,最后一门是 general elective,如果不幸地只能被迫修 H 老师的课应该会很痛苦(只要避开H老师,选 L / R老师的课那应该还是会开心许多的.....)幸运地是因为近年项目人数众多,因此学校在上学期允许将一门 ECE 的课 petition 为 SE core,因此 lz 仅需要修四门 (同时如果找到老师当 RA 也可以再抵掉一门,理想的话紧需要三门)。另一个不错的点是因为在 Silicon Valley campus,虽然少了校园氛围,但学校常常在节日时举办聚餐,也多了蛮多公司参访的机会(学校之前请过 Google 的校友回来分享), lz 也趁着课余时间蹭了好多 FAANG 学长姐的公司食堂,Networking 的机会还是非常多的。(最重要的是,住湾区虽然贵但真的太幸福啦!!

lz认为这个项目最大的优势在于:8门课就可毕业,因此可以选两个学期 (4+4) 或三个学期 (3+3+3) 毕业(NG、intern可同時投)-- 有工作经验想早点毕业的,可以当作 MEng 来上,一学期上四门课,九个月毕业直接找 NG ,还可以顺便上两三门本校区的好课 (Computer System, Cloud Computing, Distributed System......);若实在像今年一样遇到 hiring freeze 找 NG 不理想,也可以 drop 一门找 intern, 拼个 return offer 后,再给自己多一个学期找 NG 的机会。因此在找工方面,可谓是进可攻退可守。

lz 比较幸运,靠着以前 intern experience + CMU 水硕的名声拿到了几个 NG offer,因此决定直接拼 4+4九个月毕业,以下为第一学期修课内容(结果好课都是匹兹堡本校区的课哈哈

18-613: Foundations of Computer Systems (ECE => Petition to SE Core)
★★★★★ (5/5) Instructor: Greg
语言:C。 要求:7 labs + 12 HWs + Final Exam + recitation attendence。匹兹堡本校区镇校神课,每学期花25000不上一下这门课实在是太亏了。这门课主要在与底层 computer system 的原理,从最基础的 C 语言语法(整型、浮点数)、到 assembly、到最后的 network programming。内容跟本科学的计组、计网、操统会有所重复,但是 lab 很深入,想拿满分还是要花一些精力的(比如解 assembly 拆炸弹的 bomb lab、利用 buffer overflow & return oriented programming 钻漏洞的 attack lab、一步一步地省空间优化 memory allocator 的 malloc lab)每个都能学到一些新东西,每周也都有小班课 & OOH,助教很认真负责,体验贼佳。只要乖乖把 lab 跟作业做完,期末考得都跟历届差不多,有好好读拿A不难。学好这门课,面试的时候被问到相关的八股文也能讲得侃侃而谈,推荐所有来 CMU-SV 的学弟妹上这一门课。 最后一周 Greg 本人居然飞来 SV 校区 还请我们吃披萨,真的是超级无敌 nice 的老师!

18-631: Introduction to Information Security (ECE)
★★★★☆ (4.5/5) Instructor: Jia
语言:Python。要求:6 HW + 3 quiz + poster + attendence。匹兹堡本校区的远程课(这学期开始改成实体投影了)。这门课把网安的内容从头到尾大致上都讲了了,不过大多是概念为主,没有很深入的具体算法。作业则是 CTF,融合了 AES、buffer overflow attack、access control、Side Channel Attack、XSS attack、SQL injection attack、hashing 等各种算法的应用与实作,对于不熟悉网安但想学点基础知识的同学很有帮助。三次课堂考试是 open book,整体也不难,平均多在80分,只要有好好上课应该都可以拿高分;关键在于作业的 writeup 要看清楚要求并好好写(CTF / auto grader只是一小部分,大多数分数还是在于 writeup 有没有把思路跟方法解释清楚)有几次作业没时间马马虎虎交上去就被扣了好多分数 XD
最后因为大家都很高分,所以被 curve down 了一个等第(只能说 CMU 实在是太卷了呀),但还是学到很多,尤其在最后组队做 poster 的时候也能够学到新知识,老师的 feedback 也很中肯切实,整体而言体验还是挺好的!

18-793: Image and Video Processing.
★★★★☆ (4.5/5) Instructor: Aswin
语言:Matlab / Python。要求:11 HW + midterm + final exam。匹兹堡本校区的投影课,上课內容包含图像成像的原理,还有传统的图像处理的数学算法(如线性代数、最小二乘法求解极值、线性算子与逆运算、傅立叶变换、雷登变换、离散小波变换、凸优化等...)在最后几周会讲一些 deep learning。作业一半是证明题,一半是编程题,作业量不大,大概一周 3-4 小时都能解决(且可以 drop 两次),助教也会在小班课的时候给一些解题上的提示、或是给一些作业的 starter code。期中开卷,期末闭卷,给分挺好的,最后有被 curve up 到 A,也能学到许多新知识,只是教授的口音 + 自己的数学不夠好,有时候会有点痛苦 XD

18-652: Foundations of Software Engineering (SE Core,必修课)
★☆ (1.5/5) Instructor: Hakan & Cecile
语言:HTML + CSS + Javascript. 要求:individual project * 2 、 group project demo * 5 、presentation * 2 、video * N 、 pre class quiz * N、in class quiz * N 、 Final Exam 事情贼多,太多吐槽点了。整个学期最主要就是组队做一个 chatroom,前端纯手撸不能用框架已经很蛋疼了,但这门课最烦的点在于要求贼多(除了 coding 外还有一堆 docs & presentation & video & quiz),还有一堆奇奇怪怪的 requirements:比如说要 RESTful 结果好多 use case 根本没办法 stateless、有奇怪的 use case 强迫大家 refactor、还有其中一个 iteration 要自己实现新 feature ,但强迫整组都要有一个具体的 theme 还不能有 dependency......跟教授询问后,教授说这只是为了强迫我们 "练习" :) 看来是要我们熟悉以后工作后遇到的各种奇奇怪怪的 requirements。
评分的点也很奇妙,基本上很看 demo 当时的运气(有没有bug-free)以及报告的内容对不对 instructor 的胃口;期末考占比很重,平均分是50且不调分,所以想拿高分与其卷项目,不如期末考多通灵考高点(XD)总之,虽然这门课是必修,但我认为把时间花在这门课上完全不值得,还不如花时间刷题面试找个好工作能学到更多(就我三段实习经验来说,课上用到的 SE technique 如 scrum + kanban 都会用到,但不会有这些奇奇怪怪的 requirements :) 。反正因为事多、平时分数也多,整体拿个 B / B+ 还是不难的,就水过吧,至少这门课不会当人。

18-989: Introduction to Graduate Study (新生必修课,一學分)
★★★ (3/5) Instructor: Brittany
新生必修课,大概就是要参加 career service 写心得、阅读相关主题 (Gender / LGBTQ / Mental Health等) 的 TED Talk 或文章并写相关心得。对于非美本来说其实有些内容还不错,可以了解这边的文化,但问题在于CMU 繁忙的课业压力,根本没有心力好好写心得......
据说这门课现在改成 in-person 还要点名,学弟妹辛苦了。(u1s1, Brittany 作为 advisor 真的会一篇一篇读我们的心得, lz 在找工压力大的时候曾经写小作文吐苦水,还被 Brittany关心, 给了好多零食小点心,要我放轻松压力不要这么大,算是非常有诚意了 LOL

找工 outcome:本届较为熟悉的10个同学中有8个已经上岸。小校区的好处是大家感情比较紧密融洽,也都会互相 mock interview 互相帮助,体验算是相当不错。

不知不觉就第二学期了,这学期的四门课是 15319 cloud computing + 18664 Software Refactoring + 18668 Data Science + 18653 Software Design and Archetecture,虽然要上三门 core courses,但幸运地是都没有 H 老师的课,目前第一周感觉体验也都贼好,希望五月能顺利毕业并开始社畜人生!
  • 80
31条回复