首页 > 语言Python找后端开发面试历程:网易&&滴滴&&旷视
头像
求杭州收留
编辑于 2020-01-04 10:59
+ 关注

语言Python找后端开发面试历程:网易&&滴滴&&旷视

在牛客学到了很多,也接受了很多牛油的帮助。在此表示感谢。
帖子写了之后有不少人会问我python后端找工作相关的事儿,但是现在工作比较忙,已经比较少上牛客了,如果你真的有点儿迷茫,有问题想问,或者需要内推自己或者自己的朋友,请直接加我微信poplar50, 我会定时的回复,如果没有帮上忙,也请见谅。

本人技术栈为Python后端开发,下面所有公司都是应聘的后台研发岗位,面经如下:

老虎证券(挂)

一面

python基础部分:

  1. 迭代器生成器 生成器是如何实现迭代的
  2. list实现
  3. import一个包时过程是怎么样的?
  4. 装饰器实现
  5. 菱形继承
  6. 内存垃圾回收:分代回收细节
  7. 项目具体
  8. mysql b+树
  9. wsgi

二面

  1. 堆排序
  2. 比较c语言和Python语言中的异步
  3. epoll
  4. tornado框架
  5. 求二叉树深度
  6. mysql联合索引
  7. wsgi
  8. uwsgi进程模型

网易互娱(offer)

一面:

面试最开始做的笔试题据说需要保密。。就不发了。。

  1. 自我介绍
  2. Python里的eval
  3. Python里的装饰器
  4. 虚拟内存与物理内存区别
  5. Top k问题
  6. 如何用两个栈表示一个队列
  7. 如何判断链表有没有环
  8. epoll
  9. 100个石头,每个人一次可以摸1-5个,甲先摸,问甲有没有必赢的方法;
  10. TCP与UDP的区别
  11. TCP的断开过程
  12. 二叉树的镜像

工作需求相关面试官建议精通Linux,建议精通socket

二面:

  1. PythonGIL锁
  2. C++ C 内嵌Python代码
  3. 有没有读Python源码
  4. Python垃圾回收
  5. Python内存泄露
  6. 游戏模型如何确认人身上的胶囊体是否被激光射中(主要就是扯这个题)
  7. 编译原理相关

今日头条(挂,后来被捞了但已经签三方了,算是dream company)

全靠回忆,想不全了,供参考

一面:

  1. 设计并实现字典,常用操作,get, set, delete
  2. page ***
  3. no-delay
  4. time-wait
  5. 用过哪些存储相关的第三方库

二面:

  1. HTML5的一些特性
  2. 如何强制要求浏览器不走缓存
  3. 事务,隔离级别
  4. 索引相关
  5. io多路复用
  6. 手撕题:二维数组找某元素出现的所有位置,元素可能重复。

三面:

  1. 论文相关
  2. 一个感觉应该是考产品经理的题
  3. 讲下博客第一篇的BFPRT算法
  4. 海盗投票智力题(具体题目太久忘记了)

滴滴(offer)

一面:

  1. tcp 三次握手
  2. 如果一个客户端不理会服务端发来的ack,一直重发syn怎么办?(我理解为类似syn洪水攻击)
  3. 拥塞控制 流量控制
  4. socket编程 raw_socket
  5. 从用户态到内核态的汇编级过程
  6. 中断以及系统调用
  7. 不用中间元素交换两个元素的方法,(答:使用异或),又问:不使用异或有什么缺点。。
  8. 亿级元素top k,答:k大小小顶堆,又问:如何多线程改进
  9. 全局变量和局部变量都保存在哪儿
  10. coding:递归翻转链表。。

二面

  1. 网页相似性比较
  2. LRU(O(1)时间复杂度)
  3. rpc
  4. 多个有序数组合并为一个
  5. 服务感知(客户端如何感知服务端状态)

