本科生大厂算法岗实习经验复盘:从投递到面试的底层思维!

目录

    • 投递渠道
      • boss直聘
      • 官网
      • 邮箱内推
    • 面试准备
      • leetcode
      • 八股
      • 深挖项目
      • 自我介绍
      • mock
      • 面试技巧
      • 答不出来怎么办
      • coding
      • 反问
    • 复盘
    • 技术交流群
    • 用通俗易懂方式讲解系列

节前,我们星球组织了一场算法岗技术&面试讨论会,邀请了一些互联网大厂朋友、参加社招和校招面试的同学.

针对算法岗技术趋势、大模型落地项目经验分享、新手如何入门算法岗、该如何准备、面试常考点分享等热门话题进行了深入的讨论。

汇总合集:

《大模型面试宝典》(2024版) 发布!

在这里插入图片描述


我的bg:985大三,nlp/llm/多模态方向,无论文无实习但项目比较多,相关知识基本都是自学,拿到了百度、字节、腾讯的算法实习 offer。不算国庆的话整个时间跨度大概三周。

我会按照倒序的方式分成两到三个部分来分享经验,包括投递和面试、简历和项目、学习路线和资料。这篇是第一部分,即投递和面试的部分。

这个部分是建立在你已经有一定相关知识基础和相关项目的基础上的,通过短期的突击和准备,能够在面试中发挥最大的效果。

关于怎么学习相关知识,怎么找项目,做项目我之后也会分享,可以关注一下我,也欢迎文末加入我们社群直接交流。

投递渠道

投递的渠道主要是boss直聘、官网投递、以及邮箱内推,其中大部分都是在 boss 上投递的。

boss直聘

优势:非常方便,点一下就能投递简历,可以直接和hr/算法老师直接沟通,比如我的 mentor 就是直接在 boss 上面招人,而且进度相对会推得比较快。

需要注意:在填写电子简历时,最好填写详细一些,因为对方直接看到的是你的电子简历,只有同意你发送简历后才能看到你的PDF简历。此外,可以设置自定义的投递申请语更好一些,比如将自己的学校、年级和技能点写入其中,会比默认的“我想了解一下xxx岗位的具体情况”更好一些。

类似的网站还有实习僧,但是体感算法实习岗位没boss多也没那么方便,所以我大部分就用的boss。

官网

比较麻烦,需要填很多东西,大部分都要做测评,像腾讯的甚至要做一两个小时。我怕麻烦所以就没怎么投官网的,只有boss上没有的公司才会去官网投。但官网投的好处就是能够很清晰地看到进度,以及挂了的话简历会重新流回池子里面,可能会有别的组捞起来。

邮箱内推

这个渠道也比较好,因为大部分都是算法老师本人在招,简历可以直接达组内邮箱。一般这种需求都比较急,所以通过的概率也比较大。可以关注一下AI求职这个公众号,以及知乎/小红书上的相关信息。(多搜一下就会给你推荐)

面试准备

leetcode

leetcode这部分不用特别担心,我也没刷多少(50道 ➡️ 找实习的时候一个星期七八十道),但是遇到的都做出来了。首先是题一般不会很难,基本都是easy或者medium;其次如果你前面面得不错这部分是不会为难你的,主要看的是思路和非常基础的代码能力。

如果像我一样时间紧迫的话,主要要熟悉数组、字符串、哈希、链表、二叉树、二分、动态规划和双指针这些常考题型就行,回溯和图之类的都可以放掉。具体可以刷leetcode hot100或者leetcode 75(我刷的是这个因为题比较少),按part刷,一开始可以先看答案理解一下套路,再多做几道类似的题巩固;有掌握不好的地方可以去看星主的《大模型面试宝典》相关part加深一下理解,这个题目比较多讲解也比较详细。

其实面试也不一定考 coding,考 coding 也不一定考 leetcode,我当时第一个面试的时候就刷了两天题就去面了,结果也没考算法题让我写了f1 score的计算过程。所以leetcode不用分配太多精力,也不用特别重视和焦虑,我反正是看八股看不下去了就做几道题放松心情这样子。

八股

八股大概可以分为:ml基础+领域知识+有可能会问 pytorch、huggingface、linux 等

