表哥个人校招总结!(可能有干货吧)

其实一直想写一篇秋招的总结,不要问表哥去哪了,其实还没有决定,秋招收割了大多数互联网大厂(具体哪些就不列了,offer这个东西,能拿一家自然能拿第二家,这个大家都懂。。。说多了好像显得我在显摆自己哈哈哈。),这篇帖子的话目的其实是回馈一下牛客,找工作的时候刷牛客的频率比其他社交软件大很多(由于后面成牛客网红了,牛客也送了一些周边给我。。),希望牛客能越弄越好吧。

这篇文章其实个人感觉是碎碎念,干货可能不多,读者先做好心理准备,写得不好的话也别骂我哈哈。

好了,废话不多说。我们开始吧。。

其实抛开java不谈,其实找程序员先关方面工作的,必备的肯定是扎实的基本功,具体就是os,网络,数据结构这一些。。这一些。其实个人感觉,在学习一样新技术的时候,如果没有扎实的基础,充其量你只是个合格的使用者,很难了解到他的实质。比如说吧,nginx怎么做的转发?在没有http基础的情况下,是不大可能可以看到他的全貌的。所以有时候学习一样东西你觉得很困难,几乎不得存进,就该停下来想想,是不是我某些地方有所欠缺??之前我想看vuejs的源码(之前表哥大二的时候实习写了一年多的前后端。。),了解虚拟dom是怎么实现的,我兴冲冲的把源码下载下来一看。。唉???我怎么看不懂啊。。。。后来我明白过来,要先学Flow(vue之前是用Flow写的,现在要改成ts了),js的dom编程,和js的对象模型。。有了这些基础的情况下,岂不是可以为所欲为了???

这些题外话就不多说了。

所以我先讲的还是基础知识。。。

网络:
应用层,传输层,网络层,链路层,物理层,我面试的时候被问的基本都是前面三个。。
大部分问题如下:
应用层:
http各个版本的的变化,https。。(不会变态到问你那个协议用了哪个端口的)
传输层:
tcp udp,几件套,老生常谈的了。。。看看书就好了。。。
网络层的话就是那几个协议。。ip,arp,rarp。。。
推荐看 
《自顶向下的计算机网络》或者 谢仁希那本《计算机网络》
http的话看《图解HTTP》或者《HTTP权威指南》这两本我都看了,还是比较推荐的
网络层的话可以看《漫画IP》
额外推荐一本《网络是怎么连起来的》
tcp可以推荐一下百度Allen大佬的gitchat: https://gitbook.cn/gitchat/activity/5d6b928e86f522620c0bf127

操作系统:
我遇到的都是 线程进程的区别,虚拟内存啊这一些,稍微偏一点的会问大小端,感觉问的还是比较浅的(可能是我遇到的问题比较浅吧)
推荐看书籍《深入理解计算机系统》。。。很厚一本。。。感觉够呛哈哈哈。。。
《操作系统之哲学原理》感觉也不错,讲的比较粗浅易懂。入门可以看看。。。
如果对操作系统比较感兴趣的,可以看学习一下linux,然后《linux内核设计的艺术》《奔跑吧,linux内核》走起来。。

算法:
这个对于很多人来说可能比较头疼吧,牛客上游很多真题,也有剑指offer,和左神的课程(我听说课程很有用,十分牛逼。。。咱也不知道,可以问问听过的人现身说法吧。。)
但是个人的感觉是,笔试的时候,各种动态规划,树啊什么的,然后面试都是链表啊,二分啊什么的。。因为面试时间比较短,不会让你做太难的题目。
有一个说法是,leetcode三百题国内的公司基本难不住你了。。

但是我可以肯定的是,经典的排序算法,你要像tcp三次握手,四次挥手那样如数家珍,起码要到手写的地步,如果问道你你不会,面试官会很欣喜,你让他考虑少了一个人。
这个我不能给你搞得面面俱到,只能说,刷吧。刷就完了。
先做一些简单题,积累一些套路,比如说两数之和,会了这道简单的,后面什么三数之和,四数之和是不是so easy啊??

