专注全网免费汽车问答资源免费平台

奔走相告(计算机专业主要学什么)计算机专业@成都万通未来高级技工学校

发布:undefined10-06分类: 行业前景

很棒!

不夸张的说,提出这个问题的你(哪怕是看到这个问题的你)已经超过了很多计算机专业的学生了,我认识很多 CS 毕业的人,学了 4 年临近毕业都不知道大学计算机专业学了什么。

所以,我花了三天的时间整理这个答案,希望可以帮到努力的你,让你更进一步。

不求什么回报,

只希望你先点个赞、感谢与收藏~

一是当做对我的鼓励,

二是作为你进步的开始,

三是防止下次想看却找不到。

事不宜迟,我们马上开始!

题主的问题是大学计算机专业要学什么??

首先,这个问题是不完整的。问题只问了一半,事情也只能做到一半。我们要看到更深层的需求,比别人多想一点,才能比别人优秀一点。

思考一下,弄清楚大学计算机专业学什么目的是为了什么?

为了名?为了利?为了打发时间?

事实上,在大学期间,我们学的很多知识都是为了毕业之后找工作所准备的,而计算机专业的同学肯定是想进入互联网大厂比如腾讯、字节跳动、阿里巴巴等。

而提高技术可以帮助我们在毕业的时候有更多的选择机会。

那么这个问题,就可以拆解成两个答题要点:

1)怎么样提高自己的技术水平

2)如何准备进入大厂

一、怎么样提高自己的技术水平 ?

首先,我们来看一下,大学期间计算机专业的学生需要学习哪些专业课程,了解后才能知道有哪些方面可以提高,所以,请先务必学好以下几门课程。

1、计算机组成原理

2、计算机操作系统

3、计算机编译原理

4、数据结构与算法

5、计算机网络

一、计算机组成原理

计算机组成原理这门课很好地向我们阐述了计算机是如何工作的,妹子咨询你电脑问题的时候,答案就藏在这门课程里面(大雾)。

推荐书籍:《深入理解计算机系统

这本书是从程序员的角度来看待整个计算机系统的,所以是非常适合程序员的。但是这本书不仅仅包含了计算机硬件的相关知识,同时还包含了包括操作系统、计算机网络等相关知识。

书籍下载:计算机必看经典书籍(含下载方式)

二、计算机操作系统

操作系统真的可以说是 Super Man,它为了我们做了非常厉害的事情,以至于我们根本察觉不到,只有通过学习它,我们才能深刻体会到它的精妙之处,甚至会被计算机科学家设计思想所震撼,有些思想实际上也是可以应用于我们工作开发中。

操作系统比较重要的四大模块,分别是内存管理进程管理文件系统管理输入输出设备管理。这是我学习操作系统的顺序,也是我推荐给大家的学习顺序,因为内存管理不仅是最重要、最难的模块,也是和其他模块关联性最大的模块,先把它搞定,后续的模块学起来我认为会相对轻松一些。

学习的过程中,你可能会遇到很多「虚拟」的概念,比如虚拟内存、虚拟文件系统,实际上它们的本质上都是一样的,都是向下屏蔽差异,向上提供统一的东西,以方便我们程序员使用。

还有,你也遇到各种各样的调度算法,在这里你可以看到数据结构与算法的魅力,重要的是我们要理解为什么要提出那么多调度算法,你当然可以说是为了更快更有效率,但是因什么问题而因此引入新算法的这个过程,更是我们重点学习的地方。

你也会开始明白进程与线程最大的区别在于上下文切换过程中,线程不用切换虚拟内存,因为同一个进程内的线程都是共享虚拟内存空间的,线程就单这一点不用切换,就相比进程上下文切换的性能开销减少了很多。由于虚拟内存与物理内存的映射关系需要查询页表,页表的查询是很慢的过程,因此会把常用的地址映射关系缓存在 TLB 里的,这样便可以提高页表的查询速度,如果发生了进程切换,那 TLB 缓存的地址映射关系就会失效,缓存失效就意味着命中率降低,于是虚拟地址转为物理地址这一过程就会很慢。

你也开始不会傻傻的认为 read 或 write 之后数据就直接写到硬盘了,更不会觉得多次操作 read 或 write 方法性能会很低,因为你发现操作系统会有个「磁盘高速缓冲区」,它已经帮我们做了缓存的工作,它会预读数据、缓存最近访问的数据,以及使用 I/O 调度算法来合并和排队磁盘调度 I/O,这些都是为了减少操作系统对磁盘的访问频率。

