工作快两年了!斗胆谈谈校招/社招技术面试那些事

2,912 阅读14分钟

推荐👍:接近100K star 的Java学习/面试指南:JavaGuide

!!!Note : 01,02 部分非干货,只是个人就一篇文章被 diss 的经历做的一个简单复盘。不想看Guide哥瞎BB的可以跳过。

这篇文章主要是为了聊一些关于校招/社招的心里话,被 diss 与否其实是无所谓的。我不能让所有人都满意我的文章,但是大部分人觉得我的文章有价值我就开心了。

01

前几天,我分享了一篇 《读者,双非本科、0实习、0比赛/项目经历。3个月上岸百度(上)》 的文章引发了一小部分读者喷我是故意贩卖焦虑。

刚开始的时候,我的一脸懵逼啊!这心想哪里有贩卖焦虑了呢?为此,我还去询问了很多朋友。朋友们也都并没有觉得不妥。

可能朋友也是站在我这边的,我自己思前想后,觉得肯定是哪里出了问题(当天自己状态本来也不咋滴,确实有被影响到。)。

仔细想了一下,换位思考了一下。我觉得出现这种情况的原因可能有下面几个:

  1. 当事人状态不好 :被我 diss 的人当时状态不太好,然后看到这篇文章受到了刺激 。我是非常理解的,我在状态不好的时候会敏感很多。所以,我一般会压制内心的怒火,不会去怒怼别人。
  2. 理解出现偏差 :在当前这个已经比较卷的情况下,这个标题确实会让很多一些认真看文章内容的人人产生误解。让很多人误以为通过 3 个月的突击复习就能获得大厂 Offer。在当前的技术面试环境下,确实戳到了很多人的痛点。 或许我在文首简单说明一下读者本身就有计算机专业基础 ,并不是单纯靠 3 个月的复习就上岸大厂会更好。
  3. 单纯凑个热闹 :很多人单纯就点开文章,但是根本不会仔细看文章内容。然后,这些人看到评论区的评论,就跟着一起瞎起哄。动动手就能喷人多简单哦!多厉害哦!这种人就很恶心啊!不过,我做几年公众号肯定有一些这样的读者,也挺正常的!没关系!时间会把你变成我的忠实读者。

但是,那些酸作者上岸大厂的人,我是真搞不懂!大厂每年招这么多人,总有很多人上岸。看到别人上岸的经历,我们难道不应该学习一下,而不是搁那恰柠檬吗?

我说的这种学习不是说你照搬别人的经验,而是借鉴吸收别人的经验。

说实话,小贾的分享非常非常用心!所以,我给的稿费还挺多的。我觉得这是对好内容的一种认可!不过,我说了很久,小贾最后也只要了 400 。

《读者,双非本科、0实习、0比赛/项目经历。3个月上岸百度(上)》 的下篇我应该会在下周整理出来。

02

标题一直是我的一个痛点,很多非常用心的原创因为标题没起好就直接翻车了。

下面是我近期的一些原创,应该没有标题对不上内容的吧?

说实话,我是真想当一个“标题党”啊!

谁不想让自己辛辛苦苦写的原创被更多人看到!试问一下:“你自己辛苦写的原创,你难道不希望更多人看到么?”。

很多时候平淡的标题,俗气的封面真的没啥人看。我觉得不是大家俗气了、浮躁了,而是现在的大环境确实是这样,与我们每一个人都有关系。

我觉得公众号标题和封面就像我们每个人的简历一样,我们都想用有限的内容突出一些亮点来吸引别人的注意。

我们大部分人在写简历的时候,基本都会简单包装一下。我说的这个包装不是弄虚作假,而是突出放大了某些亮点。

有时候我经常感叹:“连文章标题都特么开始卷了”。

03

就像现在的面试一样,大家都说内卷了,抱怨现在的面试真特么难。

然而,单纯抱怨有用么?你对其他求职者说:“大家都不要刷 Leetcode 了啊!都不要再准备高并发、高可用的面试题了啊!现在都这么卷了!”

会有人听你的么?你不准备面试,但是其他人会准备面试啊!那你是不是傻啊?还是真的厉害到不需要准备面试呢?

大家身边一定有很多编程比你厉害但是找的工作并没有你好的朋友吧!

技术面试不同于编程,编程厉害不代表技术面试就一定能过。

现在你去面个试,不简单准备一下子,那简直就是往枪口上撞。

真的不是贩卖焦虑! 你不信可以自己去面试一波看看。

我就不信这年头还有不准备面试也不刷下面试题就能直接获得大厂 offer。可能会有一些发过顶级周刊或者获得过顶级大赛奖项的巨佬不需要。

