靠,这么简单?
点赞 评论

相关推荐

01-09 00:44
已编辑
门头沟学院 Web前端
先说一下背景:双非,目前在读大三,目前 (2024/12/31) 无实习经历,所有投递都是从官网投递,无内推。岗位是微信开放平台基建最汗流浃背的一集,当时刚好是在游戏部门挂了后几天微信打电话过来问愿不愿意面试,我说上次不是挂了吗,双方就都很尴尬的笑了一下,最后说回去思考一天再确定要不要面。当时学期也快结束了,跟几个哥们聊了一下这件事,就觉得可能是 kpi。还好当时鼓足了勇气,想着就算是 kpi 也要尽力去学到东西和表达想法。事实证明确实不是 kpi 面,而且拷打的非常恐怖,一面面试官说看了面评知道项目很大很复杂,于是就狠狠的考察了项目的广度,以及临场反应速度。二面则是结合计算机基础深究了项目的细节,现在回想起来我都不知道我是怎么顶住面试官的拷问的。三面则是最轻松但也是最需要口才的一集,就像是在给上司讲述自己的产品,讲自己的思考以及是否存在能效提升一样视频面两面都没有开摄像头,就最后 hr 面开了一下。最后实习 oc 也选了他,首先是因为没几个能选的,同期的就另一个外企发了offer,地点在北京,往返比较麻烦。微信这边主要是技术栈为 js 和 rust,还是基建岗,感觉还是比较符合胃口的。我对这次面试最大的总结就是:计算机的基础思想很重要,许多地方都可以用上他。理解思想,并把它融入到自身作为一个工具使用。就好比我前文提到的 monorepo 和 react hooks 一样,我感觉就像是把他融入到自身,他是一个工具,理解他在什么时候该发挥什么样的作用其次还是基础,一面结束后复盘了一下八股,答得真的是稀烂,寒假还是要恶狠狠的弥补啊。### 一面(2h 30min)上来先四道英文题目手撕(1小时 + 20 分钟思路拷打):- async pub sub- 依赖解析- 爬楼梯- glob 库实现八股:- 事件循环- 异步任务的作用- setTimeout 浏览器底层实现- JS 内存管理(v8 回收,但是讲的不是很清楚- 引用计数- weakMap 以及为什么不能遍历,以及只能用引用数据类型做 key- 对 ts 泛型的理解- rust 用过什么异步框架(tokio)- rust 内存管理(drop trait,作用域,无GC)- css 媒体查询- git merge 行为(只知道合并成一个提交,面试官说还有一些其他行为,后续看了一下是 fast forward / 无冲突 merge / 有冲突 merge)- 约定式提交以及如何做约束(命令行应用与 git hooks 正则匹配)- https 中间人攻击- https 链接上请求内放密码- https 的数据是安全的吗(只想到密钥泄露)- 快排时间复杂度,为什么最坏是 On2- 对一块内存上的数组尾插 / 头插元素的时间复杂度讲项目(40min+)- 立项,重构,后台实现,远程协同- CRDT 思想- 脏路径处理- 并发冲突- 简单说说 YATA 数学证明?(包不懂的)- 断网后怎么办,或者说有个客户端延迟很高(插入永远有一个唯一位置,应对比较轻松)- 服务是中心化还是去中心化- 一个人删除了一行文字,另一个人在这行文字添加内容,结果是什么(根据 YATA 算法第一层比较,客户端小的操作优先)- 简单对比 OT- 项目背景- 简单介绍 Astro 框架- 项目设计(做成 npm 包,并作为 astro 插件使用)- 项目技术栈对比,自研的原因- 第一次升级后的成果与遇到的问题(框架问题,GitHub issue 讨论,细节挺多的)- 语法分析器的设计(core 层 和 plugin 层)- 如何进行语法检查的(ast 语法树遍历分析)- LSP 服务器设计与消息优化(VSCode LSP 使用 pipeline 或 websocket,如果要优化可以通过自研协议分主动推送和监听广播行为)- 前后端结构(前端,后端,脚手架后端)- 项目发布过程- mdx 中用户如何使用自定义组件- mdx 可以回退 md 吗(没有研究,后续看了一下,mdx 是作为一个 astro 插件使用,回退的话可能需要对内容进行过滤处理(表达式,用户组件,script 标签过滤))- markdown 过滤- astro 编译 mdx 底层实现(讲了用到的插件,但是还可以继续讲讲 vite 怎么去 resolve module 的,和源码中经过了几次编译后才输出结果)- 如果有用户恶意输入,你是怎么处理的(pr check)- 如果用户太多你管不过来怎么办(插件过滤 script,工作流中使用 bot 自动检查)- mdx 注入组件的白名单- mdx 可以渲染 react,那可以渲染 vue 吗(可以,配置插件即可)- 如果要在一个 react 组件里面使用 vue,我该做什么- app.mount 发生了什么(没说全,讲了一下对比和 mount 和 patch,其实就相当于把 vue 渲染讲一遍)- 如果我想在 react 组件内用 vue,vue 组件内继续套 react,我该怎么办(编译器做一个类似 rust 的宏展开自动注入 render code)- 还有可以扯的吗(astro wasm 组件编译,content layer api,SSR 编译 mdx 可以实现运行时无编译开销;选择 jsx 作为通用组件的原因)- 反问- 技术栈(js ts rust c++)- 业务还是基建(基建)- 期望实习时长- 大概还有几轮(一般三轮)- 关于微信游戏二面面评(每个面试官都有自己的看法)- 需要改进的地方当时开始做题的时候我还没有意识到事情的严重性,还跟群友聊了一下说怎么一上来就做题,随后一顿拷打让我知道自己是多渺小了。八股复盘的时候感觉自己就是个超级大笨蛋,说不定面试官都躲在屏幕后面笑,说这小孩子想象力还挺丰富的面完这两个半小时人都虚脱了,在会议室里面跟群友汇报完后缓了好久才走出会议室,刚好实验室外面刚刚结束24届大一同学面试。后端的一哥们说想转前端了,于是就把前端在场的同学一起叫了过来,聊了一下他们的学习进度,并针对他们现场确定了一下学习路线,最需要关注的内容和接下来该做的事情以及未来要如何发展,全部聊完后也都晚上 11:10 了,于是听着私宅特有的歌冲回了宿舍。实验室真的跟家一样,我可以说实验室和简历的项目几乎就是我大学的全部了,没有这两样我也走不到今天这一步
投递腾讯等公司10个岗位
点赞 评论 收藏
分享
秋招已经过去很久了交完论文中期报告,可以松口气坐下来写写总结了。个人bg:本科211智能专业,硕士果壳软工,简历上面除了本科的一些比赛和奖项,就是本科毕设和硕士阶段捏的两个项目,硕士期间没什么获奖和科研成果也没去实习,Leetcode刷了大概100道,八股背的不多。技术栈:C/CPP/Python/CUDA/Matlab主要求职岗位:嵌入式软开/高性能计算/AI infra/其他和技术栈沾边的岗位也投了投回想三年前:本科期间个人没有就业意识也没有就业打算,就想着等读个硕士再说吧。当时是智能专业,接触了一些算法的东西,但也很早就听闻算法卷、难就业,读研时候也就一直想找个偏系统和工程的方向做做(当然回头看啥也没干成),推免也不是很顺,就联系了本校一个做云计算的导师(kubernetes相关的一些东西),后来预推免阶段偶然机会录到果壳某所,当时专业方向是并行计算(当然并行计算也没做成,回头看硕士论文最后竟然又还是kubernetes相关的东西)。由于当时鸽了本校导师,还被批一顿,毕业设计想着和硕士能沾点边就另外找了本校一个并行计算相关得导师带毕设,做了几个月FPGA推理加速器相关得东西。再看读研后:导师一直都很放羊,我们开题也晚,其实我到研二快结束才确定毕业课题。研一在雁栖湖上课,按部就班上课和补补CS基础(本科这块学的比较差),学了点CUDA编程,个人比较摆烂了,那时候该刷点题的。研二回所,意识到课题组方向乱七八糟,并不能在并行计算方向提供什么帮助甚至毕业课题也不知道怎么开展时郁闷了一阵子,后来打算自学一些相关东西还和同学一起参加相关比赛,也是参赛时意识到太菜,不会的东西太多,结果最后赛题都没提交,完了这时候研究生已经过去一年半了,曾尝试找找课题也未果,回所半年啥也没做成。秋招前夕:也就是研二过年开学时候,这个时候很多同学已经开始找实习了,我也得为半年后的秋招准备。本科期间就确认了不做算法,研究生才想找点其他方向做做,完了也没干成事情。当时也不是很想去做前后端开发,在确定就业方向上时有点不知道做什么了。手里有什么?啥也没有,研究生课题不知道做啥,题没刷,实习没有,简历空空也来不及搞简历就想着捏点项目直接秋招(当然后来也是这么做的)着手准备简历和制定秋招投递计划:按照个人技术栈来说个人应该算是CPP选手,当然从一开始就没考虑网上那一套后端路线,因为CPP本来没啥后端市场,清楚的知道那样走不通,并且本人确实也没啥去互联网软开的想法,要走互联网也是投一些和异构计算/AI infra的岗位。三个水项目:1、面向CNN训练的GPU内存管理系统2、基于pthread的线程池3、基于FPGA的CNN推理加速器设计然后罗列点奖学金和本科时候的一些比赛和之前本科学院安排的一个凑数算法实习在考虑后期岗位如何投递时正如上面所说的:后端一个没投,嵌入式投了不少,HPC和AI infra的岗位投了一些,然后零散的和技术栈沾边的像:算法开发/模型部署/信号处理/自动驾驶/系统开发这些都投了看看,主要公司分布比较广:手机厂/车企/互联网/芯片厂/各种设备厂(通信设备/工控/半导体设备/医疗设备等)当时也很清楚可选的大厂确实不多,可能能拿offer的估计也就是学历厂吧,所以一开始觉得华子可能是比较好的去处。秋招几个岗位方向情况:1、嵌入式:新凯来 半导体设备算能科技 RISC-V芯片和TPU计算卡其余的很多都挂了简历,可能是个人在MCU项目上确实不怎么样不是那么对口,很多厂像VIVO/荣耀/华为/大疆/紫光/汇川联合动力/联影医疗/联发科都投的是嵌入式,这些后来也没顺利拿到。甚至中科曙光说我经验不足背景不匹配,建议我从外包先干起,积累经验。。。还有一些创业公司更没戏了如禾赛科技、速腾聚创,像投浪潮都没捞起来,嵌入式还是太卷了。拿offer这俩本质是学历厂,由于薪资或者一些其他原因拒了。2、边缘测的(信号处理/模型部署/AI编译/推理优化/算子开发)拿到 比亚迪 底层软件工程师 做座舱声学信号处理,也会做一些相关的边缘测模型部署其实个人在HPC方面的积累不是很多,没想到简历能被地平线的AI编译岗捞起来面试,当然很快一面挂,寒武纪的HPC岗也捞起来笔试了,完了笔试挂了。海康的HPC招人很少,复筛挂了。零跑、蔚来、影石、海光这些公司的相关的岗要么简历挂要么复筛挂。回头看拿的BYD本质是学历厂,最后开的薪资还不错,签两方,后来没去。3、AI infra 偏云端的尝试了一些互联网公司如百度/快手,毫无意外简历挂,实习经验太少。阴差阳错最后走完了中兴的智算岗位。中兴本质是个学历厂,本以为根本开不到20k,随便面面不去了,最后竟然超出了预期,由于一直想等华还犹豫了一阵子,但想到自己华子面试体验不好,部门也没找对,完了到最后还可能一场空,最后三方也就是签了这里(还是赌对了,华子性格测评很晚才告诉挂了)4、其他零散岗位小米的自动驾驶复筛挂,OPPO的系统软件开发一面挂,另外还有像芯原/乐鑫科技/翱捷科技/平头哥等芯片厂的软开,基本是没消息。猜测一方面是个人原因,另一方面半导体和芯片遇冷了,还有就是他们本身招人就少。对了,一开始就心心念念的华子虽然入池了,但后来告知性格测评挂了,当然当时找接头人没找好,也没选好部门。分析一下:拿的offer本质上是学历厂,以及拿offer的几个方向也是C/CPP几个典型方向了。之前一直想后不后悔读研?就业环境越来越差了,当年也许机会更多,但是现在看看拿的offer都是学历厂,似乎也不亏,完了按照本科去这些地方估计工资也低。秋招阶段持续了7/8/9/10四个月,真正签完三方都11月底了。持续时间还挺长的,心中很多时候也焦虑,但更多是麻木,所以走的还算按部就班没有那么的难过,也非常感谢秋招期间一直互通信息和互相鼓励的小伙伴们,如果只有我一个人面对这些怕要痛苦很多。这个总结写的像流水账,后面还想出几个帖子,有时间再写了:1、CPP还能不能学?2、HPC/AI infra的一些就业思考。3、嵌入式越老越吃香吗?4、读研是否后悔?5、读研怎么选方向和导师?6、小公司是否比大公司更加容易?7、嵌入式走MCU还是Linux驱动?8、秋招是否一定要实习?一些碎碎念:第一感觉就是感觉走的挺失败的,研究生没有活成期待的样子,最后就业也不是那么轻松。然后,就业的这个节点不同于以往,高考时你只要考虑卷高分,推免也是卷排名,有清晰的指挥棒和路线,而就业这次似乎茫然了很多,没有人清晰的知道市场行情也无法预测整个过程的节奏,只有摸着石头过河。这也许需要比较好的判断能力,需要更强的信息搜集能力,需要更大的耐心,需要更加勤奋。去解决一个问题都是模糊的、没有确定答案的、没有确定交卷时间的、看不到反馈和自己做的对错的难题,我觉得最重要的还是走下去的勇气。没有白走的路,还是抬头看未来吧,未来不可预测,未来更需要勇气,干就完了。#秋招最大的收获是什么?# #秋招总结# #秋招终于到此结束# #秋招有感##25届秋招总结#
懂了哥:希望能给类似背景和技术栈的同学一些帮助和思考吧
点赞 评论 收藏
分享
01-15 17:51
门头沟学院 C++
华为 通用软件开发 (n)*15
点赞 评论 收藏
分享
牛客网
牛客企业服务