好了,下面我们讲讲java的,
《深入理解jvm虚拟机》《java并发编程的艺术》《spring技术内幕》《java编程思想》《码出高效》先来一套,(一套下去你可能会死),但是吧,这是jvm,并发现在都是必备技能了,
现在jvm的问题变态到问你有没有调优经验了。。
jvm你要知道运行时数据区各个组成部分存的是什么数据,看一个类的源码时,你知道哪部分运行的时候在哪,基本就差不多了。
把JMM和并发的知识链接起来,这样你JVM和并发就打通了,比如sync上锁,两个线程互斥,在JMM层面来分析一下。
我有一段时间基于这个钻研过java的字节码,觉得还是很不错的。面试还是有点加分的。(旷世面试官:应届生研究字节码的还是很少的。。你当时是怎么想的??)
并发的话推荐看看juc的源码。。(大部分源码我都看了,在这个方面还是有话语权的。。) 看看写jdk的大佬在并发方面的实践,比看干枯的理论要好很多


java基础知识,可以看java容器,string源码,包装类Integer的源码
在这里你会问,看这些有什么用。。。
容器可以了解一些设计,比如LIst-》AbstractList-》ArrayList 模板代码模式,然后ArrayList内部的迭代器实现,还有一方面是泛型的一些特性,比如<? extends T>和<? super T>一个数据消费者和数据生产者的关系在Collections.copy这个方法里面体现的淋漓尽致。
string可以看到一个不可变类是怎么实现的。为什么可以保证线程安全,final的内存语义?intern方法又可以让你重新思考一下jvm。
Integer可以学到池化机制的实现,一方面还有effective java书中一开头的静态工厂模式,也就是Integer.valueOf()方法
剩下的比如HashMap,就不说了,都问烂了。。


关于项目:
个人觉得,一个crud,一个轮子就够了。大部分后端开发的岗位都能周旋一下。。

其实归根结底就是要努力,一时的失败不算什么,谁都不是天生的收割机,但是努力的人最终都会变成收割机。。

还有一点就是保持学习,进入一个好的平台只是刚开始,打铁还需自身硬,你足够强到哪都是香饽饽,
表哥在工作期间平均下来每天刷一道算法,看了一些nginx核心模块的源码。。。。等等等等。。。贵在坚持,总有一天你的努力都会得到回馈的。。。
#校招#
全部评论
希望明年有你一半优秀
1
送花
回复
分享
发布于 2019-12-01 01:34
大佬
1
送花
回复
分享
发布于 2019-12-01 02:24
滴滴
校招火热招聘中
官网直投
强如人
1
送花
回复
分享
发布于 2019-12-01 11:42
卧槽,还没睡
点赞
送花
回复
分享
发布于 2019-12-01 01:52
斗宗强者,恐怖如斯
点赞
送花
回复
分享
发布于 2019-12-01 02:25
这是神仙吧
点赞
送花
回复
分享
发布于 2019-12-01 09:04
表哥优秀了
点赞
送花
回复
分享
发布于 2019-12-01 09:31
表哥太强了!
点赞
送花
回复
分享
发布于 2019-12-01 09:49
点赞
送花
回复
分享
发布于 2019-12-01 09:58
表哥太强了!手动三连
点赞
送花
回复
分享
发布于 2019-12-01 11:24
讲的都很中肯啊,帮表哥顶一下
点赞
送花
回复
分享
发布于 2019-12-01 11:52
非常真实了
点赞
送花
回复
分享
发布于 2019-12-01 12:59
表哥表面看似很拽  背后其实还是很用功啊 
点赞
送花
回复
分享
发布于 2019-12-01 12:59
表哥,问你个问题啊,😂深入理解jvm咋看啊,理论性好强,看的头痛,感觉看进脑子里的都是强行记忆的
点赞
送花
回复
分享
发布于 2019-12-01 13:09
表哥牛逼
点赞
送花
回复
分享
发布于 2019-12-01 13:19
干货,说得好
点赞
送花
回复
分享
发布于 2019-12-01 13:30
就想问下 表哥给小姐姐投的简历,都给发offer了吗?
点赞
送花
回复
分享
发布于 2019-12-01 15:01
工作期间还能坚持刷题,太强了
点赞
送花
回复
分享
发布于 2019-12-01 15:15
能拿这么多offer tql
点赞
送花
回复
分享
发布于 2019-12-01 19:40
不愧是表哥!
点赞
送花
回复
分享
发布于 2019-12-01 20:07