三面

  1. 如果地球自转速度降低一半,会怎么样
  2. 项目,讲具体场景实现,情景题
  3. http cookie具体所有相关内容
  4. http传输一个二进制文件的所有过程
  5. coding:顺时针打印数组

旷视面经 (offer)

没有及时记录,只能想起来这么多了

一面

  1. 快排
  2. tcp三次四次
  3. 二叉树的重建,能否利用前序和后序重建二叉树?不能的话给出反例
  4. flask和Django区别
  5. 项目问题

二面

  1. free -m显示里的buffer是指什么
  2. restful
  3. tcp相关
  4. http和https相关,ca证书内容,SSL加密内容
  5. 手撕代码题忘了
  6. 4G内存,16G数据,找中位数

三面

  1. 扣项目,lookup相关数据结构,预估数据大小
  2. 实现字典

四面

  1. 项目相关闲聊
  2. 手撕题两道:
    1. 每个员工都有一个直属上级,找指定员工所有下属
    2. n个数据块, k个***位,数据块只有在***位里才能访问,给定数据块序列,找最少将数据块加入***的次数;

总结:

秋招就面试了五家公司,能拿到三个offer真的是运气爆棚。还有去哪儿和ihandy以及快手发了面试邀请,因为懒没有去面,表示非常非常感谢。
有老哥私信问我Python后端路好不好走?怎么走?我就自己秋招体验大概说一下。
我选Python作为自己的主要语言有两个原因,一个是接触最多,用起来也最顺手;二是自己有点儿拖拉,等真正回神儿感觉秋招已经到眼前了,也没有时间改了,就只能一条路走到黑。虽然,有不少公司已经明确写了招聘Python工程师,但跟Java以及c++比起来,还是不能打。所以如果你有足够的时间,尽量还是学java吧,虽然求职人数最多,但是机会也最多。 我曾经尬面过一家银行类的公司,因为太简短,我就没把这个当成一次面试,对话内容如下:

面试官:同学,我看你官网投递没有填写意向职位,你的技术栈大概是怎样的呢?
我: 不好意思,我技术栈主要是Python后端,当时是看到没有对口的岗位,所以就放弃了完善简历,但没想到收到了笔试邀请,就认真做了下。没想到收到了面试邀请。
面试官:那你虽然是Python技术栈,但是面试我还是要问你Java和C++的,你看咱们还继续吗?
我:那好吧,就不继续了,很不好意思浪费您时间了。

所以有可能的话还是深入学习Java以及C++吧。

如果你头铁,真的就是想走Python路线,那么我的建议如下:
入门:Python核心编程第二版,Python基础教程,官方tutorial,这三个三选一就行了;
进阶:Python cookbook(偏实践的好书), fluent Python
还有一本很实用的书叫做The Python3 standard library by example
如果你有时间,你可以读一读很有意思的增强建议:比如做python后端怎么可能不读一读PEP 3333?
如果你还有时间,你可以看一下cpython对常用数据结构比如list和dict的实现。
在读书的期间,为了敲开实习的大门&&填充简历,你可以用Django、flask或者tornado做一个小项目。

在秋招中,我还发现了一个很有意思的现象:大厂除了网易,都没有问我Python基础,更没有对我的个人项目有啥关注。中小厂则是会问的比较多(我是根据老虎证券的面试套路猜的)。我问过旷视的面试官,为什么没有问下语言基础以及我做的Django项目,他跟我说基础以及算法还是最重要的。我现在也觉得基础好+代码实现能力强才是王道,当然语言你能精通几个就精通几个,没有坏处。

说道手撕代码,把剑指offer刷个两遍,应付面试就没有问题了。至于笔试,我推一下牛客左神的算法课。如果你时间充足,可以从今天开始就每天刷几道LeetCode,既娱乐又能进步。

至于操作系统以及算法以及网络以及数据库相关的基础,牛客上有很多大佬都已经给出了自己的书单,照着看就好了。

菜鸡一个,运气不错,大家共勉。

更多模拟面试

全部评论

(11) 回帖
加载中...
话题 回帖