2018秋招面经-后端开发

博主渣渣本科,挣扎到十一月秋招终于结束了。面过百度/腾讯/小米/网易/搜狗/知乎/京东/360/瓜子。期间总结了一些面试题目,现在放上来。由于是博主自己的面经记录,所以涵盖不全面的话诸位请谅解。 
根据博主的面试经验来看,面试有一定的层次性,如bat级别公司每个点都会深入,而有些公司则只会问到表层,所以将每个领域都分为必须掌握和深入了解这两个部分。

一、计算机网络

基础部分

  1. TCP报头格式
  2. UDP报头格式
  3. TCP/UDP区别(不仅是宏观上的,最好能根据各自的机制讲解清楚)
  4. HTTP状态码(最好结合使用场景,比如在缓存命中时使用哪个)
  5. HTTP协议(一些报头字段的作用,如cace-control、keep-alive)
  6. OSI协议、TCP/IP协议以及每层对应的协议。
  7. SESSION机制、cookie机制
  8. TCP三次握手、四次挥手(这个问题真的要回答吐了,不过真的是面试官最喜欢问的,建议每天手撸一遍,而且不只是每次请求的过程,各种FIN_WAIT、TIME_WAIT状态也要掌握)。
  9. 打开网页到页面显示之间的过程(涵盖了各个方面,DNS解析过程,Nginx请求转发、连接建立和保持过程、浏览器内容渲染过程,考虑的越详细越好)。
  10. http和https区别,https在请求时额外的过程,https是如何保证数据安全的
  11. IP地址子网划分
  12. POST和GET区别
  13. DNS解析过程

深入部分 
13. TCP如何保证数据的可靠传输的(这个问题可以引申出很多子问题,拥塞控制慢开始、拥塞避免、快重传、滑动窗口协议、停止等待协议、超时重传机制,最好都能掌握) 
14. 地址解析协议ARP 
15. 交换机和路由器的区别

二、数据库

基础部分

  1. 事务四大特性(ACID)
  2. 数据库隔离级别,每个级别会引发什么问题,mysql默认是哪个级别
  3. MYSQL的两种存储引擎区别(事务、锁级别等等),各自的适用场景
  4. 数据库的优化(从sql语句优化和索引两个部分回答)
  5. 索引有B+索引和hash索引,各自的区别
  6. B+索引数据结构,和B树的区别
  7. 索引的分类(主键索引、唯一索引),最左前缀原则,哪些情况索引会失效
  8. 聚集索引和非聚集索引区别。
  9. 有哪些锁(乐观锁悲观锁),select时怎么加排它锁
  10. 关系型数据库和非关系型数据库区别
  11. 了解nosql
  12. 数据库三范式,根据某个场景设计数据表(可以通过手绘ER图)
  13. 数据库的主从复制
  14. 使用explain优化sql和索引
  15. long_query怎么解决
  16. 内连接、外连接、交叉连接、笛卡儿积等

深入

  1. MVCC机制
  2. 根据具体场景,说明版本控制机制
  3. 死锁怎么解决
  4. varchar和char的使用场景。
  5. mysql并发情况下怎么解决(通过事务、隔离级别、锁)

Redis

  1. redis数据结构有哪些
  2. redis队列应用场景
  3. redis和Mem***d(支持数据持久化)
  4. 分布式使用场景(储存session等)
  5. 发布/订阅使用场景

三、操作系统

  1. 内存的页面置换算法
  2. 进程调度算法
  3. 进程间通信方式
  4. 进程线程区别
  5. 进程之间的通信
  6. 父子进程、孤儿进程
  7. fork进程时的操作, 
    这个部分我回答的都不好,只能是死记硬背,建议基础好的同学多看看操作系统这部分,能大大加分。

四、算法