如果是面dl岗位的话,机器学习基础可以不用复习得很深入,因为一般不太会问。重点可以放在通用概念上,比如过拟合、欠拟合、梯度爆炸和梯度消失等,其他像SVM和随机森林就可以不用看了。

领域八股可以看星主梳理的,特别详细;岗位jd可能也要求掌握特定的模型或者领域知识,可以针对性复习一下。

我当时是做一个文档来梳理对应的知识点,这个过程快的话两三天,慢的话一周就可以做得差不多;完成后在每次面试之前都重新回顾一遍进行复习,面试之后复盘也可以把不清楚的知识添加到文档中,不断完善自己的知识体系。

如果你也是nlp/大模型方向可以参考一下我的思路:

  • nlp 基础知识/模型
  • transformers
  • BERT
  • GPT
  • 大模型架构对比、常用PEFT方式
  • CoT、RAG、Hallucination、Agent等最新进展

我认为比较重要的就是 Transformers 一定要深入了解,因为就基本都会问,然后还应该清楚类似的不同模型之间的区别,以及这些区别可能带来的优劣势,比如 GPT 和 BERT 之间的差异。

总的来说,这部分也不用特别焦虑,因为大部分公司都不会狠狠拷打八股(除了字节),一般都是根据项目去进行延伸,所以把项目相关的知识给弄清楚就好了。

深挖项目

深挖项目这部分是最最重要的,因为其它问题都不一定会问,但是项目是一定会被问到的。

首先,按照这样的思路梳理项目:项目背景和目标(什么领域、需要解决什么问题、相关的工作有哪些) ,为了达成目标做了哪些工作(团队的工作+你的贡献) + 最终成果。

重点在于强调你的个人贡献,对于你参与的part一定要非常非常清楚,并且最好有深入的思考:为什么选择了这种模型而不是其他模型?做了哪些尝试和研究?有没有遇到什么问题?同时,对于其中涉及的知识点也应该按照准备八股那样深入了解。

即使项目并不是很 solid 也没有关系。比如,我的一个项目的部分根本没有evaluation,但是我提前进行了相关的调研,因此在面试官问到的时候我可以及时提出改进方法:“我了解到相关的评价指标有xxx,可以通过怎样的方式去做 evaluation,只是我们当时因为xx的原因没有做”。这样做可以让一个看似平平无奇的项目更具吸引力,同时也能展示你的理解和思考能力。因此,务必提前思考项目中的潜在问题,而不是直接承认不足。

最后,要特别准备一个你认为最出色、最具挑战性的项目。因为不同的面试官有不同的方式,有些可能会问到所有项目,而有些可能只会让你选择一个重要项目进行详细介绍。因此,选择一个你认为最出色的项目进行深入了解,投入更多精力准备,确保在每个面试官提问时都能自信应对。

自我介绍

自我介绍是仅次于项目的最重要部分,通常限定在一分钟左右。

首先,用一句话简洁地介绍自己,包括学校、年级、专业和方向。

然后,重点突出你的项目经验,一定要详略得当,不要重复简历内容。主要思路是:我在这个项目做了什么+提升了什么能力 (e.g. 我在伯克利的时候有一个xxx的nlp项目,主要积累了全流程的nlp项目经验,包括数据获取、数据处理、模型训练等),不用太长一句话就好。如果项目太多,可以选择三四个你认为最重要的来介绍,可以按照重要性或时间顺序来排序。

自我介绍需要非常非常熟练,因为它很大程度上决定了面试官对你的第一印象。你也可以通过这个part着重强调某些项目,来引导面试官进入你想讨论的话题。

mock

当你所有都准备得差不多的时候,就可以找人帮你mock啦。这一步也非常关键,因为可以通过他人的视角来发现一些你自己没有察觉到的问题。可以找同学也可以找经验比较丰富的学长学姐,或者找小红书/海鲜市场的付费咨询,这里就不做广告了。

总之,mock帮我发现了两个非常重要的问题:

  1. 自我介绍太长,没有重点,基本就是在念简历(后面就改成上述的一分钟的形式)
  2. 当回答自己不太清楚的问题时,我的答案没有清晰的逻辑体系,缺乏系统的问题分析思路。在意识到这两个问题并针对性改进后,我对面试更加自信了,整个面试水平也有了一定的飞跃。

面试技巧

