【纯干货】校招季·校招如何能进阿里

本文希望脱离基础知识的范畴,从校招流程、面试准备、面试建议、能力修炼4个方面,在校招面试上给大家一点扎扎实实的帮助。文章写完后发现不仅对于校招同学有帮助,对于社招的同学也可以部分参考,大家可以参照加黑字体快速浏览,以确定对自己有没有帮助。希望能有所裨益。

1. 为什么要写这篇文章

又是一年秋招季~笔者曾校招面试入职腾讯,现任阿里前端技术专家,参与了CBU前端近两年的校招一面面试工作。

在整个校招面试中,我发现很多有潜力的同学其实并不了解校招的一些窍门,进而导致努力的方向有所偏差。而论坛/github上的文章,基础知识的总结是一抓一大把,但是却缺乏一篇从整体层面来剖析校招的文章。为了更好的帮助到大家更好的进行校招准备,揭开校招的神秘面纱,让努力更值得,特有此文。

2. 校招流程

不同的公司有不同的校招流程,但均大同小异。我们这里以阿里为例,流程大概分为三部分:投递简历,技术面,HR面。

2.1 投递简历

校招的简历投递基本上分为4种方式,选择一个合适的方式可以让你赢在起跑线上:

  • 社区论坛:牛客网/掘金/微信公众号等

  • 各部门/内推达人建的校招微信群

  • 公司官网投递

  • 内推

投递简历优先级:内推 >> 校招微信群 > 社区论坛 > 公司官网

为什么内推如此重要?因为内推有一个独一无二的优势就是可以知道进度。有些公司的整个面试流程是拖的很长的——对,说的就是阿里????‍♂️。有时候拖一两个星期都有可能,时刻知道自己是还在等待面试中还是已经挂了就格外重要。

所以,希望大家不管去哪家公司面试,最好都提前找到一位靠谱的内推官,远比你在其他三个渠道扔下简历自生自灭强的多。

找到一个靠谱的内推官也并不困难。在校招季,只要社区论坛里多翻翻好的校招文章,在文章的顶部或者底部就能找到内推官的联系方式。多加入一些校招群,在校招群里也能找到活跃且愿意帮助别人的内推官。

每个公司找一个靠谱的就够了,因为简历都有锁定机制,有人帮你锁定了再给别的内推官也没有用。所以找到自己觉得靠谱的内推官,再给简历

2.2 技术面

阿里校招技术面一般来讲会有4面,分别是:P7面,TL面,小BOSS面,大BOSS面。目前各大公司对校招均非常看重,一轮面试都是派出核心骨干来参加,所以,千万不要妄图用各种方式作弊;一旦被发现,会被记录在招聘系统中,留下永久的污点。

前2面都是基础面,会主要考察技术基础;后2面是拓展面,会主要考察项目经历,思考方式。当然了,不管是哪一个技术面,技术基础和项目经历都是会考察的,只不过侧重点不同。

Tips: 有时候还会有一轮或者多轮的大BOSS交叉面,有可能是你很强,有阿里星的潜质;也有可能仅仅是BOSS觉得比较纠结,再换一位看看。

2.3 HR面

这一面主要是考察性格,表达方式,思维逻辑和聪明程度。一般过了前面技术面的同学都没有太大的问题,也不是本文的重点,就不细说了。

3. 面试准备

终于到了本文的核心部分,面试准备毫无疑问是校招中的重中之重。区别于其他的文章,本文不会在基础知识上有过多的篇幅,而是会着重讲讲面试中需要准备的其他部分。

3.1 基础知识

基础知识是根本!没有基础知识一切都是空谈,但是光准备基础知识也是远远不够的。如果大家需要的话,可以在论坛/github中搜校招,可以看到很多文章,这里就不一一列举了。

3.2 拓展知识

3.2.1 什么是拓展知识

在我的认知里,基础知识代表了前端技术栈和原理,而扩展知识则包括了更深一层的技术栈,技术栈的对比,新潮的技术,实践和自我的思考

举个例子????:

  • 基础知识

    • JS代码压缩使用的是uglify

    • uglify有哪些核心压缩规则(我们日常会用到的)

    • uglify的原理:code->AST->优化的AST->code

  • 拓展知识

    • AST还用在编译器,IDE,格式化代码中,大概是怎么用的

    • babel, V8引擎,eslint和uglify的原理也差不多,有啥细微的差别

    • JS代码压缩中的坑(实践:什么情况下不写逗号会有问题)