……

还有太多太多了,我在这里就不赘述了,剩下的就交给你们在学习操作系统的途中去探索和发现了。

还有一点需要注意,学操作系统的时候,不要误以为它是在说 Linux 操作系统,这也是我初学的时候犯的一个错误,操作系统是集合大多数操作系统实现的思想,跟实际具体实现的 Linux 操作系统多少都会有点差别,如果要想 Linux 操作系统的具体实现方式,可以选择看 Linux 内核相关的资料,但是在这之前你先掌握了操作系统的基本知识,这样学起来才能事半功倍。

入门系列

对于没学过操作系统的小白,我建议学的时候,不要直接闷头看书。相信我,你不用几分钟就会打退堂鼓,然后就把厚厚的书拿去垫显示器了,从此再无后续,毕竟直接看书太特喵的枯燥了,当然不如用来垫显示器玩游戏来着香。

B 站关于操作系统课程资源很多,我在里面也看了不同老师讲的课程,觉得比较好的入门级课程是《操作系统 - 清华大学》,该课程由清华大学老师向勇和陈渝授课,虽然我们上不了清华大学,但是至少我们可以在网上选择听清华大学的课嘛。课程授课的顺序,就如我前面推荐的学习顺序:「内存管理 -> 进程管理 -> 文件系统管理 -> 输入输出设备管理」。

B 站清华大学操作系统视频地址:https://www.bilibili.com/video/BV1js411b7vg?from=search&seid=2361361014547524697

该清华大学的视频教学搭配的书应该是《现代操作系统》,你可以视频和书籍两者结合一起学,比如看完视频的内存管理,然后就看书上对应的章节,这样相比直接啃书相对会比较好。

清华大学的操作系统视频课讲的比较精炼,涉及到的内容没有那么细,《操作系统 - 哈工大》李治军老师授课的视频课程相对就会比较细节,老师会用 Linux 内核代码的角度带你进一步理解操作系统,也会用生活小例子帮助你理解。

B 站哈工大操作系统视频地址:https://www.bilibili.com/video/BV1d4411v7u7?from=search&seid=2361361014547524697

深入学习系列

《现代操作系统》这本书我感觉缺少比较多细节,说的还是比较笼统,而且书也好无聊。

推荐一个说的更细的操作系统书 —— 《操作系统导论》,这本书不仅告诉你 What,还会告诉你 How,书的内容都是循序渐进,层层递进的,阅读起来还是觉得挺有意思的,这本书的内存管理和并发这两个部分说的很棒,这本书的中文版本我也没找到资源,不过微信读书可以免费看这本书。

当然,少不了这本被称为神书的《深入理解计算机系统》,豆瓣评分高达 9.8 分,这本书严格来说不算操作系统书,它是以程序员视角理解计算机系统,不只是涉及到操作系统,还涉及到了计算机组成、C 语言、汇编语言等知识,是一本综合性比较强的书。

它告诉我们计算机是如何设计和工作的,操作系统有哪些重点,它们的作用又是什么,这本书的目标其实便是要讲清楚原理,但并不会把某个话题挖掘地过于深入,过于细节。看看这本书后,我们就可以对计算机系统各组件的工作方式有了理性的认识。在一定程度上,其实它是在锻炼一种思维方式 —— 计算思维。

三、计算机编译原理

首先正式一个问题:编译原理并非随随便便就能入门的!

换言之,需要准备一些基础知识在学习。

编译原理的学习和实践通常基于对计算机编译过程、计算机基本工作原理、甚至一定的数学知识有一定积累,这些知识分别分布并应用在了编译原理的不同阶段。没有这些基本知识的积累,很快就会在某个阶段由于功底不够而无法再继续后面的学习。

所以,先认认真真的积累上述的一和二在入门学习吧。

四、数据结构与算法

相信无论是已经毕业的同学还是正在学校学习的同学,都或多或少地被数据结构与算法这门课给折磨过。数据结构与算法这门课开篇就讲了一个非常重要的概念:程序 = 数据结构 + 算法,对于初学者可能还不能完全地理解这句话,不过对于已经工作两三年的同学相信对这句话是深信不疑的。

