ARTICLE · 1081966
计算机科学与技术 vs 软件工程:一个造积木,一个搭积木 | “专业说明书”系列第9期(工学篇一)

前面已经用八期写完了财经类专业,接下来我想从最热门的工学类开始。
工学是12大学科门类里专业最多、覆盖面最广的一个类别,总共涉及了293个专业。
工学类里最热门的专业类别肯定就是广受青睐的计算机类了。这个类别里,最核心的两个专业是计算机科学与技术和软件工程。
很多家长和考生有可能都分不清楚这两个专业具体有什么区别,填志愿的时候看到名字差不多,就随便选了。其实这两个专业的侧重点并不一样。
今天我们就把这两个专业放在一起来说,弄明白这两个专业都是做什么的。
01
大学四年学什么
计算机科学与技术:研究计算机本身,从底层到应用
这个专业研究的是计算机系统的理论、设计与应用,包括了硬件、软件、算法、系统架构这些基础领域。就是要学计算机到底是怎么工作的,怎么才能运行得更好。
核心的课程包括:离散数学、数据结构、计算机组成原理、操作系统、计算机网络、数据库原理、算法分析与设计、编译原理等。
软件工程:研究怎么把软件造出来
软件工程是2002年新增的专业,研究的是用工程化的方法开发和维护软件。
简单说,就是研究怎么把软件开发出来,要开发一个软件,尤其是大型软件,通常要涉及几十万行代码,还要几十个人协作。哪些人负责什么模块、需求要怎么分析、代码又怎么测试……这些问题,都是软件工程要解决的。
核心的课程包括:软件工程导论、软件需求分析、软件项目管理、软件质量保证与测试、软件体系结构与设计模式等。跟计科相比,不用学硬件和底层原理的课,多了一些项目管理和工程实践的课。
02
新高考选科:物理+化学,两个都要
这两个专业的选科要求,没什么商量的余地。
“3+1+2”和“3+3”模式下,绝大多数院校要求“物理、化学均须选考”。
想学计科或软工,物理和化学就是“必选项”。
03
毕业去哪儿
两个专业的就业方向高度重合,但落到具体的岗位上会有些侧重。
计科毕业生:就业面会更宽一点,可以跟软件工程一样做软件开发,也可以做算法研究、系统架构、嵌入式开发,还可以转硬件方向,读研深造的比例也更高。
软工毕业生:大部分都是做了软件开发工程师,包括前端、后端、移动开发、全栈开发,也可以做测试工程师或项目经理。
薪资方面,计算机类是工学里薪资最高的专业之一。
普通软件开发岗应届月薪大约8k-15k,一线城市会更高一些。人工智能工程师平均月薪2.1万,机器人算法工程师平均月薪达2.6万。硕士研发岗的年薪普遍在25万至40万元区间。
如果能进入头部AI公司,那么算法岗位起薪通常在一年40万元左右,核心研发岗月薪可达6万至9万元
薪资确实可观,不过高薪集中在大厂和头部公司。学历门槛也在不断提高,算法岗大量招硕士博士,本科生主要做应用开发。而且行业竞争在一直在加剧。
04
适合什么样的孩子
先说两个专业共同需要的特点:
数学不差。 这两个专业对数学的要求都很高,需要学习离散数学、概率统计、算法分析这些,数学基础弱的人学起来会非常吃力。
逻辑思维强。编程需要逻辑思维,把大问题一步步拆解成小动作。
能坐得住。 编程写代码、拆解需求看文档,经常一坐就是几个小时,坐不住的人会比较痛苦。
有了这些共同的特点,再看看你的天性更偏向哪个:
计算机科学更适合这样的孩子:
你对东西怎么运转有好奇心。如果你从小就喜欢拆各种电器设备,总想知道里面是怎么工作运行的,那这个专业还挺适合你的。
做事情很喜欢往深处钻。一个问题弄不清楚底层的原理,你就觉得不踏实。计算机科学这个专业特别需要这种往下挖的性格。
有耐心,愿意先学理论,不着急做出来。这个专业前两年需要打基础,很多人到大三才真正做出像样的东西。
软工更适合这样的孩子:
你喜欢“做出来”的感觉。 相比搞懂一个原理,你更享受“把东西做出来、能用”的成就感,这个专业大一开始就有大量实践。
你做事有条理、喜欢按流程来。 软件工程需要一步一步进行需求分析、设计、编码、测试、维护,每一步都有规范。如果你天生做事有步骤,会让你很舒服。
善于沟通且愿意团队协作。 软件工程培养的是能组织团队把软件做出来的人,很多都需要小组合作。如果你能跟团队配合,愿意沟通,会比较适合这个专业。
你想尽快上手、尽快就业。 软件工程的实践导向更强,本科毕业直接就业的比例也更高。如果你想早点进入职场,这个专业是一个务实的选择。
两个专业都建议慎重的孩子:
数学是你的明显弱项,不喜欢也学得不好。
对编程完全没有兴趣。
你坐不住,做一件事超过半小时就想换花样。
你只是冲着高薪来的,可是对于技术本身并没有什么好奇心。
05
最后说两句
计算机科学与技术和软件工程,一个偏理论和底层,一个偏工程和实践。
如果你喜欢往深处挖,任何事情都特别想搞懂原理,选计算机科学。如果你更喜欢动手做,想尽快把东西做出来,选软件工程。