UCSD MSCS(CS75)两学期就读体验(选课,找工,生活,以及给新生的建议)

20746
22
这篇帖子主要是给即将入学的新生一点建议,以及选offer时能有一些参考,正好马上快415了。现在这个时间对于我来说算一个milestone,刚结束Winter学期,刚旅完游回来,刚拿到实习offer,看到同学都写了第二学期的就读体验,我也跟着写一下。体验这种东西是非常主观的,所以希望大家辩证的来看。我之前也写过UCSD就读体验(instant.1point3acres.cn),上一篇帖子里写过的内容就不再重复了。当时正处于找工焦虑期,和现在是两种截然不同的心态,大家可以结合在一起来看。
【项目介绍】
具体的项目介绍在官网上写的很详细(cse.ucsd.edu),这里就以FAQ回答一下高频问题。
Q:CS76和CS75有什么区别?
A:没什么区别,就学位证不一样,CS76第二学期可以直接转到CS75,如果不转的话,有三门depth课程要选Computer Engineering方向的课。
Q:项目时长?
A:4-6个学期,可以根据自己情况选择毕业的学期,以往Fall(12月)和Winter(3月)毕业的居多(主观感受,没统计过)。
Q:毕业要求?
A:修完10门课,3门不同方向的breadth,3门同一个方向的depth,4门elective(thesis track是8-12学分的research),具体见上面的链接。
Q:项目开销?
A:算了一下我目前的开销,3个学期学费+2个学期房租生活费等 = 5w3 美元左右。生活状况:一周大概5天是在家和舍友做饭,一周偶尔出去吃一两顿,放假会去周边旅游,没有什么特别大的开销。

【课程介绍】
UCSD是quarter制,因此课程workload相对于semester制的学校会稍大一点,所以每个学期要硬课水课搭配一下,不然会过的很难受。这里主要介绍一下我上过的课。

CSE 240A - Principle of Computer Architecture - Zhao, Jishen (水课必上)
赵菩萨的240A workload十分小,上课可以不去,因为课上讲的是额外的内容,不是作业和考试范围,作业考试看看PPT就会做了。课程内容和本科的组成原理、体系结构类似。
Assignment:包括2次Homework,1个Reading Assignment,1次take-home midterm,1个Final Project(复现Branch Prediction),没有期末考试。
Grading:A+ 0%,A 89.3%,A- 8.2%,B+ 1%,B 0.5%

CSE 232 - Principles of Data Base Systems - Yannis (一般,不太推荐)
Yannis口音稍微有点重,我个人不太推荐他的232,听说Arun Kumar讲的更好一些。课程主要讲的是数据库的理论部分,没有写代码,也没有project。
Assignment:第一周有个Pre-requisite考试,考SQL基础,占20%,过了就满分,不过就0分;1个midterm,1个final
Grading:A+ 11.2%, A 29.6%, A- 9.2%, B+ 10.2%, B 19.4%, B- 10.2%

CSE 258 - Recommender System and Web Mining - Julian McAuley(水课必上)
蛮喜欢这个老师的,很有趣,讲的很棒,还见过他直播弹钢琴。课程内容比较简单,没基础也能上,这学期主要讲的是推荐系统、协同过滤、以及ML的基础内容,给分十分友好。
Assignment:4个Homework(可以drop一个),Assignment 1 - Kaggle刷榜,Assignment 2 - 小组项目,1个Midterm (Take-home)
Grading:A+ 51.3%,A 32.3%,A- 11.1%,B+ 1.8%,B 1.8%

CSE 203B - Convex Optimization Algorithms - CK Cheng (一般,不太推荐)
为了满足Breadth里面Theory要求才选的课,课程很难,但是给分很水。教授人很好,最终grading的方式、考试时间都是在Piazza上大家投票决定的。
Assignment:4个Homework,1个Take-home midterm,1个Final Project(可以组队)
Grading:A+ 2.1%,A 82.3%,A- 8.2%,B+ 4.5%

CSE 224 - Graduate Networked Systems - George Porter (硬课,十分推荐!!!!)
UCSD CS系的强项是System的课,Porter的这门课真的是裂墙推荐,我靠着这门课的project拿到了实习的offer。Workload稍大,一共6个project,用Go语言实现HTTP 1.1的一个子集,一个类似于Dropbox的东西,然后结合Raft算法实现分布式存储。这门课的内容很有用,而且可以写在简历上。
Assignment:6个Project
Grading: A+ 60.8%, A 16.2%,A- 9.7%,B+ 3.6%,B 1.8%

CSE 251A - ML: Learning Algorithms (水课必选)
一些ML基础内容,我全程没听过,但这并不妨碍拿A+,内容非常基础,没有期末考试
Assignment:5个quiz(drop最低分),3个project(drop最低分)
Grading:A+ 44.7%,A 53.1%,A- 1.8%

【找工】
根据之前同学的不完全统计,上岸率在70%左右,考虑到最近很多人(比如我)也收到了offer,所以总体上岸率会更高。今年找实习的难度比往年高不少,有很多20fall defer的选手。
我是Winter才开始陆续收到面试,在Fall一个面试都没有,初步估计的原因可能是因为UCSD CS人太多?问过在人少的学校的同学,他们都表示不缺面试。
当然,上岸这么晚的主要原因还是因为我太菜了,去年2月份收到UCSD的AD之后就一直在玩,我同学拉着我刷题和Mock interview我都没理,感觉还早不着急,结果9月份已经有很多同学收到offer了,我才开始陆续投简历,当时就已经晚了。以至于整个找工进度就延后了许多,每天求着亚麻赶紧捞我。Winter虽然收到了微软、TikTok等公司的面试,但是要么面挂了,要么已经招满了,面完之后就没位置了,好不容易才收到一个startup的offer。所以,22Fall的新生要抓紧时间刷题、改简历、找实习了。

【建议】
请珍惜那个一直叫你mock interview的朋友!!如果能重来,我的timeline应该是这样的:
4月份-6月份: 刷题、改简历、找同学mock
7月份-8月份: 有些公司已经开始放出summer internship的岗位了,可以开始投简历了
9月份-11月份: 找实习的黄金时期,过了这个时期后面真的就是Hard模式,有可能你面的再好,也没有岗位了。

【生活】
在之前的帖子里面讲过了,就不再赘述了。我同学的帖子讲的蛮不错的,还带图片,可以参考一下:
instant.1point3acres.cn

【Reference】
instant.1point3acres.cn
instant.1point3acres.cn