对于数据结构与算法的学习,我个人认为应该分层三个步骤:首先先大致了解什么是算法,可以通过一些科普读物来入门,这个过程我称之为入门阶段;接着可以尝试实现一些比较容易的数据结构和算法,这样可以更加深对数据结构和算法的了解,这个过程我称之为实践阶段;最后去了解数据结构与算法背后的相关数学原理等,这个过程我称之为原理阶段。

具体的学习过程可以阅读我之前的一篇回答:

不管你认为数据结构与算法重要与否,你都必须有所了解,因为在面试环节肯定会问的!

书籍推荐:

入门系列

入门的同学,我建议你不要过度追求上去就看经典书。

不要一来就拿着《算法导论》开始啃,初学就去啃这些书肯定会很费劲。你一旦啃不下来,挫败感就会很强。

然后就放弃学算法了。

所以,入门的同学,我建议你找一些比较容易看的书来看,比如《大话数据结构》和《算法图解》。

不要太在意书写得深浅,重要的是能不能坚持看完。

大话数据结构》 这本书最大的特点是,它把理论讲得很有趣,不枯燥。而且每个数据结构和算法,作者都结合生活中的例子进行了讲解, 能让你有非常直观的感受。

虽然这本书有 400 多页,但是花两天时间读完,应该是没问题的。

如果你之前完全不懂数据结构和算法,可以先从这本书看起。

《算法图解》 跟《大话数据结构》走的是同样的路线,就像这本书副标题写的那样,“像小说一样有趣的算法入门书”,主打“图解”,通俗易懂。它只有不到 200 页,所以内容比较少。

作为入门,看看这本书,能让你对数据结构和算法有个大概的认识。

当然,这些入门书共同的问题是,缺少细节,不够系统,也不够严谨。

所以,如果你想要系统地学数据结构和算法,看这两本书肯定是不够的。

基础系列

通过基本入门算法书的调教,你已经逐渐体会到了算法的魅力,现在正是时候踏入基础系列算法的领域!!!

这些书籍需要你费点心思去阅读。

很多同学在学习的过程中,看到一篇算法科普文章经常会有这样的想法。

哎呀,要是文章的代码是 Java 语言就好了呀。

哎呀,要是文章的代码是 Python 语言就好了呀。

虽然代码并不会很严重影响阅读,但还是有很多强迫症的同学喜欢看到文章的解释代码是自己擅长的。

我这里推荐《数据结构和算法分析》,这本书非常系统、全面、严谨,而且又不是特别难,适合对数据结构和算法有些了解,并且掌握了至少一门编程语言的同学。而且,这个作者也很用心。

他用了三种语言,写了三个版本,分别是:《数据结构与算法分析 :C 语言描述》《数据结构与算法分析:C++ 描述》《数据结构与算法分析:Java 语言描述》。

面试实战系列

大家都知道,对于程序员来说很大程度上算法就是为了应付面试的。

所以,推荐三本有益于面试的书籍,分别是:《剑指 offer》《编程珠玑》《编程之美》。

《剑指 offer》这本书的目的非常明确,就是为了面试。

这本书几乎包含了所有常见的、经典的面试题。如果能搞懂这本书里的内容,应付一般公司的面试应该不成问题。

我做了一个 图解《剑指 offer》的小程序,应该能帮助你学习,感兴趣的可以在微信搜索 图解剑指offer。

我也在 B 站录制了一些图解剑指 offer 的免费视频课程,感兴趣的也可以看看,每个视频控制在5分钟以内。

《编程珠玑》这本书的豆瓣评分非常高,有 9 分。

这本书最大的特色就是讲了很多针对海量数据的处理技巧。这个可能是其他算法书籍很少涉及的。面试的时候,海量数据处理的问题也是经常会问的,特别是校招面试。不管是开拓眼界,还是应付面试,这本书都很值得一看。

《编程之美》这本书有多位作者,其中绝大部分是微软的工程师,所以书的质量很有保证。不过,这里面的算法题目稍微有点难,也不是很系统,这也是我把它归到面试这一部分的原因。如果你有一定基础,也喜欢钻研些算法问题,或者要面试 Google、Facebook 这样的公司,可以拿这本书里的题,先来自测一下。

想进大厂少不了学习算法,我写了三百篇算法题解,在 GitHub 上收获了 63k 的star,关于如何刷题有些话我想对你说。

我的不少粉丝拿到腾讯字节快手offer,因为用了这套算法刷题笔记:

推荐我自己搭建的一个不错的算法学习网站,讲解视频短,每个视频都精心规划过,全部都有动画过程,争取五分钟讲清楚。

五、计算机网络

部分内容参考来源

作者:小林原文链接:小林coding:大学四年我是怎么写操作系统和计算机网络的?掏心掏肺的分享!原文链接:https://mp.weixin.qq.com/s/yopn5PqC7ESQcxWOj0eBoQ

计算机网络相比操作系统好学非常多,因为计算机网络不抽象,你要想知道网络中的细节,你都可以通过抓包来分析,而且不管是手机、个人电脑和服务器,它们所使用的计算网络协议是一致的。

也就是说,计算机网络不会因为设备的不同而不同,大家都遵循这一套「规则」来相互通信,这套规则就是 TCP/IP 网络模型。

TCP/IP 网络参考模型共有 4 层,其中需要我们熟练掌握的是应用层、传输层和网络层,至于网络接口层(数据链路层和物理层)我们只需要做简单的了解就可以了。

对于应用层,当然重点要熟悉最常见的 HTTP 和 HTTPS,传输层 TCP 和 UDP 都要熟悉,网络层要熟悉 IPv4,IPv6 可以做简单点了解。

我觉得学习一个东西,就从我们常见的事情开始着手。

比如, ping 命令可以说在我们判断网络环境的时候,最常使用的了,你可以先把你电脑 ping 你舍友或同事的电脑的过程中发生的事情都搞明白,这样就基本知道一个数据包是怎么转发的了,于是你就知道了网络层、数据链路层和物理层之间是如何工作,如何相互配合的了。

搞明白了 ping 过程,我相信你学起 HTTP 请求过程的时候,会很快就能掌握了,因为网络层以下的工作方式,你在学习 ping 的时候就已经明白了,这时就只需要认真掌握传输层中的 TCP 和应用层中的 HTTP 协议,就能搞明白访问网页的整个过程了,这也是面试常见的题目了,毕竟它能考察你网络知识的全面性。

重中之重的知识就是 TCP 了,TCP 不管是建立连接、断开连接的过程,还是数据传输的过程,都不能放过,针对数据可靠传输的特性,又可以拆解为超时重新、流量控制、滑动窗口、拥塞控制等等知识点,学完这些只能算对 TCP 有个「感性」的认识,另外我们还得知道 Linux 提供的 TCP 内核的参数的作用,这样才能从容地应对工作中遇到的问题。

接下来,推荐我看过并觉得不错的计算机网络相关的书籍和视频。

入门系列

此系列针对没有任何计算机基础的朋友,如果已经对计算机轻车熟路的大佬,也不要忽略,不妨看看我推荐的正确吗。

如果你要入门 HTTP,首先最好书籍就是《图解 HTTP》了,作者真的做到完完全全的「图解」,小林的图解功夫还是从这里偷学到不少,书籍不厚,相信优秀的你,几天就可以看完了。

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

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

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

B 站视频地址:https://www.bilibili.com/video/BV1c4411d7jb?p=1

深入学习系列

看完入门系列,相信你对计算机网络已经有个大体的认识了,接下来我们也不能放慢脚步,快马加鞭,借此机会继续深入学习,因为隐藏在背后的细节还是很多的。

对于 TCP/IP 网络模型深入学习的话,推荐《计算机网络 - 自顶向下方法》,这本书是从我们最熟悉 HTTP 开始说起,一层一层的说到最后物理层的,有种挖地洞的感觉,这样的内容编排顺序相对是比较合理的。

但如果要深入 TCP,前面的这些书还远远不够,赋有计算机网络圣经的之说的《TCP/IP 详解 卷一:协议》这本书,是进一步深入学习的好资料,这本书的作者用各种实验的方式来细说各种协议,但不得不说,这本书真的很枯燥,当时我也啃的很难受,但是它质量是真的很高,这本书我只看了 TCP 部分,其他部分你可以选择性看,但是你一定要过几遍这本书的 TCP 部分,涵盖的内容非常全且细。

要说我看过最好的 TCP 资料,那必定是《The TCP/IP GUIDE》这本书了,目前只有英文版本的,而且有个专门的网址可以白嫖看这本书的内容,图片都是彩色,看起来很舒服很鲜明,小林之前写的 TCP 文章不少案例和图片都是参考这里的,这本书精华部分就是把 TCP 滑动窗口和流量控制说的超级明白,很可惜拥塞控制部分说的不多。