最重要的就是不要紧张,不要当作是在考试或者面试官在审判你,大部分面试官都是很nice的,所以把面试当成一次和大厂算法工程师友好的交流和展示自己的机会就好啦。如果真的很紧张,可以在面试之前做几道题,或者重新过一下简历和自我介绍来warm up,缓解一下紧张的情绪。

另外,一面的面试官很大可能是你之后的 mentor,所以不妨在面试官观察你的同时也通过他问的问题观察一下面试官,看看他的水平怎么样,毕竟一个好的 mentor 对于你的实习体验是很重要的。

答不出来怎么办

首先不要慌张,如果有相关的熟悉的领域可以说“我不太清楚xxx,但是我知道xxx”把面试官引导到自己熟悉的领域上。

如果是比较泛的问题可以采用一个系统的思路,从数据处理 → 模型结构 → 模型训练 → 评估这样的角度去回答,比如如果被问到怎么避免梯度消失,或者怎么优化你的模型就可以用这样的思路。

实在不知道的话,就老实地不知道,本来我们也不可能什么都知道嘛。只要基础知识了解得足够清楚,也不会因为一两个问题不会就刷掉你的。

coding

首先不要急着写,先和面试官交流清楚对题目的理解,比如有没有边界条件,需不需要自己写类和用例等等;交流之后再开始构思解题思路,有了清晰地思路后,再次与面试官沟通,确认自己的思路是正确的。最后一步才是写代码,写完之后,最好自己写几个用例测试一下。

总之就是不要闷头就写,注重与面试官的交流,因为他其实更关注的是你的思路;如果写不出来没事,跟面试官交流一下自己当前的想法,再寻求一点提示,一般他们都是很愿意给你帮助的。

反问

这里其实非常重要,千万不要说“我没有问题了”,这样可能会显得你对这个岗位没有兴趣然后挂掉。而且如果前面的面试表现不好,通过这个环节也有可能挽回一些局面。分享我常问的几个问题:

  • 介绍一下你们组的业务方向和主要项目
  • 实习生的工作内容
  • 我有什么需要改进的地方吗?

问题1、2和你在公司的工作内容和体验息息相关,一定要提前了解清楚。通过面试官的回答,你可以大概知道他们是做什么的,你感不感兴趣,有没有dirty work,对实习生的培养如何,这也会成为你之后选择offer的一个重要因素。问题3是一个含蓄问面评,可以看到面试官的态度,其次也能知道自己哪里表现得好哪里表现得不好,方便之后复盘。

复盘

最后就是复盘部分,每次面试之后,最好总结一下自己表现好和不好的地方,对于没答上来的问题,应该查漏补缺,深入了解相关知识,以便在下次面试中更好地应对类似问题。如果是项目不清楚,也要去进一步深挖和熟悉项目细节。

通过不断的复盘和改进,每次面试都能有新的收获,逐渐提升自己的面试技能,使自己越来越得心应手,离获得offer的目标也会越来越近。

投递和面试部分大概就是这样啦,谢谢你看到这里,也祝你早日拿到offer!

技术交流群

前沿技术资讯、算法交流、求职内推、算法竞赛、面试交流(校招、社招、实习)等、与 10000+来自港科大、北大、清华、中科院、CMU、腾讯、百度等名校名企开发者互动交流~

我们建了大模型算法岗技术与面试交流群, 想要进交流群、需要源码&资料、提升技术的同学,可以直接加微信号:mlc2060。加的时候备注一下:研究方向 +学校/公司+CSDN,即可。然后就可以拉你进群了。

方式①、微信搜索公众号:机器学习社区,后台回复:技术交流
方式②、添加微信号:mlc2040,备注:技术交流

