前景大好的CS专业牛校全方位解读
在2017年PayScale美国大学专业毕业薪资排名上,我们可以看到,虽然CS专业位列第8,但其毕业初期的薪水就高达8W+美元,是当之无愧的高薪职业。
而且,根据CareerCast.com的一项最新研究表示:
数据科学家和软件工程师等计算机领域的工作在未来七年中增长潜力最大,同时,医疗保健等职业是另一个主要增长领域。
美国的CS专业向来是竞争最为激烈的专业,今天就为大家详细介绍一下计算机科学专业。
CS专业学什么?有哪些分支?
CS,即Computer Science,计算机科学专业。
一旦决定了申请Computer Science(CS),我们要做的第一步可能是去打开一个美国大学的网站,打开了大学的网站后,产生的第一个困惑就是Computer Engineering(CE)还是Computer Science?两者的区别是什么?因为我们很快就会发现很多美国学校的EE和CS/CE是合并在一起的,所以许多研究方向的跨学科性非常强,无法简单地归类为是属于计算机还是属于电子的范畴。
CS和CE这两个项目非常相似,两个项目都学习编程和软件开发的基础学科,两者之间最基本的区别可以归结为理科(Science)和工科(Engineering)的区别。Science的意思是知识或学问,它是来自拉丁单词“to know”,Engineering则是来自拉丁单词“to contrive”。因此从操作层面来看两者的区别是CE的学生拥有对电路、电子学和VLSI设计的非常深厚的认知,而这些都是现代计算机实际结构中至关重要的;CS的学生学习的是代数、计算和编程语言,这些构成了高级程序设计和计算的基础。但是这样的描述事实还是不够准确,因为比如SE(Software Engineering )分支有时候会放在CE下,有时候又会放在CS下,这也要具体情况具体分析,具体学校具体对待。
我们可以这样来理解:广义的CE就是应用性的Computer相关的,CS会更理论一些。这也就是为什么SE(软件工程)是软件相关,可是却会放在CE(计算机工程)下的原因,SE是用工程的思维去开发一个软件项目的方式方法的学习。另外一方面,有一些狭义的划分,SE又会放在CS下,这样的划分就是按照软硬的划分了,CS是软,CE是硬。但是核心都是Computer。因为每个学校都有自己的划分方式,所以没有统一的标准。同时,软硬现在已经你中有我,我中有你了。比如说,CPU里是有指令集的,离开了指令集,CPU也没有办法工作。而先进的软件都会针对硬件进行优化,没有足够的优化,就会出现多年前经常会出现的兼容问题了。这是两者之间的区别。
CS在计算机系统和软件的理论和设计,以及重要的应用领域培养学生。CS主要的研究领域和学习领域包括14个主要方向:
-
系统与网络 (System and Network)
-
人工智能与机器人 (Artificia Inteigence and Robotics)
-
计算机隐私与安全 (Privacy and Security)
-
编程语言 (Programming Anguage)
-
数据库 (Database)
-
计算机图形学 (Computer Graphics)
-
生物信息学与计算生物学 (Bioinformatics and Computationa Bioogy)
-
算法 (Algorithm)
-
计算机理论 (Computer Theory)
-
科学计算 (Scientific Computing)
-
软件工程 (Software Engineering)
-
计算机视觉 (Computer Vision)
-
计算机体系结构 (Computer Architecture)
-
人机交互 (Human Computer Interaction)
具体分支和国内学生的申请热度如下:
Theoretical CS |
分支方向 |
申请热度 |
计算理论(Theory of Computing) |
★☆☆☆☆ |
|
算法与数据结构 (Algorithms and Data Structures) |
★★☆☆☆
|
|
程序语言 (Programming Languages) |
★★★★☆
|
|
Applied CS |
人工智能 (Artificial Intelligence) |
★★★★★
|
计算机体系结构 (Computer Architecture) |
★★☆☆☆
|
|
计算机图形学与可视化 ( Computer Graphics and Visualization ) |
★★★☆☆ |
|
计算机安全与密码学(Computer Security and Cryptography) |
★☆☆☆☆
|
|
科学计算(Computational Science) |
★☆☆☆☆
|
|
计算机系统与计算机网络(Computer Systems & Networks ) |
★★★★☆
|
|
数据库(Databases) |
★★★★☆
|
|
软件工程(Software Engineering) |
★★★★★
|
计算机科学专业学校介绍
对于一般的美国院校来说,计算机科学只是设置为一个系,即Department of Computer Science,经常是从属于工程学院。然而CMU对CS的建设非常有诚意,直接就开设成为了一个院,School of Computer Science。
下属有Computer Science Department、Robotics Institute、Institute for Software Research、Human-computer Interaction Institute、Language Technology Institute、Machine Learning Department、Lane Center for Computational Biology七大研究和教学机构。
基于研究人员的庞大,CMU涵盖了计算机科学的所有研究方向,不单细致地做每一个研究方向,并且将这些研究方向的应用也有较为深入的研究。
主校区位于宾州匹兹堡,由匹兹堡国际机场约40分钟车程即可抵达。邻近美丽的市立公园以及住宅区,距匹兹堡市中心仅3英里,与匹兹堡大学相邻。
匹兹堡曾经是世界钢都,现在适应了过往繁荣钢铁业的衰退,经济主体已经转向了高科技产业,如机器人、卫生保健、核能工程、生物医学科技与金融服务等。CS毕业生在当地有很广泛的就业市场。
MIT的Electrical Engineering & Computer Science(EECS)是多数该领域人士梦寐以求的地方,EECS院系是MIT的工程学院里最大的院系,拥有大概700多名博士学生。它下面设有四个学位:
-
Master of Science为博士学位之必须阶段,但是学校并不提供最终学位为硕士的学位;
-
Master of Engineering,仅仅EE,CS自己的本科生可以申请;
-
Electrical Engineer and Engineer in Computer Science;
-
Doctor of Philosophy and Doctor of Science;
要注意的是MIT的EE,CS在录取学生的时候,是直接录入到PhD的,学校没有硕士的录取。于是申请难度就是PhD的申请难度,更别提这所学校在该领域的无人不知无人不晓的深厚的造诣所导致的申请难如登天了。必须拥有非常深厚的研究潜力和功力方有一丝希望。
斯坦福大学的MS Program in Computer Science是非常灵活的,学校没有固定的课程要求,学生可以与导师沟通后自行设计自己的学习课程,因此学生可以自由选择自己想专攻的方向,例如网络、机器学习或算法,甚至可以选择不专攻任何方向。
当然,这并不意味着学生在自己创造他们想专攻的领域时没有要求,学校也设定了一些要求,比如要满足成绩的要求、理论基础、人工智能的要求、选修课的要求等。所以自由是设定了条件的自由,这种方式会更适合对自身的研究方向和学习方向有着明确的目标,或者对于自己有着明确规划的学生,并不是特别适合对自己的兴趣爱好和未来定位完全没有概念的学生。学生可以从以下10大分支方向中选择自己的专攻方向:
-
Artificial Intelligence 人工智能
-
Biocomputation 生物计算机
-
HCI 人机交互
-
Mobile and Internet Computing 移动与互联网
-
Information Management and Analytics 信息管理和分析
-
Real World Computing 真实世界计算
-
Security 安全
-
Software Theory 软件理论
-
Systems 系统
-
Theory 理论
为了让学生更快地进入到学习和研究的状态,许多学生也需要选修额外的先行课程,比如多数学生就要学习Introduction to Computer Systems(计算机系统入门),学生们可以在入学前的暑假通过远程在网络上自己学习,相信这对即将入学者是有利无害的。
由于该校地处硅谷,所以历来被认为是最注重理论联系实际的典范,也由于其地理位置和其优秀的学术背景,申请竞争相当激烈。
在本科的学科背景要求方面,学校并不要求必须是CS专业才能申请,但是却要求学生必须有非常强的定量分析能力。硬件中的托福和GRE的要求也是相当高,托福要求113分,GRE则要求占到90%的比例。
Berkeley的Electrical Engineering and Computer Science(EECS)拥有一长串的荣誉奖项,在EECS学术界有着非常强的影响力,我们不在此一一列举,该院系有500名硕士研究生和博士研究生,其研究方向有如下19个分支:
-
Artificial Intelligence 人工智能
-
Biosystems & Computational Biology 生物系统和计算机生物学
-
Communications & Networking 通信与网络
-
Computer Architecture & Engineering 计算机结构和工程
-
Control, Intelligent Systems, and Robotics 控制、智能系统和机器人
-
Database Management Systems 数据库管理系统
-
Design of Electronic Systems 电子系统设计
-
Education 教育
-
Energy 能源
-
Graphics 计算机图形
-
Human-Computer Interaction 人机交互
-
Integrated Circuits 集成电路
-
Micro/Nano Electro Mechanical Systems 微型电子机械系统
-
Operating Systems & Networking 操作系统和网络
-
PhysicalElectronics 物理电子学
-
ProgrammingSystems 编程系统
-
Scientific Computing 科学计算
-
Security 安全
-
Signal Processing 信号处理
-
Theory 理论
这样的一所牛校在申请要求上与其它学校比起来并没有额外要补充的,除了硬件条件外,学校虽然不要求申请者具备理工背景,可是学校是建议学生提前修读过下面的课程的:
-
微积分
-
线性代数和微分方程
-
离散数学和概率论
-
计算机程序结构和解释
-
数据结构
-
机械结构
-
数字化系统的构成和设计技术
-
操作系统和系统编程
-
编程语言和编译程序设计
…………
当然,这些不是必须的,只是学校给出的一些建议。
靠近硅谷的地理位置不用说,无论是实习还是就业都有着得天独厚的优势。
Illinois的CS既培养研究性人才,又培养进入Industry的人才,每年CS系都会收到大约1500份申请,可是只会录取大概150名学生,这150名学生包括PhD、MS、MS Bioinformatics和Professional MCS,所以可想而知其竞争有多激烈。其CS方向包括如下几个:
-
Algorithms & Theory 算法和理论
-
Artificial Intelligence 人工智能
-
Architecture, Parallel Computing, and Systems 结构、并行信息处理技术和系统
-
Bioinformatics and Computational Biology 生物信息学和计算机生物学
-
Database and Information Systems 数据库和信息系统
-
Graphics, Vizualization, and HCI 计算机图形、视觉和人机交互
-
Systems and Networking 系统和网络
-
Programming Languages, Formal Systems, and Software Engineering 编程语言、形式系统和软件工程
-
Scientific Computing 科学计算
在申请要求上,对于先行课的要求是如果本科不是学CS的学生必须有充足的背景基础:计算机编程、算法和数据库结构、计算机组织和计算理论(相当于Illinois的计算机科学入门、数据库结构、离散结构、计算机结构)。硬件条件也是要求很高,托福要求102,并且口语部分要求24分。
虽说UIUC身居玉米地的地理位置不占先天优势,不过从UIUC计算机科学专业毕业的学生在就业市场上依然表现不俗。
宾大的CS是和信息科学并在一起的Computer and Information Science。纵观计算机科学和技术的发展,宾大的 CS 起到了里程碑的作用,因为世界上第一步现代电子计算机“艾尼阿克”(ENIAC)诞生于1946年2月14日的宾大。
该系主要的研究内容包括人工智能、算法、信息管理、软件原理、系统以及计算机理论,其中阵容强大的主要是人工智能、信息管理和软件原理三个方向。
宾大在宾州的费城——美国第六大城以及宾夕法尼亚州人口最多和面积最大的城市,费城有着较为发达的高科技产业和金融服务业,有自己的证券交易所。
诸如网络与有线电视公司Comcast、保险公司CIGNA、林肯金融集团等这些实力雄厚的公司也位于这里,这对于CS毕业生提供了很大规模的人才需求。因此,费城对于宾大的CS毕业生来说就业的机会也是比较多的。
哥大的CS系成立于1979年,研究的领域涵盖了CS领域的各个研究方向,包括计算生物学、计算机工程、算法和用户界面、机器学习、网络、自然语言处理和语言、安全与隐私、软件系统、计算机理论、视觉与机器人等等。
共开设有25个研究小组和实验室。其中,实力较强的专业方向包括机器学习、安全与隐私、软件系统以及计算机理论。
哥大位于纽约曼哈顿,它的声誉以及地置赋予了毕业生的多样的就业去向,包括学术界、工业界;此外,该校有很多工科毕业生包括CS专业的毕业生经常会在该校转读金融类课程以后涉足纽约金融业,有很多选择。
纽约作为世界最大经济中心、金融中心、传媒中心,对于CS人才有很大的需求。金融行业对于软件工程师、 IT分析师、数据管理员、信息安全专家等人员需求非常大,而传媒行业对于计算机网络、互联网管理员、网络维护专家等人才也有非常大的需求。
除了NYC,纽约州能够提供给CS学生就业机会的地方还有:拥有发达的计算机和电子工业的宾汉姆顿、银行业发达的布法罗等城市。
另外,纽约距离费城只需要不超过2小时的车程。费城对于CS毕业生来说就业的机会也是比较多的。
UCSD的CS近年发展迅猛,拥有一流的研究中心和设备,招募了好几个学术大牛,学术氛围很好。System是UCSD的强项。
UCSD的研究方向包括:Algorithms and ComplexityArtificial Intelligence, Bioinformatics, Computer-Aided Design, Computer Vision, Data and Knowledge Base Systems, Embedded Systems, Graphics, Meaning and Computation, Network Security and Cryptography, Parallel and High-Performance Computation, Processor Architecture and Compilation, Software Engineering, Systems and Networking。
UCSD校园位于La Jolla,San Diego北边的一个下属行政区, 离San Diego市中心还比较远。San Diego确实是一个气候宜人、景色优美的地方。
由于靠海,维度又比较靠南,所以冬天不会太冷、夏天不会太热,有加州的充足的阳光,又比北加州气候温和,所以San Diego当地的人都叫这座城市The Finest City。
由于学校实力强劲,又地处加州,实习工作都方便找。很多知名大公司也会来UCSD这里招实习、工作,只要你有能力有本事,找工作并不是难事。
CS的特色在于与别系(尤其是数学系)合作非常紧密,CS学生跨学科学习和合作的机会较多,如化学,物理,生物,神经科学,艺术和商学院等。
研究内容包括算法与理论,密码学,计算生物学,计算机图形图像与用户界面,形式化方法,机器学习与知识呈现,自然语言与语音处理,网络、操作与分布系统,科学计算。
地理位置
可参考哥大的地理位置优势。
CS是Faculty of Computing and Information Science(CIS)里的一个系,Cornell的计算机系历史悠久,其专业实力位居美国TOP5。
主要包括11个研究领域:人工智能、机器人、计算生物学、科学计算、计算机架构与超大规模集成电路、网络安全、数据库系统、系统与网络、计算机图形、计算机理论和程序设计语言。
人工智能:这是Cornell的CS里最有实力的研究。从1990年开始,在世界的AI研究领域中始终处理领导者的地位,拥有多个研究小组。
计算机理论:Cornell最传统、深入的研究领域之一,研究涉及了全部的计算机理论,旨在发展现代计算复杂性理论,有效的基础图算法,并使用应用逻辑与正式验证构建可靠系统。
康奈尔大学有一个一年制的项目Master of Engineering in Computer Science,针对人群是毕业后想进Industry,而不是做研究的人群,所以是一个Professional项目。
其申请要求中除了通用要求之外,值得一提的是其对托福成绩有单项的要求,分别是:写作20、听力15、阅读20、口语22。所以这也提醒了理工科的申请者,相对来说,虽然理工科对于标准化考试成绩的要求会略微宽松,可是也有若干学校对于托福有自己的特定要求。
本科的背景要求中该项目要求是在CS或相关领域里的BA/BS/BE学位,先行课的要求包括要求申请者学习过编程、离散机构和操作系统等类似于康奈尔如下学科的课程:
-
Object-Oriented Programming and Data Structures 面向对象编程与数据结构
-
Discrete Structures 离散结构
-
Data Structures and Functional Programming 数据结构和函数式程序设计
-
Computer Organization 计算机组织
-
Operating Systems 操作系统
对于本科背景不是CS相关的或者已经毕业几年的学生,该项目需要申请者修读过上述课程中至少三门课程。那么申请者是否可以考GRE Subject的其它科目呢?比如学数学的可以考数学,学物理的可以考物理,是否可以呢?该项目是不接受其它科目的GRE Subject成绩的。
该项目在审核申请时的过程需要额外注意,它们通常在申请的截止日期之前的两个星期就开始审核学生的材料,于是比截止日期提前了2个星期甚至4个星期递交了申请,并且在学校开始审核资料时材料已经Complete了的学生就占据到了时间的优势,也因此在某种程度上可能比其他人拿到更早的和更好的Offer。这也是我们一再强调的,申请不要掐着时间点来提交,在学校的申请系统开放了后,要尽早提交。
该项目的申请截止日期之后的3个周就可以查询申请状态,这个时候就是体现我们后期套磁和跟踪的重要性了。
在前面说过了,这个项目是以培养学生在CS领域的实际操作能力为目的的Professional的一个学位,而众所周知的,PhD是一个Academic学位,学生们也是以研究为目的的,所以虽然该项目的学生可以申请PhD,却通常不被认为是通往PhD的最佳道路。
尽管这个项目只是个一年制的Professional的项目,但是其毕业生却非常抢手,很多知名公司直接到学校里招聘,很多毕业生手头上能拿好几份公司的Offer,学校的就业中心也会给毕业生找工作提供很多帮助。
申请建议
CS要选匹配而并非Top的大学
有CS的Top 20大学里,不同的学校他们的侧重点都不同。
如Stanford的CS在Theory、Database、Programming、Hardware、AI等领域都是实力非常强劲,但是如果你想学System,那么你想去他们学校并不一定是一个明智的选择,而UC Berkeley应该是你最佳选择。
UIUC是EECS界传统巨牛,虽然学校已经经历了低谷期,但是现在是由更有活力的中生代掌控着,未来一片光明;他们的计算机硬件特别强,另外计算机系统的研究开发也在受到了极度高的评价,但是如果你想学习AI的话,那么UM Amherst会更加适合你。
MIT,同样被称做为CS的巨牛,该校的数据流计算机、AI方面有突出的成就;CMU卡耐基梅隆大学的CS不是一个系,而是一个学院,其规模之大,远非一般院校所能及。CMU的师资力量雄厚,不少的Faculty在此领域都有各自的贡献,并获得过多个图灵奖。虽然他们很多方向招收的研究生都特别少,但是比如说他们的Information Networking Institute招生情况还是相对乐观的。
当你在选择自己申请的学校时候,首先要考虑的因素不是学校的排名,更多的是在了解他们这个专业是否与自己所感兴趣的领域有所吻合,因为不吻合学校就没有办法带给你想要的东西,那么你的投资回报(资金或时间成本)就小了很多。
优异的GT语言成绩,绝对是最有利的双刃剑
GT成绩永远都是你与学校的第一次接触。如果你是一个对档次要求特别高,而自己研究水平又一般的话,申请CS就要努力提高GT成绩了。根据美国绝大部分对GRE的要求,325分能够录取。而申请奖学金,IBT100分,GRE310以上可以把申请目标定在综合前100。
但是我们说到底,申请Graduate School,无论是CS Master还是CS PhD,研究是最基本的东西。你的经历决定了你在申请中的潜力。没有经历及没有潜力。GT语言成绩,是申请中必要的敲门砖,但是仅仅想依靠GT脱颖而出,绝对是不牢靠的想法。
在今天的申请中,需要申请者及早规划考试时间、备考进度、专业事件等等。
CS想拿奖学金不容易
众所周知CS是全美竞争较为激烈专业之一。如果你是计算机背景学生,有不俗的GT成绩,而对于留学奖学金又颇为看重的话,申请PHD的计算机课程奖学金数目还是非常丰富的。
申请TA,因为钱是学校出,并非系里,所以相对要容易成功一些。
而助研RA的钱多与老板或系里密切挂钩,因此你的提前离去,会对项目有影响,所以往往不容易申请,要视与老板的关系、时机而定。
申请硕士拿全奖的也有,不过比较少。