两个月从算法小白到拿到第一份实习offer-亲身经历

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

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

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

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

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

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

接下来是我从面试第一家到拿到实习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
部门:数据智能应用部 岗位:风控算法工程师

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

相关文章
相关标签/搜索