用通俗易懂方式讲解系列

  • 用通俗易懂的方式讲解:自然语言处理初学者指南(附1000页的PPT讲解)
  • 用通俗易懂的方式讲解:1.6万字全面掌握 BERT
  • 用通俗易懂的方式讲解:NLP 这样学习才是正确路线
  • 用通俗易懂的方式讲解:28张图全解深度学习知识!
  • 用通俗易懂的方式讲解:不用再找了,这就是 NLP 方向最全面试题库
  • 用通俗易懂的方式讲解:实体关系抽取入门教程
  • 用通俗易懂的方式讲解:灵魂 20 问帮你彻底搞定Transformer
  • 用通俗易懂的方式讲解:图解 Transformer 架构
  • 用通俗易懂的方式讲解:大模型算法面经指南(附答案)
  • 用通俗易懂的方式讲解:十分钟部署清华 ChatGLM-6B,实测效果超预期
  • 用通俗易懂的方式讲解:内容讲解+代码案例,轻松掌握大模型应用框架 LangChain
  • 用通俗易懂的方式讲解:如何用大语言模型构建一个知识问答系统
  • 用通俗易懂的方式讲解:最全的大模型 RAG 技术概览
  • 用通俗易懂的方式讲解:利用 LangChain 和 Neo4j 向量索引,构建一个RAG应用程序
  • 用通俗易懂的方式讲解:使用 Neo4j 和 LangChain 集成非结构化知识图增强 QA
  • 用通俗易懂的方式讲解:面了 5 家知名企业的NLP算法岗(大模型方向),被考倒了。。。。。
  • 用通俗易懂的方式讲解:NLP 算法实习岗,对我后续找工作太重要了!。
  • 用通俗易懂的方式讲解:理想汽车大模型算法工程师面试,被问的瑟瑟发抖。。。。
  • 用通俗易懂的方式讲解:基于 Langchain-Chatchat,我搭建了一个本地知识库问答系统
  • 用通俗易懂的方式讲解:面试字节大模型算法岗(实习)
  • 用通俗易懂的方式讲解:大模型算法岗(含实习)最走心的总结
  • 用通俗易懂的方式讲解:大模型微调方法汇总

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/357068.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

2021-03-29:加密与解密

前段时间导师分配的任务主要是看《加密与解密》这本书,“书本写的很详细,认真看会看懂的!” 是的啊,书本写的很详细,可是作为一个没基础的小白看起来还是挺吃力的,概念一个接一个的出现,虽然看…

【Gradio】表格数据科学与图表-连接到数据库

简介 本指南解释了如何使用 Gradio 将您的应用程序连接到数据库。我们将连接到托管在 AWS 上的 PostgreSQL 数据库,但 gradio 对您连接到的数据库类型及其托管位置完全不可知。因此,只要您能够编写 Python 代码来连接到您的数据,您就可以使用…

无需安装就能一键部署Stable Diffusion 3?

一键部署使用SD3?让你的创作更加便捷! 前言 厚德云上架SD3! 距离Stable Diffusion 3的上线已经有一阵时间了。从上线至今SD3也是一直好评不断,各项性能的提升也让它荣获“最强开源新模型”的称号。成为了AI绘画设计师们新的香馍馍。 可对于SD…

K8S -理解StatefulSet - 部署有状态应用

什么是 有状态服务和 无状态服务 有状态服务(Stateful Service): 有状态服务是指在处理请求期间维护和跟踪用户状态或会话信息的服务。这意味着服务在多个请求之间保持状态,并且需要在请求之间共享和使用这些状态信息。通常&…

Vue67-Vuex简介

因为vuex是插件,所以,使用的时候:vue.use(插件名) 一、Vuex的意义和使用场景 红色的箭头,都是读数据。 若是,B、C、D都想修改A组件中的x数据(写):此时,A组件就是数据的接…

iOS18新增通话录音和应用锁!附升级教程及内置壁纸

一觉睡醒,iOS18终于是揭开面纱了,而且已经有测试版给开发者使用了。 不过还是建议咱们普通用户不要轻易尝试,而且在升级之前一定要用iMazing做个备份,以免测试系统出现问题,丢失数据。 这次WWDC2024与之前爆料完全一样…

【洛谷P3366】【模板】最小生成树 解题报告

洛谷P3366 -【模板】最小生成树 题目描述 如题,给出一个无向图,求出最小生成树,如果该图不连通,则输出 orz。 输入格式 第一行包含两个整数 N , M N,M N,M,表示该图共有 N N N 个结点和 M M M 条无向边。 接下…

EasyX 文本输出(自定义)函数报错

EasyX 文本输出(自定义)函数报错记录 原因:EasyX与字符串相关的函数,都有字符集问题 UNICODE 多字节字符集

SpringCloud中Eureka和Nacos的区别和各自的优点