白嫖站点:http://www.tcpipguide.com/free/t_TCPSlidingWindowAcknowledgmentSystemForDataTranspo-6.htm

当然,计算机网络最牛逼的资料,那必定 RFC 文档,它可以称为计算机网络世界的「法规」,也是最新、最权威和最正确的地方了,困惑大家的 TCP 为什么三次握手和四次挥手,其实在 RFC 文档几句话就说明白了。

TCP 协议的 RFC 文档:https://datatracker.ietf.org/doc/rfc1644/

实战系列

在学习书籍资料的时候,不管是 TCP、UDP、ICMP、DNS、HTTP、HTTPS 等协议,最好都可以亲手尝试抓数据报,接着可以用 Wireshark 工具看每一个数据报文的信息,这样你会觉得计算机网络没有想象中那么抽象了,因为它们被你「抓」出来了,并毫无保留地显现在你面前了,于是你就可以肆无忌惮地「扒开」它们,看清它们每一个头信息。

那在这里,我也给你推荐 2 本关于 Wireshark 网络分析的书,这两本书都是同一个作者,书中的案例都是源于作者工作中的实际的案例,作者的文笔相当有趣,看起来堪比小说一样爽,相信你不用一个星期 2 本都能看完了。

你可以发现,大学四年,计算机专业的学生要学的东西挺多的,

现在回答小标题:怎么样提高自己的技术水平?

请踏踏实实的先完成对专业课程的学习,虽然有些课程比较难,但这是区分科班出身的你与半路出家的程序员的区别,否则,说实话,就实战而言,你还比不上培训班出来的学生。

然后再提升。

以操作系统为例,看看这些知识是如何用到的?

组成原理:是不是学过中断、8259A、保护模式寻址等等?体现在操作系统里,为了实现进程调度,你要用时钟中断,为了会用中断,你要写8259A的控制程序;为了实现实模式到保护模式的切换和保护模式编程,你必须理解处理器的段保护机制等

数据结构:是不是觉得红黑树很高大上,好看不好用?去看看linux内核中有关查找的算法,用到红黑树的很多;再去看看最近已经在Fedra中取代ext4的文件系统btrfs,它用到的底层结构是B+树。看到了这些活生生的实例,你就会明白数据结构不仅仅是躺在教科书上的标本了。

计算机网络:去实现一个虚拟的网卡,自己去实现TCP/IP协议,网络上的东西就明白大半了。

最后再选择一门编程语言,把你的专业知识运用到上面去。

这里我以 Python 为例(事实上,我建议每个计算机专业的学生都了解一下 Python,掌握到可以简单的爬取数据即可,花个几天时间就能掌握,这些技能可以在后面的工作中带来极大的便利)。

一般而言,python爬虫需要以下几步:

找到需要爬取内容的网页 URL打开该网页的检查页面(即查看 HTML 代码,按 F12 快捷键即可进入)在 HTML 代码中找到你要提取的数据写 python 代码进行网页请求、解析存储数据

1、找到需要爬取内容的网页 URL?

计算机网络:当键入网址后,到网页显示,其间发生了什么?

2、打开该网页的检查页面(即查看 HTML 代码,按 F12 快捷键即可进入)

3、在 HTML 代码中找到你要提取的数据

1)给定的种子 URLs,爬虫程序将所有种子 URL 页面爬取下来

2)爬虫程序解析爬取到的URL页面中的链接,将这些链接放入待爬取URL集合中

3)重复1、2步,直到达到指定条件才结束爬取

数据结构与算法:递归、优先队列、DNS缓存(这里需要设计一个 hash 表来存储已有的域名及其IP)

4、写 python 代码进行网页请求、解析

正则表达式、HTTP

5、存储数据

计算机操作系统:用 MySQL 还是 MogoDB

二、如何准备进入大厂 ?

相比较社招而言,在校招过程中面试官在面试过程中最看重的是你的基础能力与可塑性,而非项目能力。

来源:硬刚一周,3W字总结,一年的经验告诉你如何准备校招!作者:努力努力再努力

要准备好校招,要有思想准备:这是一场持久战,基本上从你开始准备校招的那一刻开始,到你正式拿到 offer 的,最后确定去哪一家公司时,时间差不多一年左右。

