谷歌二面挂,我却看到了16岁的热爱
本篇属于随笔类,记录我16岁的热爱、19岁面对Google面试的勇气、20岁眼中的光。
发文不是站在成功者的角度经验,我也远没有成功,是对自己的小总结或者说是学习中的心得,如果可以的话,希望,如果你也像我一样debuff叠满,请坚持下去,我们大多数普通人都是在伤心落泪中努力奔跑的。
我绝对不是大二学生中最努力的,也一定不是聪明人,也绝对不是上岸后的分享,只是希望日后,自己偶然间翻起这篇文章时,能够感受到热爱的力量,自己能够感受到就好。我知道大多数人都是比上不足、比上有余,当然包括我。
背景
我的背景,就是没有任何背景。
出生在小县城,农村长大,从来没有出过河南省,唯一出市就是因为要去郑州市上大学,高考考了两次,都只能上末流本科。"不争气"的我最后也来到这所“收留”我的末流本科。
末流本科、实习机会很少的城市、计算机科班但是半路出家(大一下通过转专业申请)。
我的学校不是很好,在大家眼里就是垫底,但是很感谢这个本科文凭,让我依然有很多的机会,虽然有的机会感觉只有万分之一,我也会努力争取。也很感谢我遇到的同学和老师,在我emo时陪我聊天、约饭、讨论学习。
作为一个末流本科、学习能力不强、家境极为普通的学生,似乎应该和那些高大上的理想切断,什么大厂、高薪都与我们没关系。
16岁的狂妄
But,我一直没有忘记16岁的自己,当初那个告诉全校自己要考名校的自己,那个立志要投身芯片行业,科技报国的自己直到现在也依旧站在我眼前。
对,很不现实。高考考了两次,我知道自己的实力,自己不适合应试,考研更是没戏。靠名校title,没戏。
一方面感受到了自己的平凡、毫无天赋,但另一方面也坚守着自己的梦想和热爱,靠不了高学历和天赋,那就靠技术和勤奋呗!!!16岁到现在一直在守护自己的梦想前进,我有梦想,我一直在冰冷的现实中很好地守护自己的梦想,并且慢慢实现它,我觉得这是我最了不起的事儿
一次重要的决定
我在老师的建议下,看了很多书,只要是好书,我都会放下手机、静下心来去读书,对我现在的独立思考能力有了很多帮助。大一下,我转入了计算机专业,因为我去招聘网站认真调研过,各行各业都需要计算机专业,包括芯片行业,也需要软件开发、测试这类岗位。
讲真的早点思考好自己的职业规划、自己对什么感兴趣、自己最想干什么、考研还是就业,这点很重要,如果自己对本身的专业都不感兴趣,也不知道自己一天天学习是未来干什么,只为了把时间填满而学习,长时间下来真的会身心俱疲,更不要说自己能主动啃书、刷算法题、参与各种活动和顶级开源项目了。
当然不要空想,多和老师、学长、前辈交流,多放下手机看看好书培养独立思考能力,如果实在是不知道,就努力做好眼前吧,别挂科,学好计算机基础。基础永远是王道!
大一
刚转入的时候,没有任何编程基础的我真的什么都听不懂,还欠了一堆转专业前没上的课。一边难受一边努力跟上进度。
大一下,C语言学了3遍、数据结构学了2遍,并且一直在关注就业这块,确定了Java开发的职业目标,也确定了规划,我这个学历,我需要大厂的title,所以我需要中大厂的实习经历,再慢慢往芯片厂靠。
大一结束的暑假,开始做自己的简历,思考技术栈和项目,确定了细分的规划,学了尚硅谷的Linux。
大二
大二上,力扣130+(部分题二刷、三刷)
OS 学了王道的操作系统
计算机网络 看了《图解HTTP》(对初学者来说很棒的书)
数据库 看了尚硅谷的课入门,看完了 《MySQL必知必会》《MySQL是怎样运行的》(部分重点二刷)和《MySQL45讲》的前三分之一,整理自己的MySQL笔记
PS :个人觉得《MySQL是怎样运行的》一开始啃或者啃当中可能有些枯燥,因为讲得对于新手而言太细了,可以听听《MySQL45讲》的基础篇,个人觉得后者讲的基础更容易接受些,听的时候可以结合一些八股文比如小林coding,补充一些自己能够接受的笔记。
(我不太喜欢把计算机基础叫做“八股”,把准备面试的笔记叫做八股,虽然可能性质差不多,但是我觉得作为计算机科班的学生,要想走得远,就要下功夫啃书建立知识串,而不是只会最简单的k-v,很多人基础不牢,直接硬啃精简的“八股”,我感觉有时间的话,想在这个行业走得远,还是要踏踏实实啃计算机基础的)
项目 技术栈Java+SSM+Spring Boot+MySQL+Redis + kafka + Elasticsearch做了个练手的项目。并且接触了腾讯的开源项目,因为在开源社区比较活跃,收到了社区的一些小礼物,并且有和大佬面对面交流的机会。
如果有时间的话,还是建议大家参与开源项目的,不一定非得开发出什么不得了的组件或者功能,学习下团队协作、了解技术应用、接触前沿和大佬、仿照开源项目造个轮子这些都是极好的
PS:感谢开源社区的周边哈哈哈,这可是Linux基金会诶!那天刚好很不开心,然后突然注意到社区送的是Linux基金会周边,就特别开心!!!
不断突破
过程中,我也曾尝试投递简历,但都是简历被挂,一边反思、一边完善简历、一边补充技术栈和项目,我知道自己差的很远,但是我未曾懈怠,可能是这四年里,我一直没有忘记16岁的科技报国梦想。有时候晚上也会突然感慨,感慨16岁的一腔热血。但是当我12月收到谷歌的HR联系,收到面试邀请后,我偶然间看见一段话,高中不懂,只觉得很美,现在我终于明白了这段话的含义。我也明白了,原来16岁的热血青年,一直都在,我一直在追寻我的梦想,即使别人觉得很可笑,即使我已经遭到了毒打,高中一直备受质疑和嘲笑,自己是在眼泪和自卑中一路走过,却依然充满着热血和坚韧。我一直都有资本,我一直都很年轻。
当你背单词时候,阿拉斯加的鳕鱼正跃出水面;
当你算数学题的时候,南太平洋的海鸥正掠过海岸;
当你晚自习的时候,地球极圈的夜空正五彩斑斓。
但少年,梦想你要亲自实现。
世界你要亲自去看,未来可期,请你一定拼尽全力。
当你为未来付出踏踏实实努力的时候,那些你觉得看不到的人,和遇不到的风景,
都终将在你生命里出现。
谢谢开源社区,谢谢谷歌,让我见到了我觉得看不到的人和遇不到的风景。
面试反思
以下是我的一些拙见。
虽然谷歌二面挂后,我伤心难过了一晚上,但是后来想想,自己才大二嘛,还是半路的科班,大二有大厂面试经验已经很不错了,本身自己实力也不足,力扣只有130+,面试coding过程中磕磕绊绊,很感谢的是面试官对我的思路和项目做了肯定。
基础这东西不能急于求成,要慢慢打扎实,不能指望只刷有限的高频题和几道八股文就想通过大厂面试,能大量刷题就刷,能啃书建立知识体系就啃,能早点学就早点学,时间真的过得挺快的,不要想着找工作时候再学,找工作时候精力都在投递简历、复习算法、计算机基础、准备项目上,也是让人比较焦虑的一环,想着那时候再学,压力真的挺大的而且还不成体系,面试就没底。
面试最后反问的时候,面试官也说谷歌很看重code能力,项目只是大概问了下,主要还是看code。打算下次面试,自己的刷题量至少要300+。
感觉谷歌出题更像是在抠具体实现细节,出的题给我感觉不难,但是真正实现的时候自己就卡住了。一是自己刷题量不够,二是平时做题没有把easy题细节理解到极致,比如for循环遍历一个数组再简单不过,但是谷歌出的题会让我不得不思考具体遍历细节,比如把一维数组换成二维数组,具体怎么遍历的,横着遍历还是竖着遍历,如何再把时空复杂度再降低?
easy题之所以是easy题,可能是自己不用考虑复杂的情况,但是谷歌会让我考虑不特殊的情况或者非常特殊的情况,所以自己一定要对各种变型的底层实现非常非常非常熟悉,平时练习不够或者思考不深入、只浮于表面是显然不够的。这也是我二面后挂的原因。
我面试的时候,谷歌出的算法题不是那种所谓的高频原题,感觉是自己又变型那种,也在问我有没有更好的解法,所以想冲大厂的话,刷题量一定要上去,然后不要指望碰到原题(真正理解细节是最好的),要真正理解逻辑,题型尽量多见,比如这个一维数组如果换成二维数组怎么写?特殊情况换成普遍情况,代码又该怎么写?允许结果集重复 换成 不允许结果集重复怎么写?这些都是我面试中思考的问题(当然最好平时练习中就有思考,这样面试时才不会让面试官觉得自己一直卡住、code能力还有待加强)。
非常感谢面试官的友好,让我的第一次面试真的不算紧张,更像是交流。也在这两场面试的不断复盘和交流中收获了太多太多,对我日后的查漏补缺有很大的帮助。
写在最后
也谢谢16岁的自己,从来没出过省,却让我看到了不一样的风景。
随心情没事儿写的文章,随缘想起什么再补充。
#没有实习经历,还有机会进大厂吗##我的实习日记#