基础

  1. 剑指OFFER的各个题目是最常见的,即使不是原题也是题目的变体,因为面试不像笔试,一般不会出特别困难的题目,所以剑指OFFER上小而精的题目就非常适合。建议手刷一遍。PHP的同学可以参考专栏剑指OFFER
  2. 二叉树相关(层次遍历、求深度、求两个节点距离、翻转二叉树、前中后序遍历)
  3. 链表相关(插入节点、链表逆置、使用链表进行大数字的加减,双向链表实现队列、寻找链表中的环)
  4. 堆(大量数据中寻找最大N个数字几乎每次都会问,还有堆在插入时进行的调整)
  5. 排序(八大排序,各自的时间复杂度、排序算法的稳定性。快排几乎每次都问)
  6. 二分查找(一般会深入,如寻找数组总和为K的两个数字)
  7. 两个栈实现队列。
  8. 图(深度广度优先遍历、单源最短路径、最小生成树)
  9. 动态规划问题。

    深入

  10. 红黑树性质

  11. 分治法和动态规划的区别
  12. 计算时间复杂度
  13. 二叉树和哈希表查找的时间复杂度

栈和链表是面试算法的时候经常用到的工具,多考虑怎么用数据结构的性质解决,因为面试不像笔试,对基础数据结构关注的比较多一些,一般问题也比较简单。然后取模也是常用的工具(比如有一次问怎么让100个进程按规定的权重被调用,就可以用取模的方式)。 
面试官一般会先出简单的问题,然后深入地问下去,最好是根据他的思路走,因为能听懂他的提示也是需要考察的能力。

LINUX

  1. 硬链接和软连接区别
  2. kill用法,某个进程杀不掉的原因(进入内核态,忽略kill信号)
  3. linux用过的命令
  4. 系统管理命令(如查看内存使用、网络情况)
  5. 管道的使用 |
  6. grep的使用,一定要掌握,每次都会问在文件中查找
  7. shell脚本
  8. find命令
  9. awk使用

语言部分(PHP)

  1. 数组操作函数
  2. 字符串操作函数(数组和字符串的函数是最常问的,非常多,一定不要记混了)
  3. 指针和引用区别
  4. 堆和栈的区别
  5. == ===区别
  6. PHP的垃圾回收机制
  7. zval结构
  8. 防sql注入
  9. 跨域问题
  10. 长链接和长轮询

面向对象、设计模式

  1. 接口和抽象类区别
  2. 单继承
  3. construct的调用顺序(子类父类之间)
  4. 设计模式(工厂模式、策略模式、单例模式、装饰模式比较常见)
  5. OOP特性,通过哪些机制实现的
  6. 重写和重载区别
  7. 静态类静态方法
  8. 根据某个需求设计一个类(主要考虑类之间的继承关系和属性的权限设置)

项目

  1. 项目中遇到的困难(提前想好,并且把实现或者优化方法说清楚)
  2. 系统的量级、pv、uv等
  3. 应对高并发的解决办法(分布式)
  4. 在项目中主要负责了哪些工作。
  5. nginx的负载均衡
  6. 分布式缓存的一致性,服务器如何扩容(哈希环)
总之要把写在简历上的项目部分熟悉一遍,技术栈、项目功能、难点都要考虑好。