试问一下:“我们作为普通人,在这样一个技术面试氛围下,不花点心思准备面试能翻身么?”

面试造火箭,工作拧螺丝钉” 就是目前的一个常态,预计未来很久也还是会这样。

但是,一定不要对面试抱有侥幸心理。打铁还需自身硬!

千万不要觉得自己看几篇面经,看几篇面试题解析就能通过面试了。一定要静下心来深入学习!

04

我自己是双非本科,我在大二就意识到自己的学校不是优势。所以,我就早早确定了自己以后要走的技术方向是走 Java 后端。

然后,我在大三就开始准备面试了。

我是怎么准备面试的呢?

  1. 和老师一起做了一个企业的项目作为自己简历的一个项目经历 。毕竟我的学校不好,要靠项目经历补救一下。
  2. 和同学一起参加了一些技术比赛比如软件编程大赛。 这个过程重要的不是名次,每一次比赛经历都是对自己能力的锻炼。
  3. 我在大三上学期就根据企业的招聘要求整理了一份技能清单。 整个大三,我没有周末,基本没有什么娱乐时间,一个人在图书馆,在寝室学习这些技术。
  4. 对于每一门技术,我会去网上找一些常见的面试题,并把这些面试题作为重点来复习!

要不要针对某个知识点准备面试题呢?

  1. 你把某一个技术用的非常熟练之后,并不代表你能回答上来面试题。 很多小伙伴都觉得自己对于某些技术非常熟练,就不需要准备面试题了。实际上,这是一种非常错误的做法。你会发现很多面试题,你不准备一下,一去面试就直接懵掉了!
  2. 很多面试题可以加深自己对于某个技术的理解。 比如消息队列的常见面试题有消息队列解决了什么问题、常见消息队列对比、如何保证消息只被消费一次、如何保证消息不被重复消费等等,当你会回答这些消息队列相关的面试题之后,你自己是不是对于消息队列也有了更深的认识了呢?

05

再来聊聊让很多应届生求职者头疼的项目经历。

大三这一年,一些机遇也让我也接了一些私活赚钱。为了能够顺利交付,偶尔也会熬夜。不过,当时的心态是即使熬夜也还是很开心、充实。每次想到自己通过技术赚到了钱,就会非常自豪。

每次忙到很晚,一个人走在校园的时候还是很爽的!非常喜欢这种安静的感觉。

不过,接的几个私活也是比较杂的,并不太适合作为简历上的项目经历。

于是,为了能让简历上的项目经历看着更好看一些,我自己也找了两个项目做。一个是我跟着视频一起做的,是一个商城类型的项目。另外一个是自己根据自己的想法做的,是一个视频网站类型的项目。

在跟着网上的视频做项目的过程中,最重要的就是要独立思考+动手实践! 老师可能仅仅只是给你讲一下项目用到的知识点,会不会去拓展或者去寻找更优的解决方案就是你自己的问题了。

如果你要把这个项目写到自己的简历上,最好可以给项目换个合适的名字。

在大三暑假的时候,我还和同学老师一起做了一个有点像员工绩效管理的企业真实项目。这个项目和我刚进公司做的项目非常非常相似,不过公司做的可能更高级点。实在是太巧了!

我记得当时自己独立做项目的时候,遇到了很多问题。就很多时候,你看书很容易就明白的东西,等到你实践的时候,总是会遇到一些小问题。我一般都是通过 Google 搜索解决的,用好搜索引擎真的能解决自己 99% 的问题。

06

也是在大三准备面试的时候,我开源了 JavaGuide 。我把自己准备面试过程中的一些总结都毫不保留地通过 JavaGuide 分享了出来。

相比于其他通过 JavaGuide 学到东西或者说助力获得 offer 的朋友来说 , JavaGuide 对我的意义更加重大。

不夸张的说,有时候真的感觉像是自己的孩子一点一点长大一样,我一直用心呵护着它。

虽然,我花了很长时间来维护它,但是,我觉得非常值得!非常有有益!

直接到今天 JavaGuide 已经有 92 k+ Star 了。截止今天(2020-11-29)一共有 2735 个 commit,我一共处理了接近 500 个issue 以及 500多个 pr。

我本可以每天轻松轻松的和女票一起度过,本可以多去其他平台涨点粉,但是,我选择了把大部分时间都留给了它!

如果不是真的喜欢,我想没人会每天花这么多时间在这个上面。

除了 JavaGuide, 我还开源了一些自己写的轮子和一起其他比较有趣的项目。比如今年我就写了一个 RPC 框架和一个 HTTP 框架。

