查看原文
其他

心法利器[84] | 最近面试小结

机智的叉烧 CS的陋室 2024-04-24

心法利器


本栏目主要和大家一起讨论近期自己学习的心得和体会,与大家一起成长。具体介绍:仓颉专项:飞机大炮我都会,利器心法我还有

2022年新一版的文章合集已经发布,累计已经60w字了,获取方式看这里:CS的陋室60w字原创算法经验分享-2022版。(2023在路上了!)


往期回顾

最近我正好在找机会,在这个即将结束的时间点,我做了一些小结,把自己在里面的路线,犯过的错误总结下,希望对大家都有些帮助。

另外,因为我是社招,所以很多内容会更倾向于社招一些,不过因为校招也即将来临了,所以我也会把校招的带上,大家都可以参考参考。

懒人目录:

  • 简历

  • 前期准备和复习

  • 笔试

  • 面试

    • 基础知识类

    • 涉及项目的方案细节

  • 就业环境问题

    • 总体情况

    • 大模型背景下的需求变化

  • 其他想法补充

  • 小结


简历

我的简历给到了很多前辈朋友修改,首先感谢你们的建议。

简历上不外乎就需要这些东西,我的简历上依次就是这些内容,大家可以根据需要看看:

  • 人名照片联系方式应聘岗位等基础信息。
  • 简要的个人评价,突出技术点和经验,包括一些自己的特质(校招生要是不多可以不写或者放后面),主要是自己个人的摘要。
  • 教育和工作经历。
  • 主要的项目经历,写2-3个比较关键的即可。
    • 主要背景和任务。
    • 核心技术方案。
    • 技术点(用于给HR快速筛选技术点)。
    • 收益成果和亮点(指标、论文等)。
  • 总结自己的关键技能点。

  • 其他项目经历,尽量用一句话说清楚,用什么方法做了什么事,效果如何。
  • 专业成果、奖项、专利等。

前期准备和复习

准备起来其实花了不少时间,主要是针对这几方面的内容:

  • 深度学习和机器学习的知识。
  • 算法题,也就是刷leetcode。
  • 简历上所提到的技术要点,以及自己所做过的项目的细节,需要熟练。

第一个其实是比较直接简单的,靠着《百面机器学习》和《百面深度学习》,结合面经笔经,就已经覆盖的比较多了,很大部分的知识点都能够覆盖到,不过现在回头看,考的概率不是很高,不过一旦不会,对面试官对自己的能力判断确实会有很大的影响的,所以还是得会。值得强调的是,包括机器学习里面的一些很基础的问题,甚至是深度学习的细节,平时很可能用得不多,对校招而言就是接触的不多,但是面试还是很可能问的,所以该复习还是得复习。

第二是算法题,经过统计,社招会遇到的概率大概在50%左右,对于校招,笔试基本都会考了,所以必须要掌握,最简单的方式就是刷leetcode了,但是不能盲目的刷,然后图数量和时间快慢,所谓复习肯定是要有章法,如果平时就没有刷的习惯,那此时非常推荐按照专题来整,链表、双指针、动态规划之类的,每个专题每个专题过会扎实很多,然后在开始找各大厂的高频题来刷,这样质量就上去的很快,很多人可能会晒什么刷了很多题之类的,意义不是很大,最终能在考试里面做出来才最重要。

第三就是简历上的要点,每一个都要熟练,甚至包括他的一些衍生,都需要了解,一方面是原理,具体是怎么算的,这个是基础,进一步的就是背后的原因,为什么要这么做,这么做有什么优势,甚至是问题,如果这些都能理解,其实说明你已经存在一定的深度了。再者就是对自己的项目要理解,这点我会在后面展开来聊的。

笔试

社招里,其实笔试已经很少了,不过难免会遇到,所以仍然需要认真准备。

从笔试角度看,笔试的目标是快速筛选,毕竟面试是一件很耗费人力的事,因此,会用很通用的技术来考察,具有一定难度但是其实不会很高,重要的就是晒人,而且因为是笔试性质,所以答案或者评分标准会相对统一,因此常见的笔试题主要是这几种类型,我也会给出一些复习建议:

  • 深度学习和机器学习的知识。
    • 常见模型的结构和原理。
    • 常见任务的评价指标。
    • 涉及算法相关的代码,尤其是深度学习框架,例如tensorflow、pytorch等。
  • 智力题和性格测试。
    • 最好能提前了解,如果有条件,可以问到公司的价值观倾向,有利于通过性格测试。
  • 算法题。
    • 上面提到了,就不赘述了,说白了就是要堆点时间做题的。

面试

面试毫无疑问是重头戏,也是应该好好准备的,这里要聊的东西可能一篇文章都说不完,在这里,我就整理列举一下NLP领域常见的问题以及应对策略吧。

基础知识类

这里的基础知识是指一些和自己的项目可能无关,或者是可能有关,但是你没用到或者接触到的知识点。

首先,是广义的各种算法相关的基础知识点。

  • 深度学习、机器学习强调了超级多了,这个就不必多说了,一定要看,平时我们可能用得少了,或者在学生时代可能因为奔着前沿去了而接触不到的,就很容易漏掉,这个不能忘记。
  • 一些前沿而且常见的知识点。例如预训练模型、prompt、ICL等等,了解和听说是及格水平,如果清楚里面的原理,或者有进行实验,会更好。

然后就是一些自己简历上涉及的内容,可能会有一些新的或者比较流行的方案,你可能之前没听说的,此时也需要去补充。