再举一个例子????:

  • 基础知识

    • Vdom的原理

    • Vue和React的区别

    • React hook/Vue3.0的原理

  • 拓展知识

    • 为什么React不做双向绑定,为什么Vue没有fiber优化/React hook

    • 畅谈React/Vue的下一步的发展方向

    • 其他的前端新框架

相信通过上面的两个例子,大家已经对基础知识和拓展知识有了基本的认知。这时候可能会有同学问,我作为一个校招生,需要掌握这么深吗

事实上是需要的,纵观阿里最近两年来的校招,得益于互联网同学的增多,毫不夸张的说现在是百里挑一。所以,你准备的越充分,越有自己的想法,进入大厂的概率就越大。相反,只准备了基础知识,就很容易被涮下去。

当然了,我不是鼓吹大伙儿将每个知识点都掌握的很透。大家只要有的放矢的根据自己的经历深挖几个点,相信整个人透露出的气质都会不一样。

3.2.2 如何准备拓展知识

最核心的是在日常的项目/实习中多问自己几个为什么

大家都用过JS压缩,不知道有几位同学深挖过压缩原理;或者大家都知道babel,但是有几位同学了解为什么有时候用了babel,async/await还是会报错。在遇到问题之后多问自己几个为什么?你就能发现一个广阔的天地。

前端的东西说复杂,涵盖的面很广;说不复杂,校招日常考察的就那几个。提前准备好拓展知识,你就能在校招面试中如鱼得水,轻松过关。

3.3 准备简历

除了在短短的一个小时以内,向面试官展示自己的优秀,还要尽可能的把功夫做在面试之外,增加自己的成功率。好的简历就是一个敲门砖,可以更好的帮助你来进行面试。

3.3.2 好简历的特质
  1. 可以让面试官一下子就关注到你想表达的重点,问你准备过的问题,从而进入你的面试节奏

  2. 可以更好的展示自己对细节的关注,在面试官可进可不进的纠结时,可以救你一命

3.3.1 什么是好简历
  • 简历的格式:PDF

    • 不要用word文档:word文档容易被误改,还有字体问题

    • 不要用图片:图片中的链接不能点击,没办法举证或者拓展

  • 简历的名字:姓名-方向-岗位-大学-年级专业学历-位置.pdf

    • 例子:张三-前端-实习-山东大学-2020CS本科-杭州

    • 位置是想要找的岗位所在的位置

    • 很多同学的简历就只有一个名字,细节之处才见真章

  • 简历的样式:清晰工整,有个人特色更好

    关于简历样式其实大家也有探讨,有些人认为HR一天看很多份,样式完全不重要。但是在IT前端这个行业,自我感觉前端这个领域有个性冷淡风还是可以隐形加分的,尤其是在阿里,你的内推官和面试官从来都是技术同学。

    • 最简单的可以使用????超级简历,至少不会扣分

    • 复杂样式的也可,类似于下面的,但是项目经历一定要清晰(仅适用于校招)

  • 简历的内容:

    知名公司实习经历 > 开源项目贡献 ≈ 高质量博客 >> 国家奖学金 >> github仓库 > 学校社团/班级管理经历

    • 上面说到过,来校招面试的都是核心开发,不要选一些被问到回到不出来的素材

    • 不要挑选与面试岗位无关的素材,诸如增加了什么营销实习等

    • XX项目,使用了XX技术,取得了XX成果。核心/优势是XX。

    • 展示专业能力,用数字/技术点说话

    • 谨慎挑选简历素材

    • 实习经历/开源项目贡献/博客/国家奖学金/github仓库/管理经历

    • 充分展示自己的能力,重要的部分加粗加重

3.4 准备面试问题

其实面试有些地方是可以套路的,面试题也是可以猜的,重要的是你准备了没有。要学会站在面试官的角度上想想他会问你什么。

3.4.1 必然会有的问题
  • 介绍下你自己

  • 你大学生涯中觉得最自豪/困难的事情

  • 为什么选择前端

  • 平常是如何学习前端的

这些问题你完全都可以按照STAR方法论和总分总结构提前准备好,问到的时候直接回答就行,事半功倍还能加分。感觉实在不会说的,可以提前写好,背下来,讲的时候再根据背的内容临场发挥

