UCSB MS ECE就读体验和找工碎碎念
522026
最近毕业了,看地理没什么帖子介绍UCSB MSECE的项目,也看了地理不少帖子,现在写一个就读体验回馈一下地里。
首先,我是在2022年入学的UCSB MS ECE的项目,本科是一个不知名的双非学校的2+2项目,后面两年是在美国念的,实际上是念了三年因为语言没过 = =,美国学校和国内学校的GPA是分开算的,美国学校这边GPA是3.9。录取的track是Computer Engieering。UCSB MS ECE是一共有三个Track,我录取的是Computer Engineering。我就根据Computer Engineering track来大概说一下选课和就读体验,最后也会说一下找工作的事情。
我本科学的是EE,在就读研究生之前也就会写一些嵌入式的C++,对数据结构啥的都没啥总体的理解。因此,我第一学期选择了数据结构CS 130A(选研究生课程和本科课程的事情后面会说)和Advanced Computer Architecture。第一学期总体workload还好,如果有同学对数据结构掌握的不是很扎实建议上一下这节课,我上的是Eric的CS 130A,我觉得他讲的很好,就是学期一开始due会有点多,但是坚持下来的话,课程上完感觉对数据结构和算法就比较精通了。它这个课程其实更多的是偏向于算法,DFS, BFS,Union Find,Dijkstra等等。强烈建议转码的同学上这个课程,此外,我后面还修了CS 130B。这里面会讲一些不怎么常用的算法,其实上下来也感觉挺好的,虽然这门课上讲的很多算法以后找工作面试的时候不怎么会用的上。然后CS 170也就是本科生课程的操作系统,基本是选不上的,因为要优先让本科生选,本科生选完了还需要排waitlist。反正我抢了两个学期就放弃了。但是也可以去旁听,因为UCSB的教授都比较好说话,都会给你course material的access,其实也跟选上没什么区别。CS 176A计算机网络也讲的很好,我上的是Belding的,全程跟下来的话感觉应付找工作的面试应该没什么问题。这是我觉得几门转码比较关键的课程。如果有转码的打算,一定一定入学的第一学期就要去上CS 130A(如果你对数据结构和算法掌握不那么熟练的话)。
另外,还有几门课程我觉得还不错的。Daniel的CS 190A。这门课workload比较小,就是一个周会有两个题,在kattis上面写,基本就是Leetcode hard的难度,除了这两个题基本没什么workload。workload比较小的同时,还能学到一些不怎么常见的算法(其中一个算法我后面面试的时候还考到了)。每年Fall学期的CS 291A,这个课程是Appfolio的SDE来上课,是一个Project based的课程,最后的project是用Ruby on Rails和React开发一个Full stack然后部署到AWS上,如果上的好的话可以拿到内推的机会,这门课用的技术栈听说好像就是Appfolio的技术栈。我把这个项目写在简历上收到了两次Appfolio的面试,都是NG的岗位,但是都面挂了(我比较菜。。。)。CS 184 Introduction to Mobile Application Development,这个课程是小组合作开发一个移动端的应用,也是可以写到简历上的那种。上下来这两门课程的话,如果简历内容不太够,用这两个来填满简历其实也还ok。
然后再说一下UCSB选课的机制。UCSB MS ECE最多可以有5门课程可以选本科生的课程,这点对我来说比较好,研究生level的课程更多的是理论,我觉得本科生的课程实践性更强一些。然后关于Computer Engineering这个方向,还是需要选一个major和一个minor,major的话我选的是Computer Architecture。如果想多学一些machine learning的东西,可以选Machine Intelligence/Learning这个track,如果想多学点系统的东西,可以选Computer Networks and Distributed Systems这个track,minor的话就随便选就好了,就只需要两节课的要求。
接着说一下UCSB的毕业机制,正常毕业的话大概就是两年,然后毕业方式一般会选择comprehensive exam。这个只要认真复习了肯定能过,就不多说了。正常来讲,是两年毕业的。但是我们学习I20给了4年,这也就意味着最长可以四年毕业,但是成本有点高。目前来看最好的方法是,两年的时间完成所有的课程要求,然后可以留一门考试(如果两年结束还没找到工作的话),到第三年的秋季学期再考,这样你第三年的秋季学期可以申请filling LOA,就是可以不交学费,但是学生身份还是有效的,然后你只需要准备考试的东西,有大把的时间给你找工作(当然最好还是准时毕业准时上岸,这种情况只适应于第二年结束还没有找到工作,就像我这种比较菜的)。而且如果你是第三年12月份毕业的话,这样还能算作第三年的NG(NG这个东西好像美国卡的不是那么严格,听我同学说国内找工作卡的比较严格)。
关于找工的情况也大概说一下吧。这两年找工确实很困难。我大概是投了得有大几千份简历,然后收到了七八个面试的样子。UCSB的Career Fair比较小,能投的厂一年大概就那么两三个。找工其实不要只局限于linkedin投递,有时候connection确实会更高效。我的第一份实习就来自于校友的一个startup,还是很幸运被校友的startup收留,我简历上至少有了第一份工作经历。找工最重要的一点我觉得还是坚持,我基本断断续续投了一年多的简历,中间也怀疑人生过,但是颓废几天之后还得继续爬起来投。刷题的话最重要的是坚持,有时间的时候就多刷一点,没时间的话就刷个两三道保持一下手感,个人感觉如果一两个星期不刷,就忘的差不多了。现在大环境不好,刷题数量也得足够多才行,感觉至少得三四百道起步。总而言之我觉得不到最后一刻,就一直坚持就好了,总会有机会的,机会来了把握住,直接就上岸了。也不要让投递简历没有回应影响情绪,这是如今找工的常态
如果还有什么问题的话,欢迎在评论区留言,我看到都会给大家解答的。
写了这么多,如果觉得有用的话,跪求大家加小弟加点米,谢谢大家。
首先,我是在2022年入学的UCSB MS ECE的项目,本科是一个不知名的双非学校的2+2项目,后面两年是在美国念的,实际上是念了三年因为语言没过 = =,美国学校和国内学校的GPA是分开算的,美国学校这边GPA是3.9。录取的track是Computer Engieering。UCSB MS ECE是一共有三个Track,我录取的是Computer Engineering。我就根据Computer Engineering track来大概说一下选课和就读体验,最后也会说一下找工作的事情。
我本科学的是EE,在就读研究生之前也就会写一些嵌入式的C++,对数据结构啥的都没啥总体的理解。因此,我第一学期选择了数据结构CS 130A(选研究生课程和本科课程的事情后面会说)和Advanced Computer Architecture。第一学期总体workload还好,如果有同学对数据结构掌握的不是很扎实建议上一下这节课,我上的是Eric的CS 130A,我觉得他讲的很好,就是学期一开始due会有点多,但是坚持下来的话,课程上完感觉对数据结构和算法就比较精通了。它这个课程其实更多的是偏向于算法,DFS, BFS,Union Find,Dijkstra等等。强烈建议转码的同学上这个课程,此外,我后面还修了CS 130B。这里面会讲一些不怎么常用的算法,其实上下来也感觉挺好的,虽然这门课上讲的很多算法以后找工作面试的时候不怎么会用的上。然后CS 170也就是本科生课程的操作系统,基本是选不上的,因为要优先让本科生选,本科生选完了还需要排waitlist。反正我抢了两个学期就放弃了。但是也可以去旁听,因为UCSB的教授都比较好说话,都会给你course material的access,其实也跟选上没什么区别。CS 176A计算机网络也讲的很好,我上的是Belding的,全程跟下来的话感觉应付找工作的面试应该没什么问题。这是我觉得几门转码比较关键的课程。如果有转码的打算,一定一定入学的第一学期就要去上CS 130A(如果你对数据结构和算法掌握不那么熟练的话)。
另外,还有几门课程我觉得还不错的。Daniel的CS 190A。这门课workload比较小,就是一个周会有两个题,在kattis上面写,基本就是Leetcode hard的难度,除了这两个题基本没什么workload。workload比较小的同时,还能学到一些不怎么常见的算法(其中一个算法我后面面试的时候还考到了)。每年Fall学期的CS 291A,这个课程是Appfolio的SDE来上课,是一个Project based的课程,最后的project是用Ruby on Rails和React开发一个Full stack然后部署到AWS上,如果上的好的话可以拿到内推的机会,这门课用的技术栈听说好像就是Appfolio的技术栈。我把这个项目写在简历上收到了两次Appfolio的面试,都是NG的岗位,但是都面挂了(我比较菜。。。)。CS 184 Introduction to Mobile Application Development,这个课程是小组合作开发一个移动端的应用,也是可以写到简历上的那种。上下来这两门课程的话,如果简历内容不太够,用这两个来填满简历其实也还ok。
然后再说一下UCSB选课的机制。UCSB MS ECE最多可以有5门课程可以选本科生的课程,这点对我来说比较好,研究生level的课程更多的是理论,我觉得本科生的课程实践性更强一些。然后关于Computer Engineering这个方向,还是需要选一个major和一个minor,major的话我选的是Computer Architecture。如果想多学一些machine learning的东西,可以选Machine Intelligence/Learning这个track,如果想多学点系统的东西,可以选Computer Networks and Distributed Systems这个track,minor的话就随便选就好了,就只需要两节课的要求。
接着说一下UCSB的毕业机制,正常毕业的话大概就是两年,然后毕业方式一般会选择comprehensive exam。这个只要认真复习了肯定能过,就不多说了。正常来讲,是两年毕业的。但是我们学习I20给了4年,这也就意味着最长可以四年毕业,但是成本有点高。目前来看最好的方法是,两年的时间完成所有的课程要求,然后可以留一门考试(如果两年结束还没找到工作的话),到第三年的秋季学期再考,这样你第三年的秋季学期可以申请filling LOA,就是可以不交学费,但是学生身份还是有效的,然后你只需要准备考试的东西,有大把的时间给你找工作(当然最好还是准时毕业准时上岸,这种情况只适应于第二年结束还没有找到工作,就像我这种比较菜的)。而且如果你是第三年12月份毕业的话,这样还能算作第三年的NG(NG这个东西好像美国卡的不是那么严格,听我同学说国内找工作卡的比较严格)。
关于找工的情况也大概说一下吧。这两年找工确实很困难。我大概是投了得有大几千份简历,然后收到了七八个面试的样子。UCSB的Career Fair比较小,能投的厂一年大概就那么两三个。找工其实不要只局限于linkedin投递,有时候connection确实会更高效。我的第一份实习就来自于校友的一个startup,还是很幸运被校友的startup收留,我简历上至少有了第一份工作经历。找工最重要的一点我觉得还是坚持,我基本断断续续投了一年多的简历,中间也怀疑人生过,但是颓废几天之后还得继续爬起来投。刷题的话最重要的是坚持,有时间的时候就多刷一点,没时间的话就刷个两三道保持一下手感,个人感觉如果一两个星期不刷,就忘的差不多了。现在大环境不好,刷题数量也得足够多才行,感觉至少得三四百道起步。总而言之我觉得不到最后一刻,就一直坚持就好了,总会有机会的,机会来了把握住,直接就上岸了。也不要让投递简历没有回应影响情绪,这是如今找工的常态
如果还有什么问题的话,欢迎在评论区留言,我看到都会给大家解答的。
写了这么多,如果觉得有用的话,跪求大家加小弟加点米,谢谢大家。
