当前位置:主页 > 查看内容

热乎的京东数科面经

发布时间:2021-05-05 00:00| 位朋友查看

简介:Alex想要改变世界的007程序员。 背景双非本科计算机科班生大三下其实本来我是图书馆考shui研jiao选手但是 枭哥 拿到了字节的offer之后开始搞风搞雨非要拉着我催我投简历再加上我跟一些要好的老师、学长、学姐聊了聊她们也建议我如果有好的机会的话对我来说还……

Alex,想要改变世界的007程序员。

(背景:双非本科计算机科班生,大三下)其实本来我是图书馆考(shui)研(jiao)选手,但是枭哥拿到了字节的offer之后开始搞风搞雨,非要拉着我,催我投简历,再加上我跟一些要好的老师、学长、学姐聊了聊,她们也建议我如果有好的机会的话,对我来说还是去工作更适合。想了很久,决定试一试,成了就去实习,考研考个在职,不成也就安心待在图书馆了,省的天天胡想瞎想。
在这里插入图片描述

上周五在BOSS直聘上投的算法实习生的简历,约的下周一晚上八点面试,周末就留在工作室一直在准备。周六主要就是搜集了一下网上的京东面试题,大概看了一下什么难度,然后自己做一遍。周日狂刷牛客京东算法真题,练练手感,主要是也是想到时候万一让手撕code能遇到原题呢。周一再挖自己的简历,简历中的项目一定要足够熟悉,而且要能够清晰的表达,然后结合投递岗位的职位描述、工作内容和任职资格,找一些相应内容的面试题,过了一遍,最后就静等面试了。


放一波简历截图:

在这里插入图片描述

在这里插入图片描述

简历很拉,大佬轻喷~


万万没想到的是,一面是电面。七点四十的时候面试官拉了一个群,三个人,分别是我,一面面试官,二面面试官,就这么,简单粗暴,哈哈,然后就开始了。

一面面试官感觉比较年轻友好,聊起来很轻松,一开始聊了大创项目,他好像是第九届,我这应该是第十几届了(我好像算出来点什么),主要就聊了聊大创项目做了些什么,做的怎么样,属于正式面试前的闲聊,放松了一下,然后开始正式面试。首先问了我最擅长什么语言,我说Python,然后,我就懵了,开始问我Python相关的题目,我的天,忘了准备语言基础这茬了,我还以为算法实习生会直接开算法么,总结教训:对自己经常使用的语言要足够熟悉。

语言基础的所有的问题记不太清楚了,基本上都还算简单,凭之前的印象都能答出来,有一题印象深刻:“你对多线程有什么理解么?”,我以为是问我关于进程、线程、协程的理解,然后开始讲操作系统,磕磕绊绊讲的也不是很好,讲完之后面试官来了一句:“我其实想让你说的是Python里的多线程跟其它语言有什么区别?”。
在这里插入图片描述

我靠这题我会啊,GIL锁,当时学的时候花了大半天的时间研究,终于研究明白了,可惜啊可惜,没有说出来的机会了,面试官直接下一题,总结教训:如果面试官提出的问题模棱两可,一定要先提问把面试官实际想问的问题确定,这其实也是面试的一部分,看你能不能把一个抽象的问题具体化,然后再解决它,不要怕提问,总比答非所问好多了。
在这里插入图片描述

语言基础问完了之后开始问算法,这方面问的倒挺多,从基本的数据结构到一些基本算法都有涉及,感谢左神算法,看完他的初级班和中级班之后答起来基本无障碍,印象比较深刻的是面试官问:“二叉树的遍历了解过么?”,我:“一般来说比较常见的是前、中、后序遍历这三种,另外在一些特殊情况下也会用到借助于BFS的层序遍历。首先说前、中、后序遍历,它的递归版本需要了解递归序这个概念,……”,后面还有巴拉巴拉一大堆我正打算吹呢,面试官打断我说:“好了好了,我知道了,下一题,什么是红黑树?”。哈哈哈,我感觉面试官可能也是看过左神算法,然后,卧槽,红黑树,大哥我错了。
在这里插入图片描述