相关推荐

简历为C++相关美团金融服务后端&nbsp;一面&nbsp;70&nbsp;min&nbsp;1.&nbsp;面试官首先介绍自己的工作,具体我忘了,没让我自我介绍2.&nbsp;TCP&nbsp;四次挥手为什么比三次握手多一次3.&nbsp;进程与线程区别4.&nbsp;进程间通信5.&nbsp;中断6.&nbsp;CPU的L1,L2,L3缓存7.&nbsp;Redis&nbsp;有哪些数据结构,Redis&nbsp;锁怎么实现的8.&nbsp;介绍一下&nbsp;HyperLogLog9.&nbsp;手撕三数之和,自己写出个bug没调出来,通过不了,给我唐完了10.&nbsp;为什么不考研11.&nbsp;最早什么时候能来实习这次是二战美团,五天后回到人才库淘天&nbsp;终端开发&nbsp;一面&nbsp;30min1.&nbsp;自我介绍2.&nbsp;说一个最能体现你技术的项目3.&nbsp;关系型数据库和非关系型数据库有哪些区别4.&nbsp;渐进式rehash介绍,和不使用渐进式有什么区别,有没有测试过,性能如何5.&nbsp;事件驱动框架是什么,在数据库服务器中具体是哪些东西,为什么使用Reactor模型,和其他的相比有什么优势6.&nbsp;多线程编程需要注意哪些,数据竞争和线程同步7.&nbsp;死锁怎么产生,描述一个能产生死锁的伪代码,如何解决避免死锁8.&nbsp;自己的职业生涯规划有没有考虑过,比如未来几年内做到什么样子9.&nbsp;反问:面试官工作,终端开发学习建议10.&nbsp;面试官教我怎么面试,听到这个我就感觉不妙,他自己一个人讲了五分钟。纯KPI面,两天后流程终止携程&nbsp;移动端开发&nbsp;一面&nbsp;55min&nbsp;1.&nbsp;自我介绍2.&nbsp;为什么投递移动端开发工程师(因为简历是C++后端相关),我说感兴趣他说对哪些感兴趣,有没有了解过Android和IOS开发的技术栈3.&nbsp;TCP和UDP的区别4.&nbsp;HTTP和HTTPS的区别,证书是什么有什么用,非对称加密底层原理,双方怎么加密解密5.&nbsp;了解哪些HTTP状态码(我说反了4XX应该是客户端,5XX应该是服务端,重定向304)6.&nbsp;你的unordered_map怎么设计的,然后讨论了如何设计一个高性能的哈希表(哈希表的长度,如何避免冲突也就是均匀分布,重哈希的策略,哈希函数的设计等)7.&nbsp;有没有用过Python,用的什么版本,有没有编程干过其他的事情...8.&nbsp;算法题,三数之和。自己写了个demo没有测试,面试官觉得可以优化给了另一个思路9.&nbsp;没有反问环节,面试官说了一句感谢你就润了。技术栈不合适,进入人才库#C++##0offer#
点赞 评论 收藏
转发
59 280 评论
分享
牛客网
牛客企业服务