选择方向校招流程怎么投递,怎么内推校招知识储备

1、选择方向

在我看来,第一件事情应该就是选择你找工作的方向,这件事情应该在你开始找工作的半年前左右确定,比如,你2021年3月开始春招找工作,那么,我建议你最好在现在,也就是2020年10月就确定找工作的方向,为什么要这么早,后面我会具体分析。

说到工作的方向,就现在的互联网公司来说,其实可以选择的方向还是特别多的,也是看个人的选择,当然,也是可以有一些数据来做参考的;现在的校招的主流的方向有:算法,后端开发,前端开发,测试开发,运营开发,客户端开发,测试等等,这些岗位通常来说是选择最多的,对于几个岗位,我也给一下自己的建议,可以供参考。

首先是算法,算法这个方向,在我刚刚读研究生的时候也是有想过的,但是,随着深入的了解,以及对于市场对于这个岗位的需求分析,后来,我就慢慢的放弃了,当然这只是一方面的原因;对于算法岗位,现在比较热门的就是深度学习、机器学习了,由于CV方向特别火爆,这里的火爆并不是说好找工作,而是竞争太大了,就今年的算法岗位来说,或者说从去年开始,基本上就是神仙打架了,没有一两篇顶刊论文,你都不好意思说你是搞算法的,所以,如果你想找算法的工作,我的建议是,第一,是不是研究生,第二,是不是211/985以上,或者更直接点是不是985以上的学校,第三,有没有发过好的期刊的论文,我觉得这三点至少满足两点以上才可以考虑去找算法的工作,否则,建议转开发。

接下来说一下开发,开发现在其实竞争压力也不小,想进大厂的压力其实也很大,因为需求就这么多,当然,跟算法比起来就好很多了,后端毕竟方向很多,语言的选择也是很多的,比如,Java、C++、Python、Go这些语言的方向都是可以选择的,之前也说过,Go现在的需求也是在慢慢变大的,可以考虑一下这个方向,竞争可能小一些,其中,Java的竞争最大,可能是因为大家都觉得Java好找工作吧,导致投递的人数特别多,大厂就更不用说了,想找一个Java岗位的工作真的不容易,从我身边的朋友来看,以及身边同学找工作的感受来看,C++进大厂的难易程度还是小一些的,大家可以考虑一下,当然,这些选择也是看你对哪个方向更喜欢了,或者更熟悉了,这里只是给一些建议。

2、校招流程

面说了如何选择的问题,选择好了之后,就应该熟悉一下目前的校招流程了,刚刚开始的时候如果不了解的话,或者没有了解一些经验之类的,还是会犯一些错误的,所以这里给大家总结一下。

在现在的校招的模式下,校招分为春招和秋招,春招基本上是找实习的,还是少量的校招补招的,补招就是上一年秋招没有招满,然后在春招继续招人,而秋招基本上就是应届生找工作的最佳时期了。

在今年的春天,2月份开始吧,春招就开始了,很多的公司就开始招是实习生了,特别是字节跳动,在2月初就开始了提前批,2月底提前批就结束了。

所以,春招找实习的黄金时间就是2-5月了,这个两到三个月的时间都一直会有机会,也是拿实习offer的最佳时期。

接下来,6-8月这个时间段,如果你在春招找到了实习,那么一般你就在公司实习了,实习结束后,到9月开始就是要开始秋招了。

但是,这里其实有一个问题,在前面就讲到过,现在的秋招一般都会很早,可能在7月的时候很多的公司提前批就开始了,而提前批又是很好拿offer的时候,所以,选择去不去实习就显得很重要了,或者,你去实习了,如果发现你所实习的公司不是你想留的公司,建议尽早离职准备秋招。从今年的情况来看,可能因为疫情的影响,到了9月份开始秋招,发现其实已经晚了,拿我的情况跟身边的同学来说,今年9月份开始秋招,一般都是投了一大堆的公司,结果最后只有可怜的5个面试机会,这个时候才发现,提前批真的很重要,再对比一些没有实习的同学,通过提前批的面试,一般都有几个offer斩获,对比之下,发现实习的优势竟然没有了,可能这就是现在互联网公司的找工作的现实写照吧。

3、怎么投递,怎么内推

前面讲了校招的流程问题,这里讲一下在面试的过程中一定会遇到的问题,那就是投递简历。

大家应该都知道,现在互联网公司找工作,基本上都是在牛客网看相关的信息,这也是给大家提供了一个渠道。