算法这部分就一道红黑树没答上来,其它感觉都回答的很好,可惜因为是电面没有手撕code,然后就开始问AI方面的问题。一开始是一些比较概念的基础题,有一题印象特别深刻,BN层和dropout层的顺序谁前谁后?这题给我问懵了,因为我一般写网络模型的时候都是对着paper的结构图直接写code,也没怎么想过顺序的问题,印象中应该是dropout要在BN层后面吧,但是为啥?没研究过,回答的不太好。总结教训:多问为什么,突破常规思维,不要一昧的接受。我简历上写了一个用Yolo-V5做的手势实时识别与人机交互控制的项目,然后就开始聊Yolo这方面,感觉面试官可能不是CV这个方向的,所以只了解到Yolo-V3,然后我就开始凭借之前做项目的时候搜集的各种关于Yolo的资料开始吹,甚至连Yolo之父为啥退出CV界以及后面V4和V5版本的发展都聊了。所以对自己简历中的项目一定要足够了解,包括为什么选择这个模型,这个模型的数学原理是什么,模型结构怎么设计,实验结果的分析等等,都要了如指掌,这样跟面试官聊的时候才能有底气(比如我二面就因为这个直接垮掉)。AI部分主要其实就是Yolo,后面引申出来RCNN、Anchor和FPN方面的内容,这个没怎么用过,回答的不是很好,感谢面试官手下留情,没有深问。
在这里插入图片描述

最后给了个实际业务题,估计是我简历中有关于前后端的项目,让设计一个模型训练平台,主要功能就是后端可以训练一些模型,然后前端可以显示训练效果和记录。这道题其实就没有什么正确答案了,主要看的就是业务能力吧,我就把我管用的套路,后端Django+RestFramework+MySql,AI框架选择了PyTorch,服务器Linux、Docker也涉及到了,主要是通过Docker容器技术支持多模型同时训练,并且通过Django-rq能够实时获取模型的训练过程并记录在数据库,在前后端交互方面遵循Restful规范,后端需要提供相应的查询接口以及下载功能(django-sendfile),前端通过Vue+Element-UI实现,结合G6图可视化引擎和G2图形化语法让显示效果更友好,具体的UI设计倒没有说,总的来说最后这题基本上把我所有知道的、用过的、没用过的、见过的技术全说上去了。

一面整体感觉还行,大概花了40多分钟,面完之后面试官说还可以,想直接给我推二面,问我九点半的时候有没有空,我寻思干脆直接一晚上搞完吧,就答应了。中间半个小时,跟工作室的同学吹了会牛逼、给一面面试官发了封感谢信、搜了一下一面没答上来的题目,然后就等二面了。

二面的面试官听声音感觉是个牛逼的大佬,估计应该是个leader吧。一开始开了个小玩笑,因为我在简历上写了996无压力,然后二面正好是晚上九点多快十点了,然后面试官说了句:“看来确实996无压力”,感觉两轮面试官都特别友好,一开始会稍微放松一下,也仅仅是一开始。
在这里插入图片描述

二面面试官说一面面试官给了我很高的分数,这一下让我有点有点懵,感觉我是菜鸡我不配,果然,二面就被技术大佬制裁了。还是那句话,写在简历中的项目一定要足够熟悉。二面挑了个我最近刚做的项目,LSTM+PPO做量化交易策略,估计是这个项目正好跟部门业务挂钩吧,但是,555,这个项目实际上是我还在边学边做的,没有Yolo那个项目掌握的那么熟练,早知道就不写了。LSTM方面的答的还行,主要原理讲了一下,重点在输入门、遗忘门和输出门这里,到了PPO,直接死亡现场,简单介绍还行,但是涉及更深的层次就拉垮了,尤其是在策略更新时的截断操作,胡言乱语不知道自己在说什么。重要的事情说三遍:写在简历中的项目一定要掌握!写在简历中的项目一定要掌握!!写在简历中的项目一定要掌握!!!

简历中的项目问完了之后给了一道业务题,怎么判断要不要给一个人开通白条?一开始有点懵,稍微整理了一下思路之后,主要还是根据一个人消费历史评估一个消费能力,然后要求用户实名认证获得经济水平,最后要求提供经济收入证明保证用户具有还款能力,综合考量各方面的指标最后做一个分类问题,用SVM也好,逻辑回归也好,结合多个模型最后给出一个判断。

二面最后给了一个算法题,有两个文件,A文件里面是大量的key,B文件里面是大量的key-value,筛选出B中所有key在A中的key-value,文件都很大,不可能全部读到内存中。这题一开始答的不好,后来在面试官的引导下逐渐答出来了,将A中的文件按照某种共同属性,比如具有同样的前缀分块存储,然后读取B的文件内容,根据key的属性去不同的块中查找。

总得来说,这次面试还算顺利,前几天刚跟面试官联系,说已经开始申请offer了,大概两到三周可以完成,期待~

;原文链接:https://blog.csdn.net/weixin_43336281/article/details/115432722
本站部分内容转载于网络,版权归原作者所有,转载之目的在于传播更多优秀技术内容,如有侵权请联系QQ/微信:153890879删除,谢谢!

推荐图文


随机推荐