Eureka注册中心 Eureka作为一个注册中心,服务提供者把服务注册到注册中心,服务消费者去注册中心拉取信息, 然后通过负载均衡得到对应的服务器去访问。 服务提供者每隔30s向注册中心发送请求,报告自己的状态,当超过一定…

基于LangChain-Chatchat实现的RAG-本地知识库的问答应用[3]-参数配置详细版

基于LangChain-Chatchat实现的RAG-本地知识库的问答应用[3]-参数配置详细版 在开始参数配置之前,先执行以下脚本 python copy_config_example.py该脚本将会将所有config目录下的配置文件样例复制一份到config目录下,方便开发者进行配置。 接着,开发者可以根据自己的需求,对…

CSDN 自动上传图片并优化Markdown的图片显示

文章目录 完整代码一、上传资源二、替换 MD 中的引用文件为在线链接参考 完整代码 完整代码由两个文件组成,upload.py 和 main.py,放在同一目录下运行 main.py 就好! # upload.py import requests class UploadPic: def __init__(self, c…

2-13 基于matlab的电力负荷预测

基于matlab的电力负荷预测,论文阐述了负荷预测的应用研究现状,概括了负荷预测的特点及其影响因素,归纳了短期负荷预测的常用方法,并分析了各种方法的优劣;采用最小二乘支持向量机(LSSVM)模型&am…

docker desktop for mac os如何使用本地代理

在macbook上弄了个代理,然后按照网上所说的去配代理 然后测试下 docker pull busybox 结果无反应,超时。我去!!! 鼓捣了半天,看了docker官网,问了chatgpt ,按照它们所说的试了下也没…

告别卡顿,迎接流畅!你的mac电脑清洁利器CleanMyMac一键轻松解决所有问题!

亲爱的CSDN家人们,今天要安利的是一个让无数Mac用户从“抓狂”到“惊喜连连”的小神器—CleanMyMac!💫 如果你还在为电脑的缓慢启动、存储空间告急和莫名其妙的卡顿烦恼,那请跟我一起看看它如何成为你的数字世界里的救星&#xff…

阿里云发送验证码流程

目录 1. 阿里云短信服务简介 2. 阿里云验证码发送流程 2.1 申请阿里云短信服务 2.2 短信模板及阿里云秘钥 1.开发者可以在自己的应用程序中集成短信发送功能。绑定发起测试的手机号,需要绑定的手机号才能成功发送验证码,其他的用户手机号发送的验…

class中的溢出滑动效果

效果图&#xff1a; 代码&#xff1a; <!DOCTYPE html> <html><head><meta charset"utf-8"><title></title></head><style>*{margin: 0;padding: 0;}.frame-pages{width: 30%;height: 60px;display: flex;justify…

【MySQL】事务一

事务一 1.什么是事务2.为什么会存在事务3.事务的版本支持4.事务的提交方式5.事务常见操作方式6.事务隔离级别6.1读未提交【Read Uncommitted】6.2读提交【Read Committed】6.3可重复读【Repeatable Read】6.4串行化【serializable】 点赞&#x1f44d;&#x1f44d;收藏&#x…

6/22 第四周 python操作word

学习到了word有四个段落&#xff0c;都可以通过python来操作。 并且课程的体系&#xff0c;只是一个启蒙&#xff0c;需要在公司的项目中熟悉&#xff0c;从而具备专项测试的能力。 后续每天的学习笔记也需要侧重于理解的部分。

LangChain:如何高效管理 LLM 聊天历史记录?

LangChain 团队发布了一篇关于使用 Dragonfly DB 来有效管理 LangChain 应用程序聊天历史记录的教程。 该教程旨在解决用户在使用 LangChain 应用程序时普遍遇到的一个问题&#xff1a;如何高效地管理聊天历史记录。 LangChain 团队在推文中强调了 Dragonfly DB 在管理聊天历…

华为RH2288 V3安装 Linux 系统,安装过程心得

带着U盘&#xff0c;怀着激动的心情进入机房安装操作系统&#xff0c;结果没有显示器和键盘鼠标&#xff0c;傻眼了。 作为过来人&#xff0c;温馨提醒&#xff0c;进入机房前记得先打听&#xff0c;准备好这些&#xff1a;机房房间号、机柜编号、物理机编号、键盘、鼠标、显示…