目前,我开源的项目在 Github 上收获了 100k+ star。我的 Github 地址 :github.com/Snailclimb ,欢迎指导啊!

不过说句心里话,我觉得这些项目都不过是自己小打小闹的玩具罢了!写这些项目的目的主要也是为了提高自己的能力的同时来帮助到更多的小伙伴。

我更希望的是自己能够参与或者写出一个被更广泛使用的软件/框架。 我想这也是每一个技术人的梦想!共勉。路漫漫其修远兮!

后面,我的想法是每周抽出一小部分时间,通过一个一个小迭代的形式完成一个基于主流技术的项目供小伙伴们学习。

07

其实,我是比较建议大学生尽可能早一点以求职为导向来学习的。

这样更有针对性,并且可以大概率减少自己处在迷茫的时间,很大程度上还可以让自己少走很多弯路。

但是,不要把“以求职为导向学习”理解为“我就不用学课堂上那些计算机基础课程了”!

我反复强调过:“一定要用心学习计算机基础知识!操作系统、计算机组成原理、计算机网络真的不是没有实际用处的学科!!!

你会发现大厂面试你会用到,以后工作之后你也会用到。我分别列举2个例子吧!

  • 面试中 :像字节、腾讯这些大厂的技术面试以及几乎所有公司的笔试都会考操作系统相关的问题。
  • 工作中 :在实际使用缓存的时候,你会发现在操作系统中可以找到很多缓存思想的影子。 比如CPU Cache 缓存的是内存数据用于解决 CPU 处理速度和内存不匹配的问题,内存缓存的是硬盘数据用于解决硬盘访问速度过慢的问题。 再比如操作系统在页表方案基础之上引入了快表来加速虚拟地址到物理地址的转换。我们可以把快表理解为一种特殊的高速缓冲存储器(Cache)。

如何求职为导向学习呢? 我在新开的坑《「编程杂感」第1期》中有介绍到。

简答来说就是:根据招聘要求整理一份目标岗位的技能清单,然后按照技能清单去学习和提升。

08

没想到一下子就写了这么多,已经尽量在杜绝废话了!刚坐在星巴克店外码子冻死了,就转到了屋里。

这篇文章快接近尾声了。再来聊聊很多人比较感兴趣的话题:“算法在当下校招和社招技术面试中的地位。面试之前我们到底要不要刷算法呢?”。

因为我之前在星球分享过, 这里就直接Copy过来,希望在这个问题上比较迷茫纠结的小伙伴能有所收货!

09

每个人都有表达自己想法的自由,我尊重每个人的看法,但也希望大家能够用心评论而不是跟着起哄。

做公众号的这几年一直是比较开心的,接触到的小伙伴也都很可爱,也和一些读者私下交流很多。

说实话,咱们真正做技术的人大部分都是非常非常实在的!不喜欢搞一些虚的东西。

做好自己就好。为了黑粉改变了自己的初心,犯不着。

我写的原创,发的文章并不渴求每个人都能喜欢,这也是不可能的。做了这么久公众号,不能说忠实粉有多少,黑粉肯定是也有不少的。

我不是技术大佬,只是一个普通的不能在普通的人。我不过是拿出了自己的一部分的业余时间出来分享罢了!

起初我只是热爱,现在我可以通过自己做的分享收获到一些非物质和物质上的东西。

我觉得这也算是对于我的付出的一种认可。

后记

这篇文章内容有点多,如果这篇文章只能让你记住3句话,那请记住下面这3句:

  1. 一定不要对面试抱有侥幸心理。打铁还需自身硬!千万不要觉得自己看几篇面经,看几篇面试题解析就能通过面试了。一定要静下心来深入学习!
  2. 建议大学生尽可能早一点以求职为导向来学习的。这样更有针对性,并且可以大概率减少自己处在迷茫的时间,很大程度上还可以让自己少走很多弯路。 但是,不要把“以求职为导向学习”理解为“我就不用学课堂上那些计算机基础课程了”!
  3. 手撕算法是当下技术面试的标配,尽早准备!

感谢有你!共勉。路漫漫其修远兮!

我的的开源项目累计在Github上收获了 100k+ 的 star!我的Github地址:Snailclimb - Overview (来fllow me)

不过说句心里话,我觉得这些项目都不过是自己小打小闹的玩具罢了!写这些项目的目的主要也是为了提高自己的能力的同时来帮助到更多的小伙伴。

我更希望的是自己能够参与或者写出一个被更广泛使用的软件/框架。 我想这也是每一个技术人的梦想!共勉。路漫漫其修远兮!