这些都是算法相关的,但是不能局限在算法本身,还有一些别的能力,例如工程能力等,但是因为算法本身涉及的工程一般不会很重,所以问的会比较少,但是如果公司规模不大,需要人进去后承担一定的工程开发工作,那自然是有要求的,因此我还是比较希望大家能够了解一下,主要涉及这些知识点吧:

  • SQL,要会写,常见的select,偶尔会有一些聚合函数之类的。
  • 各种常见的数据工具,mysql会比较高频,然后hadoop、spark之类的也有,不过就很少了,看公司和岗位了。
  • 有关算法的加速方面,建议大家学学,常见的可能就是TVM、ONNX这种编译层面的技术,然后是多机多卡,或者是类似deepspeed的框架啥的,有条件的多了解会有一定收益。
  • 算法题我放这里,但是前面说过的就不赘述了。

另外还要补一个比较特别的考点,有好几个公司考过,手写一份深度学习训练的伪码,即训练的主要流程,至少要有一个深度学习框架要熟悉才行,如果平时搬代码多的,容易栽跟头,要多自己手写一下。

涉及项目的方案细节

针对项目,要能把整个项目的脉络给说出来,一般会有这几个成分:

  • 项目的背景,有的时候可以说一些场景特色。
  • 方案的选型思路和权衡,或者是项目的迭代历程。
  • 明确自己负责的部分,与其他同事的合作方式。
  • 如果有的话,可以说说现状以及后续可能有的规划。

12是比较关键的,因为是你经历过的事,所以面试官可能会非常细地探你的底细,此处深度的体现,一般来源于这几点:

  • 对某个方案的理解深度,例如simcse,具体原理,论文中谈论到的关键点,样本的处理策略等,甚至到源码层的讨论。
  • 某个任务下的常见方案,以及最终你的选型和实验结果。
  • 是否有自己的trick或者改进。
  • 评价指标的设计,以及会不会有什么特别的问题。
  • 项目过程中比较困难的点是什么,最终有没有解决,是如何解决的。
  • 数据流问题,训练数据和在线数据是怎么流动的。
  • 工程性能问题,是否需要把控,如何把控以及如何调优。

就业环境问题

总体情况

难,真的挺不容易的,我的主阵地在深圳,说实话现在深圳的需求很少,如果限制在大厂,那会更少,很多大厂似乎并没有招聘,即使是蹲好像收益也不是很大,我自己的角度,要不就是压根不招,要不就是要求很高,我还够不上吧。

不过把目标放大的话,其实机会还是不少的,包括也能看到很多不错的小厂和2B的公司,其实内部的机会质量都很不错的,也不乏很优秀的团队,因为很多原因最终没选择吧,很可惜,所以只要技术足够硬,还是能够找到合适的,但是对技术能力的把控、能力组的匹配度要求会很高,大家还是要加油才行了。

大模型背景下的需求变化

这个相信大家也是比较关注的,chatgpt出来后,很多公司的战略可能都会有一些变化,之前有些犹豫的可能在最近也会更有信心和决心了,因此招聘上确实可能会开始招对应的人才,这点是真的,奔着大模型去的小伙伴,这确实是个机会,确实也是需要这方面的竞争力:

  • 是否真的做过大模型,有没有这方面的经验。
  • 模型内部的机理是否了解,如何部署,这块是否有经验。
  • 性能调优、编译问题,多机多卡。
  • 对应的前沿内容,最好都了解下,竞争者视角其实做过的不是很多,但是懂的不少,至少要懂点吧。
  • 另外是一些常见的问题要提前准备,我整理的是这几个:
    • 自己做过得部分,有什么亮点或者关键技术点。
    • 有关模型的应用场景,优势和劣势,是否有什么风险。
    • 如何落地,如何把控成本和风险。
    • 目前有哪些技术难点,如何应对。
    • 有关技术在企业内的发展路径可以是什么样的。

其他想法补充

有些问题可能不涉及上面的类目,所以单独拎出来记录一下:

  • 比较好的机会,不要太早投,多面试积累经验后再来投,不要怕机会溜走,宁可错过也不要不去,因为同一个公司近期只有一次机会就进入的。
  • 一定要有意识地需要通过面试官的提问挖掘更多信息,也通过这个机会了解公司,他们的需求、主要工作内容、部门等,毕竟最终你在选择的时候需要足够的信息,即使没提,最终补充问题的时候也要补充。
  • 注意发现自己的技术盲点,这种盲点是工作内容导致的,工作会让你聚焦,某些技术的深度是够的,但是广度不足,例如我做对话系统和搜索,这会让我对长文本的处理不太熟悉。那就需要补充了,后续技术肯定会对长文本有一定的要求了。
  • 不要过分要求工作和技术前沿相匹配,我自己一直是这个观点,追前沿是自己技术成长的必须,但是解决问题,落到公司业务之类的方面,就不一定了,需要综合去考虑,能去做前沿技术的机会是可遇不可求的,再者某些技术不是那么多公司玩得起,且坑位也不见得那么充裕,也不见得就好或者稳定,所以这个执念如果有,建议放下,这个可以作为一个加分项,但别执念太深。

小结

前后写了三千多字了,不容易,我这段时间的找工作经历也不那么容易,预期、心态等方面都有很多不同的变化吧,也对自己的技术规划有了一些新的要求。

在此祝大家工作顺利,心想事成吧。

继续滑动看下一个
向上滑动看下一个

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存