3.4.2 给面试官留的问题

面试官不管怎么问,最后都会落地到简历上,那么这中间就有很多操作的空间。

举个例子:

张三在简历中写了两个项目,分别是react和vue编写的,同时还写了自己有Node的相关经验

那么面试官大概率会抓着React/Vue的原理和对比问啊,同时还会涉及到一些洋葱圈/V8引擎的原理之类的,延展一点还会涉及到与浏览器的引擎的异同等等。

如果提前准备好这方面的东西,面试官问的时候不就可以引经据典,信手拈来了?

3.5 提前了解公司

不同公司的面试风格是不同的,比如说我当年腾讯校招的时候,笔试成绩一定要好,面试主要考察的是同学们的思辨能力。而阿里现在主要是考察同学们的技术深度/广度/热情,是否有项目落地。头条会死扣细节,考察算法。

所以,如果你了解各个公司的面试风格,你就可以有针对性的去准备,而不是一股脑的大锅炖。当然了,不是说其他的不重要,主要是面试侧重点不同。

3.6 多看面经

尤其是多看目标公司/部门的面经,分析他们的风格。大家的套路都差不多,说不定写面经的同学的面试官就是你的面试官,那你不是多了一个巨大的先发优势?

多看看别人是怎么面的,设身处地的去想一下自己遇到这种情况会怎样处理。看的多了就相当于自己经历了多次模拟面试,真正面试的时候也就有了一定的经验,不会慌了。

3.7 锻炼表达能力

总是给面试官清晰的表达,才能守护住自己应得的权利

每年都会有技术不错的同学卡在了表达能力上。有100分的能力只能表达出80分,太亏了。日常生活中,同学们就应该有意识的进行自我表达,向别人阐述自己的想法。

表达观点时可以遵循以下几条原则:

  • 熟练运用比喻,引用等表达方式,来对一个复杂的事情进行拆解

  • 在描述自己的项目时,使用STAR方法论来进行阐述

  • 在介绍自己和日常事务时,使用总分总的结构来进行阐述

3.8 同时面试多个公司

尽管不想提及,但是这绝对是肺腑之言。人世扰扰,情况多变,多给自己一点buff,绝对没有坏处。面试是多对多的双向选择,预期的结果应该是N个offer中找到自己最满意的那个,而不是一棵树上吊死,最后竹篮打水一场空。

当然了,最不想去的公司可以最先面,增加一点面试经验,查漏补缺。比较想去的公司一起面,避免出现某个已经拿了offer,另外一个才在2面流程中的尴尬窘境——不试试不甘心,试试又怕两头落空。

4. 面试建议

4.1 提前准备

面试看起来是一个小时以内可以结束的事情,实际上确是功夫做在了日常。研究原理需要时间,写博客需要时间,有一定的项目经历需要时间,哪怕是找一个靠谱的内推官都需要时间。你看,核心指标都需要时间,并且是大量的时间。提前准备起来,通过简历和项目建立起自己的个人品牌,那么想进大厂就变得很简单了。毕竟,一个好的开始是成功的一半。

所以提前准备是至关重要的。如果抱着临时抱佛脚的想法,哪怕回答出了A问题,也会在A问题的延伸,A问题的延伸的延伸上栽跟头,最后影响自己的面试成绩。

4.2 平常心

只有最牛逼的人才会无往不利——而且故事里,他们最后还会倒在小人的手里

大家只是普通人,面试也是一个双向选择的过程。所以如果没有通过,不管是自己没有发挥好,还是面试官问的特别偏门,都默默接受就可以了。多反思自己,不要给自己找借口。

如果真的是面试官的问题,你也可以庆幸,幸好没去,要不然和三观不一致的同事一起工作,是多么痛苦的一件事情。

另外现在的校招都走提前批,像阿里可以同时面多个部门,所以一个公司或者部门的不过完全不用太过放在心上,只要持续总结改进,总会有人赏识你

4.3 调整情绪/语气

面试前将情绪和语气调整为热情乐观,以一个积极的态度去进行面试

情绪和语气重要吗?非常重要!要知道校招面试官往往都是一次面很多位同学的,整个过程往往持续数个小时。面到最后人都是木的。这时候如果有个候选人以非常乐观向上的语气说话,那么面试官的心情也会美丽起来。没有人不喜欢正向的情绪,对吗?

