明知道计算机是吃青春饭,为什么还有那么多人前仆后继

35岁危机和996只存在于程序员、存在于互联网行业。 

生化环材嘛,只有22岁危机,毕业即失业或转行,也没有996倒是有7116。

机械土木嘛,没什么危机,只不过只能拿计算机专业1/3的工资。

医生教师嘛,是越老越吃香,可年轻的时候却只能吃土。

讲真,计算机行业真的是底层劳动人民子女逆袭的最好专业,没有之一。

对于要不要学计算机专业,我的观点一直非常鲜明:计算机行业是底层劳动人民子女逆袭的最佳专业,没有之一。

虽然很多人讽刺:劝人学机不坏好意、还有很多人说程序员就是吃青春饭、也有人说程序员太苦了。

程序员是很苦、经常加班甚至996,并且如果不学会刻意练习,在工作中精进,中年还是curd boy真可能被淘汰。

这些都没错,但你要明白:

很多专业比计算机还累,拿的只有计算机行业薪资的1/3(机械之类)

很多专业连青春饭都吃不上,毕业等于失业或转行(生化环材)

很多专业是没有中年危机,越老越吃香,但年轻的时候穷的一 B(医护)

很多专业看起来碉堡了,无比光鲜亮丽,说出都好听,但没背景的人前高大上,背后天天吃土(金融,律师)

计算机,YYDS!

目前就业薪资最高的两个专业:金融和计算机,但金融行业门槛比较高,如果你能力不是特别强,又或者有家庭背景,那进入金融行业就是炮灰。

而计算机专业才真正是适合屌丝逆袭的专业!

我们来看看2021年大厂计算机应届生的薪资吧:

虽然金融毕业有一部分人能拿到更高薪资,但金融两极分化严重,而分化的原因很大程度来自于家庭背景而不完全是能力。

等题主进入社会就会知道,没钱会被宰割,有钱了你可以选择躺平享受、也可以选择继续奋斗到更高境界,压根再也谈不上被人宰割!

说下我的看法:计算机行业会越来越火,学计算机最好的时间有两个,一个是十年前,另一个就是现在!

无论是目前非常火热的短视频、外卖、在线教育、移动游戏、游动社交,还是未来的AI、5G、万物互联、AR/VR等等,这些都是爆点,也都需要程序员和软件工程师。

接下来再说下我自己的从业经历和身边学计算机的朋友的经历吧:

一个从5线小乡镇走出来的屌丝,一个工作11年的码农,不算期权之类的,工资年收入税后到手差不多100多万

其实我身边做计算机行业的拿到这个数的人还真不少。身边好几个阿里P8、百度T8、中小厂CTO的朋友们都超过这个数,最近还有一个曾经带过的下属要入职某巨头在线教育公司,担任技术专家,薪资也到了这个数。

我当年在腾讯360的老同事,只要还在职场混的,无论是在硅谷还是国内企业,达到年薪100万以上的,都还算正常水平。其中比较厉害的比如老领导王老板、好基友强哥、之哥,这些人更是好几个100万。跟他们一起混,我都不掏钱包。至于我的大学同学,只要还在计算机行业的的也大多年薪百万了。

顶尖大学计算机专业课程体系设置如下:

课程之间的连线代表的是学习顺序和前置知识点,还是比较科学的。

计算机毕业生需具备能力:

1.扎实的计算机体系基础知识,包括:算法、数据结构、操作系统、计算机组成原理、计算机网络、数据库等等。

2.优秀的逻辑思维能力、优秀的解决问题的能力

3.较强的动手能力

4.对计算机体系的综合认知,并具备分析复杂系统及设计的能力

这里面算法能力很关键,大厂面试官必考,就算读研读博也是必须攻克的项目。

计算机专业现在是一个大类,里面还细分了很多专业:计科,人工智能,软工,大数据,物联网,网络工程等。

选对细分专业也很重要!

给一下我的建议:首选计科,软工第二,其他第三。

1.首选计科

原因很简单这个专业发展很多年,学科教学建设完备、学习路线丰富、就业岗位众多,最关键是企业认可度极高。

选择计科未来无论是就业还是读研/读博都有不错的前景,尤其是没有猛攻某个方向打算的朋友,就是首选了。