期间整理了一份难点PDF,在http://blog.csdn.net/acingdreamer/article/details/78479476末尾有下载链接
#百度##去哪儿##小米##网易##360公司##搜狗#
全部评论
欢迎大家投递阿里巴巴的岗位,岗位介绍:https://www.nowcoder.com/discuss/91393?type=0&order=0&pos=18&page=1 报名请点击下面的链接 http://alibaba.tupu360.com/campusActivity/getActivityInfo?activityCode=bujp578e8%2FbcDNZh%2FRuwvqqFOqa17CcvfxDlghT4VSw%3D 或者扫面如下二维码
点赞 回复 分享
发布于 2018-08-08 17:33
172094090@qq.com 谢谢楼主
点赞 回复 分享
发布于 2018-03-26 19:46
13059317424@163.com 谢谢大佬分享宝贵经验
点赞 回复 分享
发布于 2017-11-21 08:43
谢谢楼主,1024965193@qq.com
点赞 回复 分享
发布于 2017-11-15 16:56
没积分,能发一下吗。谢谢啦!1911351154@qq.com
点赞 回复 分享
发布于 2017-11-09 11:28
求资料,1354643953@qq.com好人一生平安🤗
点赞 回复 分享
发布于 2019-08-06 08:42
1038108486@qq.com  大佬可以发一份给我吗
点赞 回复 分享
发布于 2019-08-05 12:00
1340031470@qq.com 感谢楼主🙏
点赞 回复 分享
发布于 2019-05-26 18:03
870192421@qq.com 谢谢楼主 楼主好人
点赞 回复 分享
发布于 2019-05-26 16:41
谢谢大佬的分享🙏🙏
点赞 回复 分享
发布于 2018-08-17 01:39
奇怪,肯定是要百度网盘链接啊,真是看不懂那么多人放邮箱干嘛,难道要楼主一个一个发???现在的人都这么***的吗,还几百个人都是这样
点赞 回复 分享
发布于 2018-08-09 22:19
gonefuture@163.com,  谢谢楼主 楼主好人一生平安!
点赞 回复 分享
发布于 2018-08-09 17:52
731283733@qq.com 感谢大佬
点赞 回复 分享
发布于 2018-08-07 18:39
后端面试有框架相关的问题吗
点赞 回复 分享
发布于 2018-08-07 16:14
lyuc0924@foxmail.com    好人一生平安。
点赞 回复 分享
发布于 2018-08-02 16:32
能给我发一下吗,谢谢575870189@qq.com
点赞 回复 分享
发布于 2018-08-02 16:24
求资料,794593523@qq.com, 谢谢楼主~
点赞 回复 分享
发布于 2018-08-02 15:29
fupengfei058@gmail.com,谢谢楼主哈!
点赞 回复 分享
发布于 2018-08-02 00:35
求资料,楼主好人一生平安,1031974111@qq.com
点赞 回复 分享
发布于 2018-08-01 23:37
420381371@qq.com,谁有?能给发一份吗,非常感谢
点赞 回复 分享
发布于 2018-08-01 22:40

相关推荐