以热情乐观的态度去面试,非常容易就可以获得面试官潜意识上的好感。

这一招在BOSS和HR面上尤其有用

5 能力塑造

前面我们针对校招和面试,阐述了一些具体的注意事项,也举了一些例子。最后,我们从整体的角度上分析一下校招同学该如何塑造自己的能力,给大家一点努力的方向。

  • 扎实的技术基础

    • 基础知识

    • 拓展知识

  • 旺盛的技术热情

    • 好奇并善于自己求解

    • 持续总结

  • 落地的技术成果

    • 高质量的博客

    • 追求代码洁癖的仓库

    • 身边的小工具

  • 踏实热情的性格

    • 聪明,皮实,乐观,自省

    • 不浮躁,不固执

  • 流畅的表达

其实大家可以发现,上面的5个点我们在本文的3,4部分都分别提到了,只要冲着这些方向做,不断提升的是自己的竞争力和能力,进大厂不过是竞争力和能力提升之后的结果罢了。

就好像是我们想要屠龙,屠龙技才是核心,至于把龙杀掉,这不过是学会了屠龙技带来的结果而已。持续的增强自己,龙可以不断的屠;而只关注龙本身,或者是盲目的崇拜龙,能屠也屠的有限。

6 总结

终于要结束了,坦白讲,我写这篇文章之初,只是想写一篇招聘文。结果写着写着变成了校招总纲,诸如拓展知识准备面试问题锻炼表达能力调整情绪其实都是很多同学容易忽视的点,希望能在即将到来的校招季对大家有所帮助。当然了,既然都是面试,那校招和社招只是能力矩阵不同,很多点还是可以互通的,社招的同学也可以看看是否可以查漏补缺。

◆ ◆ ◆  ◆ 


你的在看我当成喜欢

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,很高兴为您解答这个问题。 在深度学习中,数据增强是一种常用的技术,它可以通过对原始数据进行变换、裁剪、旋转、翻转等操作,来扩充训练集,从而提高模型的泛化能力和鲁棒性。在图像领域,常用的数据增强方法包括随机裁剪、随机旋转、随机翻转、色域变换等。下面,我将为您介绍如何使用 Python 对图像进行随机数据增强。 1. 随机裁剪 随机裁剪是一种简单而有效的数据增强方法,它可以通过对原始图像进行随机裁剪,来扩充训练集。在 Python 中,我们可以使用 PIL 库中的 Image 模块来实现随机裁剪。 ```python from PIL import Image import random def random_crop(img, crop_size): w, h = img.size left = random.randint(0, w - crop_size) top = random.randint(0, h - crop_size) right = left + crop_size bottom = top + crop_size return img.crop((left, top, right, bottom)) ``` 2. 随机旋转 随机旋转是一种常用的数据增强方法,它可以通过对原始图像进行随机旋转,来扩充训练集。在 Python 中,我们可以使用 PIL 库中的 Image 模块来实现随机旋转。 ```python from PIL import Image import random def random_rotate(img, angle_range): angle = random.uniform(-angle_range, angle_range) return img.rotate(angle) ``` 3. 随机翻转 随机翻转是一种简单而有效的数据增强方法,它可以通过对原始图像进行随机翻转,来扩充训练集。在 Python 中,我们可以使用 PIL 库中的 Image 模块来实现随机翻转。 ```python from PIL import Image import random def random_flip(img, flip_prob): if random.random() < flip_prob: return img.transpose(Image.FLIP_LEFT_RIGHT) return img ``` 4. 色域变换 色域变换是一种常用的数据增强方法,它可以通过对原始图像进行色彩变换,来扩充训练集。在 Python 中,我们可以使用 PIL 库中的 Image 模块来实现色域变换。 ```python from PIL import Image import random def random_color(img, color_range): r, g, b = img.split() r = r.point(lambda i: i + random.randint(-color_range, color_range)) g = g.point(lambda i: i + random.randint(-color_range, color_range)) b = b.point(lambda i: i + random.randint(-color_range, color_range)) return Image.merge('RGB', (r, g, b)) ``` 以上就是使用 Python 进行随机数据增强的一些常用方法,希望对您有所帮助。如果您有任何问题,请随时联系我。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值