本人背景:普通一本,双非,研究生,主要研究方向:推荐算法-协同过滤

两个月前,我还每天登录期刊网站查询自己的论文状态,想着增添一点申请博士的砝码。两个月后,我改变想法拿到第一份实习offer,读博之路渐行渐远。

这两个月不仅经历了(读博-工作)思想的博弈,更经历了算法工程师面试官的无情打击。从学术科研转向工作,无非基于四点理由:

  • 自身能力限制:研究生期间总共写作5篇英文论文,录用1篇会议,返修1篇SCI二区,外审1篇SCI一区,两篇待投。这样的成果状态申请博士希望渺茫。尽管英语阅读和写作能力得到提升,但口语能力和英语听力极差。要知道博士对英语能力是基本要求。
  • 博士毕业压力大:每年博士能顺利毕业的寥寥无几。听师兄的意思,我们身在经管,做的却是偏计算机的研究,在很多学校经管系都不认同。跨计算机申博难度更是翻番。所以博士的学校选择和导师选择少之又少。
  • 家庭环境:作为一个普通家庭,父母年事已高,读博一般是四年,这四年没办法挣钱,所以家里稍微出现点什么不测,这博士必定读不下去
  • 兴趣使然:从兴趣来讲,我的热情更偏向于工作,特别是算法工程师。对于论文写作,动力并不是很强烈。学术科研写论文是常态,这种生活状态我是不能长时间忍受的。

经过长时间的思考和家里的沟通,我下定决心放弃读博思想,转而寻找工作。找工作第一步便是找到一份实习,积累实习经验,为秋招做准备。但是让我意想不到的是,算法实习真的难觅。我最开始想的是就近,在成都投递了大概10几家,其实岗位本来就不多。过了大概半个月,一家公司都没联系我,这使我初生牛犊的信心凉了半截。心想在学校里,跟同龄人比起来我算混得不差,结果简历一出手就碰壁。

在重庆折腾了将近一个月,我毅然决然试试北京,北京机会的确要多很多。我投递了60家左右公司,大厂几乎投递了一遍。也收到了几个公司的回复,进行了系列面试,待会我会把面试经历附在后面。面试的情况特别不理想,其中最不理想的就是手撕代码环节,基本上都跪在这环节。不过每一次的面试经历这也坚定了我的想法,也刺激我疯狂查漏补缺,将自己的状态从学术科研转移到工作状态。记得映像最深的是我登陆进leetcode,看到上面只做了一道题:两数之和,时间是两年前,也就是本科阶段,顿时脑子里充满了本科无数的回忆,感慨万千。要知道我本科四年励志做一名前端开发工程师,而今却走上算法工程师的道路。时间过得真快,世界也变换莫测。

接下来是我从面试第一家到拿到实习offer的经历,这份经历将永远留存在我的记忆中,激励我勇往直前。

新浪移动

一面:主要问了简历相关的内容

  1. 简述每一篇论文的工作内容
  2. 数据做过哪些预处理操作
  3. 简历中提到复现了20+文献算法,是些什么算法

二面:主要问业务层的内容

  1. 场景题目一:异质内容推荐。给定杨超越的朋友圈,王者荣耀视频,北京天气,如何排序
  2. 场景题目二:同质内容推荐。给定100个王者荣耀视频,如何做排序

三面(二面不满意,加面):主要问业务层的东西

  1. 如果让你来做推荐,应该怎么做?
  2. 回顾二面的问题,二面的问题你有自己的想法了吗?

总结:我对业务层基本上没有什么接触,太陌生。原想借助实习熟悉业务上的东西弥补自己的短板,结果人家一上来就要你懂业务,第一次实习是真难。可想而知结果是没有后续。

有鱼科技

一面:技术面

  1. 自我介绍
  2. 介绍自己发表的论文
  3. 手撕代码1:求给定整数数组的最大子序列(无果)
  4. 手撕代码2:判断一个链表是否有环(无果)

总结:从读博转变到工作的想法就在1个月前,我对数据结构与算法停留在理论层次,通过了解,需要去leetcode上刷题增加自己的实践经验。

网易

一面:技术面

  1. 简历相关内容(主要是协同过滤)
  2. 机器学习中经典分类算法了解哪些
  3. 机器学习中损失函数有哪些,线性回归的损失函数是什么,决策树的损失函数是什么
  4. 机器学习防止过拟合的方法有哪些
  5. 机器学习的性能怎么评判
  6. 代码题一:给定一颗二叉树,求解所有叶子节点的深度
  7. 代码题二:给定一个整数数组,求解两数之和小于目标值的对数

二面:技术面

  1. 对一些业界比较流行的模型的考察(如逻辑回归及推导,GBDT等)
  2. 推荐的框架或流程,每个阶段用到的模型主要有哪些(召回阶段和排序阶段)
  3. 代码题一:判断两条链表是否相交
  4. 代码题二:二叉树的遍历

总结:手撕代码惨不忍睹,继续leetcode刷题

京东

一面:简历相关

  1. 论文提到参加过一次广告腾讯算法大赛,能详细说一下吗(特征处理和模型)
  2. 代码题一:判断一颗二叉树是否是平衡二叉树
  3. 代码题二:实现pow(x,n)

总结:毫无疑问,手撕代码环节落马

度小满(前身百度金融)

一面:深度学习相关

  1. 深度学习了解多少
  2. 深度学习中防止过拟合的方法有哪些
  3. 了解DIN,Transformer,attention等吗
  4. 代码题一(sql):
    给定两张表 table1:id, date        table2:id, money, issueDate.
    查询结果: table2中时间(issueDate) 在table1中的date之前的money均值,并返回距离date最 近一次的issueDate
    字段:id,average,  lastDate
  5. 代码题二 (python)
    给定test.txt文件,内容如下
    "name:Tom,sex:female,{"height":180,"date":"09-15","width":60}"
    "name:Linda,sex:male,{"date":"09-10","height":180,"width":60}"
    "name:Jack,sex:female,{"width":60,"date":"09-11"}"
    "name:Hello,sex:male,{"date":"09-12","height":180}"
    要求不适用任何python包
    读取test.txt文件,对每一行构建一个字典
    {
    name: xxx
    sex: xxx,
    date: xxx
    }

总结:代码题sql好久没看了,没做起,第二道经常在写,所以完美过关

二面:技术面

  1. 有没有算法实践的项目,因为看我简历上主要是论文
  2. 你研究的是推荐算法,我们这边是风控算法,你的职业规划是什么
  3. 代码题:求股票最大连续时间段的利率

总结:代码题完美搞定,还给面试官一步一步讲解具体怎么做的

offer收入囊中,求职之旅结束,最后附上offer
部门:数据智能应用部 岗位:风控算法工程师

送给同样在路上奋斗打拼的同胞们我的四字真言:永不妥协!


Joker
45 声望2 粉丝

Joker never give up


« 上一篇
富文本markdown