2025-12-16 22:19
已编辑
南昌市第三中学 Java
个人背景:27届本科 江西普通一本院校个人经历:小厂->用友->蔚来->美团->腾讯不知不觉已经有了五段实习经历,也快在外面漂泊一年半了,在今年也完成了两年前自己想进大厂的目标,可能在别人看来确实就是一段比较传奇的过程,一步一步都在向上走,也会有很多人来问我相关学习实习的一些问题,我看到了也会尽量去回复,但现在我想给大家说的并不是千篇一律的学习路线,而是我认为更为重要的——勇气与抉择。下面我来分享一下这些年的心路历程最初学习背景:我跟很多人一样,都是刚进入大学才开始接触计算机,也刚刚拥有自己的电脑,在刚开始学习的过程没有任何人来帮助我,给予我相关的指导,完全是自己摸索出来的一条学习路线,不会有如今这样有很多完善好的速成路线,而家里人都在想让我考研,似乎本科以我的学历就业是不现实的。我也很早意识到了学历对于我的限制,所以萌生出了大一就开始实习的想法,但这个想法在当时基本上是不存在。所有人都在抨击我(这里感兴趣的话可以看我最早发的帖子),有的人说本科想进大厂痴人说梦,有的人劝我以我的学历考研才是上策,有的人说我屁都不懂就来卷,总之我很难说去看到有支持的。我大一的时候还没卷成如今这样很多大一实习,当我想找到是否有跟我一样下定决心一步一步往上走的人,我当时是没有找到的,要么是秋招的哀嚎,要么就直接是零实习进大厂(现在我知道,这里所谓的普通学历0实习进大厂的水分有很多,排除真正意义上的运气和实力,其他基本上全是造假作弊,大家自己心知肚明,也要放平心态)这就导致了一个没有先例的情况,很多人也都是拿没有先例来抨击我,包括家里人也不支持我去实习,可能很多人的积极性就会下降,但我从来不会信所谓的不可能,如果没有先例,那我就会是第一个,他们不行,是因为他们没能力,他们坚持不下去。勇气是很重要的,当你发现你身边没有人像你一样,就很少会有人相信你,看好你,但好在,我不在乎。最初实习阶段:在最初3000沟通只有零星几个面试的时候,那感觉确实很不好受,沉没成本太大,得到的正反馈却太少,当时基本上都是一天学八个小时从来不间断,没有周末没有节假日,甚至过年我都在学习,这就导致我现在都会因为我周末偶尔休息的时候会有负罪感,我感觉已经是种病了,我也知道我也可以休息会但控制不了。当时我出去实习口袋里有1w块(这是我高中三年加大一一年存下来的,基本上是很抠很抠,一个月生活费有时候有一千多有时候就五六百,但也算得上是成功攒了一点钱)但第一次总会是很害怕,担心租房被骗,担心工作能力不行,担心被公司坑,担心学校原因导致不能实习等等,基本上在前面几段实习是根本不攒钱的,代课已经花了一万多,加上租房来回,基本上只能说堪堪不负支出,后来远赴北京,作为一个南方人,有很多不适应的地方,但现在回过头来一想,已经在北京呆了一年多了。我知道很多人要么担心学校因素,要么担心赚的还没花的多,种种因素导致了实习的困难,我也很害怕,我的钱会不会最终全部打水漂,学校会不会爆雷,我以后还能顺利实习吗等等。但对于我来说,我能对自己狠下心,我能接受通勤时间一个半小时只为节省那么几百块的房租钱,我能控制自己的消费的欲望,我能每个月大把大把把钱给代课,这可能就是我能够初期实习顺利的原因,这需要勇气,也需要对自己狠。实习中的抉择:在有了两段实习经历后,我的目标就朝着大厂进发,在去蔚来的中途,我oc了七八家中小厂公司,这里面不乏一些待遇极其优越的公司(有一家我真的差点就去了),但我最终还是都拒了,因为我清楚的明白想往上走的,只有公司title会帮你说话,没有人有义务理解你的困难你的坚持,好在最后去了蔚来,也算如愿以偿。从蔚来到美团倒是没有过多纠结,因为在最开始的梦中情厂就是美团,但从美团去腾讯这个决定或许是我人生中的转折点。美团多次挽留我,帮我沟通问hr,基本上就是一定能转暑期然后成功转正,仿佛这年薪40w的工作已经触手可得,所以在拿到腾讯offer的那一刻并没有多高兴,因为我意识到这可能是我此生最接近大厂的一次机会,可能大部分人都会选择留在美团,我也认为这一定是一个好的选择。我能够走到如今,是永远相信自己的判断,我的每一步都是在赌一个好的未来,只不过,这次赌注大了点而已,或许未来我再也进不了这些所谓的大厂,但我赌的不是选择错对,我赌我不后悔。所谓信念支撑:都说人要为自己而活,但我或许做不到,毕竟我身处人情社会,有许多爱我的人在等着我成长,我也不能接受因为能力而再次放弃一段感情,最近喜欢一段歌词:爱我的人相信我我一直在努力改变所有失败为你们而存在爱我的人感谢你你们的爱就算人生不是精彩我也要勇敢的姿态最后的最后,我想给大家传递的从来都不是一个普通学历进入大厂的意气风发,我想给大家传递的,是一股相信自己能够向上的信念和可能性。在没有打比赛能力,没有开源能力,没有学历等各个限制下,我帮大家试出了一条能够向上的路。如果没有先例,那我会是第一个。我们不需要弄虚作假,只靠自己一步一步脚踏实地,哪怕慢一点,不赌自己是否成功,只赌自己不后悔,问心无愧。最后送给大家,也送给自己一段话结束2025:生活可能没你想的那么好,也不会像你想的那么糟,人的脆弱和坚强,都超乎了你的想象,有时候可能脆弱的一句话就泪流满面,有时候你发现自己咬咬牙已经走了很长的路了
等闲_:感觉咱们双非的同学都有一个共性,想证明双非也是能进大厂的,我之前所有的标签都喜欢带着双非,仿佛这样可以像别人证明自己的实力,现在我却不再想证明双非到底能不能进大厂,我的生活的所有者是我自己,享受生活,接受结果
2025年终总结
点赞 评论 收藏
分享
评论
193
1765
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务