关于投递,现在不同的公司也有不同的形式。

第一种,大公司,大公司一般都会有自己的投递官方网站的,都是在官方网站进行投递,这个麻烦的就是,很多的简历信息都是需要手动输入的,所以,还是比较耗时的,到时候遇到了你就会发现真的有点烦,有时候投递个简历需要半天;但是,有一个好处就是,可以比较实时的查看面试进度,直接在官网上进行查看就可以了。

第二种,有一些公司因为没有自己的官方网站,所以,就托管在第三方来进行这个操作,比如,在牛客网上直接进行投递,在牛客网上填写简历,然后,就可以一键投递了,这个方便一些,但是,就是感觉很多时候没有消息,我也不知道为什么。

第三种,也是依赖第三方公司,今年投递的感觉来说,一般都是依赖一个叫做https://www.mokahr.com/,这个网站一般就是公司进行内推的,这个投递网站好处就是方便投递,而且有些公司只需要你上传你的电子版的简历就可以,降低了投递成本,但是,不方便的就是查询投递进度。

然后,说到内推,其实,方式也就那么多。一般,如果有实验室的师兄师姐在比较好的互联网公司,那么,我们可以通过这种渠道进行内推,一般也是比较靠谱的,成功率比较高;其次,现在很多内推也都是在牛客网进行了,我很多时候也是在牛客网看有没有公司的内推,这种方式有一个问题就是一般内推的人很多,最终你能不能被筛选到是一个问题;最后,还有一种方式就是通过公众号,官方的公众号投递,或者有一些公众号也会提供内推码。

最后,就算没有内推,其实也不要紧,很多人直接在官网投递,也是能够机会的,而且,现在的内推跟前几年还不一样,现在就算是内推了,最多也就是有个笔试的机会,不会直接给面试机会,直接给面试机会除非是简历特别出众。

4、校招知识储备

基本上就是上面提到那些知识点。

1、计算机组成原理

2、计算机操作系统

3、计算机编译原理

4、数据结构与算法

5、计算机网络

在这些里面,着重考察算法,对于计算机专业的学生来说,从大学开始接触到计算机的必修课里面一定是有数据结构和算法这门课程的,而且也是相当的重要,而校招,从我自身面试的经历来说,算法可以说是十分的重要,再强调也不为过。

在现在的招聘流程中,首先是有笔试,大公司的笔试一般就是2-4道编程题,题目的难度leetcode的hard以上,所以,笔试就是检验你的算法的能力;进入到面试阶段后,基本上每一轮面试中,一定是会有算法题的,现在也是一般使用牛客网进行考核,所以,大家可以先去牛客网适应适应,那么,在一次面试中,算法的重要性怎么样呢?我这么说吧,如果一轮面试中,面试官出了一道算法题,如果你做出来了,其他的专业知识点回答的很一般,你有可能进入到下一轮面试,如果你算法题没有做出来,专业知识点就算回答的再好,基本上也是凉凉。因此,从我的经验来看,面试中A出算法题,至少可以拿到60分,A不出来,那就是0分,无一例外。

那么算法如何准备呢,这也是我想跟大家聊的一个话题,因为我在找工作之前,算法的能力可以说太一般了,很多的算法都是不懂的,基本的题目也是很难做出来,但是,经过这一年的训练,现在在面试中的算法题A出来基本上是没有问题的,除非是特别难的题目,那当我没说,有过几次经历,感觉被刷KPI了;因此,如果你现在也是对算法没有任何的自信的话,不用太担心,因为我也是这样过来的,只要你坚持,有方法的训练,应对基本的面试是完全没有问题的。

想进大厂少不了学习算法,我写了三百篇算法题解,在 GitHub 上收获了 63k 的star,关于如何刷题有些话我想对你说。

我的不少粉丝拿到腾讯字节快手offer,因为用了这套算法刷题笔记:

推荐我自己搭建的一个不错的算法学习网站,讲解视频短,每个视频都精心规划过,全部都有动画过程,争取五分钟讲清楚。

关于算法的学习,这里就不再进一步的讲解了,详细的可以看一下这篇。

我是 @程序员吴师兄,想和你一起成为厉害的程序员!

温馨提示如有转载或引用以上内容之必要,敬请将本文链接作为出处标注,谢谢合作!

欢迎使用手机扫描访问本站