历经两个月的秋招,结束了,谈谈春秋招中一些重要的知识点吧(本科+后台+腾讯)
Posted kubidemanong
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了历经两个月的秋招,结束了,谈谈春秋招中一些重要的知识点吧(本科+后台+腾讯)相关的知识,希望对你有一定的参考价值。
历经两个月的秋招总算是结束了,从七月份开始复习秋招相关知识,到八月多开始笔试、面试,到九月下旬的秋招结束,在笔试面试的这两个月里,还是挺累的。这篇文章就说说秋招这段时间的收获以及给对于明年要参加秋招的同学的一些建议吧。
一、最后去的公司
对于我来说,这次秋招算是满意的吧,找到了想去的城市(深圳)以及公司(腾讯),我投的岗位都是后端开发。在之前春招找实习的时候,人生的第一次献给了腾讯,那时候没啥面试经验,感觉傻傻的,没看过的可以看我之前写过的文章嗯,春招两次腾讯面试都挂二面了,分享下我失败+傻傻的面试经历。
在秋招,腾讯也是我第一家面试的公司,感觉还是挺有缘的,8 月 14 号接到了腾讯面试官的面试预约,当时突然有点后悔,感觉自己应该晚一点投,因为腾讯的提前批是 9 月 12 号才结束,正式批 9 月 26 号开始。感觉当时还有很多没复习,想晚一点再面试。后来,我才知道,我错了,真的是越早投越好,千万别等到正式批或者提前批即将结束才投,那个时候投,真的会错过很多机会(至于为什么,后面会说)。17 号开始了秋招的第一场面试,到 8 月底面完了所有流程,9 月下旬出才收到面试结果。下面谈谈这次秋招的感受吧。
二、关于我
可能没看过之前我的文章的,很多人还不知道我。这里我简单介绍我的背景吧。
我今年大四,大一学的专业是木材科学与工程,后面转专业到软件工程,老家是广东的某个 5 线城市,在广州这边读大学,当然,是某个个双非大学,至于是哪个?学校里有养神兽的就是了。
可能看我文章的读者中,很多人觉得我很厉害,说实话,其实我还是挺菜的,在校期间没有参加过任何比赛,没有拿过任何奖金,扎心了(凉了,大神的形象暴露了)。所以这次能够拿到大厂的 offer,我觉得得归功于我之前对计算机基础知识以及算法学习。想拿大厂 offer,基础知识 + 算法必须重视。
三、基础 + 算法 + 项目
1、关于基础知识
秋招的竞争还是非常激烈的,如果你想要在秋招中拿到满意的 offer,那么从现实开始,就要把计算机基础(操作系统、数据库、计算机网络、Linux)、算法学好,特别是算法,不容易临时抱佛系,是一个长期积累的过程。
对于大厂,比起项目,它更加主要你的基础能力是否扎实吧。记得腾讯一面的时候,面试官就哈希表这个问题问了我有二十分钟,从刚开始让我用 C 语言来设计一个哈希表,后面问我如何设计 hash 哈希,怎么样设计更高效,怎么样设计能够最大程度减少碰撞,是否要动态扩容等等。一系列问题,我都按照自己的理解回答了,有些引用 redis 、 hashmap,并且我都举了一些例子。这个问题回答之后,感觉面试官有些惊讶,问我是否研究过 redis 这些框架的源码等。感觉这个问题回答之后,面试官对我更加感兴趣了,那场面试问了 90 分钟,基本把所有基础知识都问了。
所以我觉得,对于秋招,理解常见数据结构的相关设计,为什么要这么设计,实在是太重要了,可能很多人都知道链表、树、哈希表等,但被深入一问,可能就不懂,不知道为什么要这么设计了。
这次秋招,被问的最多的就是操作系统、计算机网络、mysql了,虽然我面试的是 Java 工程师,但是很多公司并没有问我 Java 相关知识(?_?),不过这和一个公司的技术栈相关吧,像我面试的 腾讯,字节跳动,shopee,小米等,公司的主要开发语言不是 Java,所以这几个公司的面试,一个 Java 相关的知识点都没有问过我,反正我是哭了。不过这并不影响我的回答,因为这些计算机基础知识,我很早就在准备了。
所以对于要参加面试的同学,千万别把自己吊死在某个语言上,语言只是一门工具,而应该多花一些时间在一些通用的知识上,例如 sql + Linux + 算法 + 操作系统 + 计算机网络。
当然,如果公司的主要语言是 Java 的,还是会问很多 Java 相关知识的,例如我面试京东,蘑菇街,阿里的时候,就问了很多 Java 的知识,像京东,蘑菇街,cvte 就没问过我计算机网络、操作系统这些知识。
所以说,不同公司,侧重点还是不大同的,但是,对于 BAT 这些大公司,基础知识 + 算法 是必问的。
2、关于算法
如果算法学的差,会错过非常多非常多的面试机会,会很难过笔试这一关,秋招的笔试,反正我一直被虐,感觉笔试的难度还是很大的,自己一个人做笔试,想要全 a,还是非常难的。笔试题目一般是选择题 + 编程题,但有些公司没有选择题,全是编程题(例如腾讯,字节跳动,拼多多,网易等,这里指的是提前批哈,正式批的好多我没去参加)。不过无论是否有选择题,编程题做的差,就凉了,一般编程题占60%的分值。
反正我有挺多笔试环节就挂了的,有些我编程题全 A了,然而并没有收到面试通知,估计是我简历没啥亮点吧。
有人说,leetcode 的前 500 道题刷了,笔试稳吗?说实话,还真的不稳,得看你的掌握程度,像 leetcode 那些题,一看就知道是什么题型,应该用哪种算法。而笔试题完全不一样,很灵活,可能是多种算法的结合。而且,有时候题意还得看十几分钟才看懂要我们干嘛。不像 leetcode,就几十个字,简单明了。反正 leetcode 中挺多 hard 级别的题我都会做,不过笔试的难度有些并没有 hard 高,却做不出来。因为时间也是挺紧的….大概一道题只有 30 分钟的时间给你做吧。
所以,那些经常刷 leetcode 的,我的建议是,千万别图刷题的算法,而是应该彻底搞懂这道题的算法思想,力求最优解,之前我也写过相关的文章我是如何学习数据结构与算法的?。
对于,还有一点,建议大家在刷题的时候,直接在网页那里打代码,别跑到 IDE 里写了,因为面试手撕代码的时候,并不会给你 IDE 写,而是在笔记本手撕算法,如果你不熟悉的话,估计代码会经常写过,而且排版可能也会很乱。反正我春招面试阿里的时候,让我在笔记本做算法题,我哭了,调用库函数的时候,方法名啥的全忘了怎么写,而且代码也老是写错。因为平时在 idea 会提示,在笔记本没提示,特别不习惯。
3、关于项目
基础、算法很重要,进大厂缺一不可。那么对于一个参加秋招的学生来说,项目重要吗?
答是非常重要,我秋招最大的弱点是项目经验不好,这也让我在很多公司直接一面就凉了。我自己没有脚踏实地着去做一个项目,都是看视频速成的,而且自己也没有好好跟着视频打代码,自己尝试去做一个项目,和跟着视频去做,还是有所不一样的,毕竟跟着视频,很多东西不是自己想的,所以不深刻。
我看的项目视频感觉还是挺不错的,是牛客网左神讲的,只是我比较懒,偷工减料,没有好好写代码,也没有去拓展这个项目。如果自己看完视频,好好去拓展、完善的话,我的项目经验,就不会那么差了。
记得蘑菇街一面的时候,面试官一上来就让我讲项目,然后我就讲牛客网学的哪个项目,面试官让我讲线上的项目,别讲练手的项目,我哭了,因为我没有线上的项目,因为我的暑假实习,实际上就是去培训,并不像其他人去公司实习,可以参与到完整的项目流程。这个时候,我就随便说了培训期间水的一个项目(几天时间快速水的),然后我就被面试官怼死了,,,然后就没有然后了,一面挂。
然后节点 cvte 面试的时候,一面二面全程怼项目,全是我的弱项,我也哭了。可以说,秋招我最大的弱点是项目,多次被怼告诉我,秋招,一定要有一个项目,这个项目不需要多高端,但需要你真正动手做过,研究过。
所以说,项目非常重要,可以打打增加面试的成功率,特别是中小型公司。当然,我觉得对于有些大厂,没项目,也一样能进,因为有些公司并不看重你的项目,例如我面试过的腾讯,字节跳动,shopee,小米等,基本没怎么问项目(可能对我的项目不感兴趣,哈哈)。当然,有个项目更好,只是并非必备条件。
项目该如何准备?我觉得可以跟着学校的老师做,或者自己看视频做,但是,一定要自己打代码,并且进行拓展,注意,一定要进行拓展,不然可能会坑了你也不一定。
4、总结
所以我觉得,只要把基础打好,算法学扎实,并且弄些项目经验,进大厂的机会还是很大的,大家不用怕被卡学历,很多互联网大厂,还是大部分不卡学历的,只有你能过得了笔试,基本都能获得面试的机会,面试就是凭实力说话了。当然,对于一些公司,还是挺卡学历的,例如一些国企之类的。
一篇文章也写不了那么多,后面我也会分享自己在秋招中收获的经验的经验等。
四、关注我,助你搞懂面试必考点
我已经有两个月没写文章了,十月份,一定好好写文章,主要写计算机基础知识(计算机网络,操作系统,Linux,MySQL)和算法。看过我文章的都知道,我写的文章,一定是你在百度查找不到的,可能很多知识点你都有看过相应的文章了,例如 B 树,B+ 树等等,但是,我居然要写,就一定不会和百度出来的那些一样,千篇一律。而是会从自己的理解出发,助你更好着搞好某个知识点,让你知其所以然。
说时候,基础知识的面试,面来面试,高频的面试点无非就那几十个,但是,对于同一个知识点,不同人的回答,效果相差巨大。例如百问不厌的高频面试题:进程间的通信方式有那些,这个问题我被问吐了。有些人可能是这样回答的:
进程的通信有 6 种,分别是:管道、消息队列、共享内存、信号量、socket,信号。面试官一问你他们的区别,有哪些应用,为什么需要这些的时候,你可能就不懂了,给人的感觉就是:你不是真的理解,而是背的。
而我在回答的时候,是从最常见的应用说起,从管道,层层递进,一个一个引出来。也就是说,当你真正理解了之后,是不需要记忆的,基本可以推出来。关于进程间的通信方式,我也写过对应的文章:记一次面试:进程之间究竟有哪些通信方式? ---- 告别死记硬背
所以,在之后,我会用心写好每一个知识点,保存通俗易懂,让你知其然,知其所以然。大家敬请期待。
五、我还整理了一份秋招资料
目前我也在整理秋招的一些资料,整理的都是高频考点,主要包括 操作系统,计算机网络,MySQL,Linux,Redis 等。大概国庆之后就会整理好,主要包括一些高频知识点的整理以及相关面试题的整理。之后会整理出 PDF 版本送给大家,这份 PDF 花费了我很多时间,因为现在有很多相关面试知识点整理的文章,例如有个 CS-note 的github,这些都挺不错的。不过我居然要整理,那肯定是和他们有些区别的。大家敬请期待。
六、总结了一些之前写的文章
数据结构与算法
- 记一道阿里笔试题:我是如何用一行代码解决约瑟夫环问题的
- 为什么你学不会递归?告别递归,谈谈我的一些经验
- 算法数据结构中有哪些奇技淫巧?
- 腾讯面试题:有了二叉查找树、平衡树为啥还需要红黑树?
- 字符串匹配Boyer-Moore算法:文本编辑器中的查找功能是如何实现的?
- 两道看似简单的面试高频算法题
- 如何只用2GB内存从20/40/80亿个整数中找到出现次数最多的数
- 【算法技巧】位运算装逼指南
- 【面试被虐】游戏中的敏感词过滤是如何实现的?
- 【算法精讲】分享一道很不错的算法题
- 面试挂在了 LRU 缓存算法设计上
- 必学十大经典排序算法,看这篇就够了(附完整代码/动图/优质文章)(修订版)
- 以后有面试官问你「跳跃表」,你就把这篇文章扔给他
- 【漫画】不要再问我快速排序了
- 一些常用的算法技巧总结
- 【漫画】以后在有面试官问你AVL树,你就把这篇文章扔给他。
- 【算法与数据结构】堆排序是什么鬼?
计算机网络
- 电脑的 ip 是怎么来的呢?我又没有配置过
- 一文读懂一台计算机是如何把数据发送给另一台计算机的
- 为啥用ip不可以访问知乎,而百度却可以?
- 广播路由算法: 我是如何优雅着把悄悄话带给其他人的
- 关于三次握手与四次挥手面试官想考我们什么?--- 不看后悔系列
- 什么?你不知道0.0.0.0和255.255.255.255这两个地址的干嘛的?
- 谈谈NAT:什么?全球IP和私有IP是什么鬼?
- TCP流量控制机制
- 5分钟读懂拥塞控制
- 【漫画】https 加密那点事
数据库与其他
- 腾讯面试:一条SQL语句执行得很慢的原因有哪些?---不看后悔系列
- 一句话撸完重量级锁、自旋锁、轻量级锁、偏向锁、悲观、乐观锁等各种锁 ---- 不看后悔系列
- 嗯,春招两次腾讯面试都挂二面了,分享下我失败+傻傻的面试经历
- 我去,这两个小技巧,让我的SQL语句不仅躲了坑,还提升了 1000 倍(半分钟干货系列)
- 记一次面试:进程之间究竟有哪些通信方式? ---- 告别死记硬背
- 理解二进制补码的本质,别再死记硬背了
- 【必学】Linux 下三剑客的技能,你敢不学?
更多精彩文章,欢迎大家关注我的公众号:苦逼的码农,
关注我,绝对让你有所收获,后台回复『电子书』即可获得我精心准备的一份电子书。
以上是关于历经两个月的秋招,结束了,谈谈春秋招中一些重要的知识点吧(本科+后台+腾讯)的主要内容,如果未能解决你的问题,请参考以下文章
小C秋招面试算法题:合并k个有序数组合并k个有序链表(分治思想)
小C秋招面试算法题:合并k个有序数组合并k个有序链表(分治思想)