(ps,觉得不错的,请双击点赞,笔芯~另外送大家一份非常宝贵的计算机经典书籍资料,我把大学和工作中用的经典电子书库(包含数据结构、操作系统、C++/C、网络经典、前端编程经典、Java相关、程序员认知、职场发展)

 

2.软工第二

软件工程算是「就业强化版」的计科专业,课程体系的重点在于培养软件工程需要的人才,在计算机体系基础知识层面弱于计科,在实践coding层面,学校提供的资源强于计科。

企业认可度跟计科不相上下,劣势在于对有科研想法的同学后续比较麻烦。如果没有读研/读博的需求,选择软件工程是相当不错的。

3.人工智能/大数据/物联网/信息安全,就业有风险,选择需谨慎

人工智能/大数据最近几年被吹爆,导致很多大学都开设了这个专业,但实际上无论是AI还是大数据都缺乏突破性进展,这也导致应用领域非常有限,岗位需求很少,造成的结果就是卷到吐血。

这两个领域两级分化非常非常严重,牛逼的本科毕业年薪50万、甚至100万,大部分人找不到工作只能去转应用领域,自然竞争不过计科和软工的同学。

信息安全在计算机众多细分专业中,需求较为小众,原因也很简单:企业需求在下降。毕竟PC时代已经过去,移动端的操作系统的安全性大为增强。这个行业目前主要依托政府安全需求。

不过信息安全属于高精尖,如果能好好学,就业运气不错倒是可以拿到高薪。但岗位的限制导致不少人最终没有从事这个行业。

物联网是新兴专业,从长期来看一定是有很好的前景的,无论是万物互联还是5G的发展,未来人才的需求会暴增,但很遗憾的是现状来看这个行业并没有高速发展,而是缓慢前进。

而相关的人才输出甚至有供大于求的嫌疑了,所以还是要谨慎选择了。

以上关于这几个细分专业选择的建议就说完了。

其实不管选择计算机的哪个细分专业,在大学期间的学习和实践都非常重要,大学打下的基础不不仅会让你在校招季节披荆斩棘,更能让你在职场告诉成长。

学习的本身是为了就业或者读研,大部分同学是为了找到一份好的工作。

要想毕业就进大厂,本科拿到月薪15K以上,硕士拿到25K以上,做好以下这些很重要:

选定一门主攻的基础语言方向,比如Python、C、Java等,并真正攻克它;

算法和数据结构:数组、链表、二叉树、堆栈、排序算法、B+/B-树、DP(动态规划)等;

疯狂刷题,撒比算法题、Leetcode等等,都挺不错,刷起来

计算机网络:HTTP、DNS、ARP、TCP、IP、ICMP、UDP等;

操作系统:IO、存储器、多线程/多进程、同步机制、处理器调度及死锁、设备管理、通道等;

计算机组成原理:冯诺依曼计算机组成、计算机层次结构、计算机性能指标等;

多实践多上机,机房要常去

抓住一切可以实习的机会,是否有实习经历往往是大厂给不给offer的分水岭

以上其实是大厂面试官的考核范围,并且他们之间有前置知识点的相关性,简单点说:不会基础语言不会算法和数据结构,你肯定没法刷题,也没法看懂计算机网络和操作系统、组成原理等等。。

重点强调下算法,非常重要,无论是读研读博深造还是通过大厂的面试,算法都是必须的。

大家可以在Leetcode上刷题,如果你能把Leetcode上重难点掌握,说实话你就搞定了70%的大厂技术面试的最重要环节,这绝不是在忽悠,而是身边师弟师妹的普遍反馈。

另外有实习机会也需要抓住,其实无论是计算机哪个细分领域,动手能力都是重中之重,能在工作之前就获得应用级的经验当然更具优势。

另外多看计算机经典书籍非常重要,对计算机专业学生和程序员来说,看计算机经典书籍永远是成长中性价比最高的事情。

 

再唠叨几句:看书除了要看,还要动手,对于技术书籍来说,书上的习题一定要动手实践。

人生有三个最大错觉:她喜欢我、手机震动、我能反杀,对于学计算机的同学们和程序员来说,还要加一个:有思路我就能做出来。

动手最起码有以下几点好处:真正理解看过的书和知识、增强动手能力、消除编程恐惧症、积累代码库、锻炼debug能力。

接下来重点讲讲计算机专业需要攻克的5个方向:

1.C/C++语言

虽然你只有很小概率在工作之后用到它,但它依然无比重要。C Primer反复看,然后一行行在电脑上敲出来。

C语言最难懂的是指针,希望你在读大一的时候就征服它,内存是什么,指针的本质是什么,程序为什么会崩溃,这些问题弄懂了基本就通了。

其实C语言网上的资料特别多,我给大家特意收集了一波入门必备,学习以下四个资源即可:

实验楼——C语言入门教程

gitbook——笨方法学C

菜鸟教程——C 语言教程

慕课网——C语言入门

再说说C++呀,科班出身最好牢牢掌握C++,通过大学几年的学习,以下技术栈弄通即可。

C++语言高级特性:运算符重载(一元运算符、二元运算符、运算符重载难点、项目开发中的运算符重载)、多继承及其二义性、虚继承、多态、函数模板、类模板,模板的继承、程序编译链接机制、内存布局(memory layout)、对象模型、各种容器的实现(vector、map、hashmap)等等;

算法和数据结构:尤其是和C++结合的算法能力及数据结构的应用能力,hash map、B+/B-树、算法在C++容器中的效率应用、DP(动态规划)等;

网络底层:HTTP、HTTPS、DNS、ARP、TCP、IP、ICMP、UDP、FTP、SMTP、的实现底层;

多进程/多线程编程:进程通信的方式(共享内存、pipe、Socket编程等)、同步、死锁及解决方案、线程池的实现、进程/线程的操作系统实现原理、进程的状态及切换和调度等;

推荐以下C+书籍:

《C++ primer》《Essential c++》 《C++编程思想》 《effective C++》《more effective C++ 》《Think in C++》《C++ primer plus》《C++ coding standard》。

2、算法

算法挺难,但无论是学习计算机专业还是未来找工作,它都无比重要。

推荐一本高中生都能看懂的算法书:《我的第一本算法书》

这本书还配有APP,方便初学者快速入门!

给题主和大家送一本BAT大佬的算法笔记,对于程序员而言,算法一定是重中之重,这本书是一位阿里P8刷leetcode整理出来的,身边不少朋友通过它加入大厂:

 

看看这本书的目录和排版!相当经典!

3.数据结构

数据结构的重要性相信不需要强调了,不仅是工作后必备的技能,如果未来要参加研究生考试也是必考科目和拉分项。

入门的话推荐《大话数据结构》。

这本书诙谐有趣,在不知不觉中让你掌握了数据结构

再推荐一本稍稍难一点的《数据结构和算法分析》。

4.操作系统

只要我们使用计算机,就会和操作系统打交道,接受它的审核与反馈。很多“热门”的技术话题,背后都离不开操作系统。比如:

Nginx 的高并发性为什么能实现?

MySQL 的 I/O 性能到底怎样提升?

Redis 中经典的 Reactor 设计模式由什么技术支撑?

Node.js 的 I/O 模型长什么样?

甚至,在一个数十万行代码的大项目中,仍然会遇到一些基础性的问题,比如内存为什么会泄漏,服务进程为什么会 dang 掉,文件为什么打不开等等。

要真正解决这些问题,深入理解操作系统就是关键,这也是大厂为什么要考核操作系统的本质原因

学习操作系统的关键在于是否能动手做一个小的操作系统(ucore)!

清华大学的陈渝老师和向勇老师的操作系统课,强烈推荐,清华计算机系本科的操作系统课程就是这两个老师教的,而他们推出的网课基本和授课内容一致。

这个课程非常赞,是用实验的方式从0到1搭建一个小的操作系统(ucore),虽然小但是五脏俱全。

链接点这里:操作系统-学堂在线慕课(MOOC)平台

5、计算机网络

如果你要入门 HTTP,首先最好书籍就是《图解 HTTP》了,作者真的做到完完全全的「图解」,书籍不厚,相信优秀的你,几天就可以看完了。

如果要入门 TCP/IP 网络模型,强烈推荐的是《图解 TCP/IP》,这本书也是以大量的图文来介绍了 TCP/IP 网络模式的每一层,但是这个书籍的顺序不是从「应用层 —> 物理层」,而是从「物理层 -> 应用层」顺序开始讲的,这一点我觉得不太好,这样一上来就把最枯燥的部分讲了,很容易就被劝退了,所以我建议先跳过前面几个章节,先看网络层和传输层的章节,然后再回头看前面的这几个章节。

另外,你想了解网络是怎么传输,那我推荐《网络是怎样连接的》,这本书相对比较全面的把访问一个网页的发生的过程讲解了一遍,其中关于电信等运营商是怎么传输的,这部分你可以跳过,当然你感兴趣也可以看,只是我觉得没必要看。

如果你觉得书籍过于枯燥,你可以结合 B 站《计算机网络微课堂》视频一起学习,这个视频是湖南科技大学老师制作的,PPT 的动图是我见过做的最用心的了,一看就懂的佳作。

以上五个部分,应该贯穿整个大学四年的学习时光。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值