一年半经验如何准备阿里巴巴 P6 前端面试

本文想分享的是如何准备阿里面试的以及面试过程的所想所得,但愿能帮到你。前端

首先,可能要让大家失望的是,这篇文章不会有大篇幅的面试题答案。若是想要看这方面的内容,我相信社区里已经有不少优秀的文章了。webpack

0. 招人!!!

最重要的事固然要放在第一位。web

咱们是阿里巴巴的AE技术部-无线技术&会员导购-体验技术部,国际化大场景,欢迎来挑战!面试

咱们这,则是主要作小程序/工程化等基础建设方面的一些事情,固然,也有业务相关的事情要作,如今有 P6 及以上的 HC,若是感兴趣的能够来试试~算法

0.1 业务/部门介绍

做为阿里国际化进程中的核心技术力量,负责全球B端,C端业务前端技术,关注全球用户体验,赋能业务提供更好的买卖家服务,目前服务200+国家,拥有数十个研发平台,包含AE,lazada, 天猫国际等多个全球化链路,咱们包含国际化最全的前端技术分类,技术空间全面且广大,包含搭投中台,导购中台,国际化小程序,国际B端解决方案,国际C端解决方案,国际化业务已成为集团的核心战略。编程

0.2 岗位职责

  1. 参与跨平台的应用开发,包括 Web, Mobile Web, 及跨端技术,负责产出高质量的技术产品;
  2. 充分理解产品和设计需求,负责AliExpress WWW Site & Mobile Site的产品化过程的落地和实施;
  3. 学习研究业界的前沿技术,并迅速转化到将来潜在的业务或技术项目中;
  4. 与团队成员分享项目经验和业界新技术的应用,和团队一同成长。

0.3 岗位要求

  1. 精通HTML、CSS、Javascript,热衷浏览各种网页的源代码;
  2. 熟练掌握Java、NodeJS、Python等任意一种或多种后端语言,并有实际的项目经验;
  3. 深谙 MV* 模式,熟悉AMP、AngularJs、ReactJS、VueJS、Polymer等任意一种前端 UI 框架,必定程度了解其原理;
  4. 熟悉主流浏览器特性,乐于探究和解决各类类型的兼容性问题;
  5. 英语能流畅沟通者优先。

0.4 简历投递

除了前端以外,客户端/Java/测试也有 HC,欢迎你们的加入 ~小程序

简历发送至 job@axuebin.com 便可,能够在邮件正文中留一个你的微信,若是以为简历合适,我会加你微信,面试过程当中会积极跟进你的状态,随时有问题均可以来找我 ~后端

目前机会比较好,流程也走得比较快,走过路过不要错过 ~设计模式

1 关于简历

我对于简历的理解是这样的,简历的做用是让看简历的人可以快速、准确地捕捉到有用信息:浏览器

  1. 你是谁
  2. 你作了什么
  3. 你哪方面比较牛逼

我以为只要能展现出这三点,就够了。

1.1 内容

个人简历主要是包含了如下几个模块:

  • 基本资料:姓名、电话、邮箱、我的网站(GitHub)
  • 工做经历:公司名、在职时间、工做内容(简述负责、参与什么业务)
  • 项目经历:最重要的一点没有之一!展开描述
  • 专业技能:加分项仍是减分项都有可能,慎重对待,展开描述
  • 教育经历:学校名、就读时间
  • 其它:简单描述任何你想让面试官知道的东西,好比社区影响力: GitHub 1000000 Star、掘金 Lv9 等等

1.1.1 项目经历

项目经历对于开发来讲是一份简历最重要的部分!

项目经历对于开发来讲是一份简历最重要的部分!

项目经历对于开发来讲是一份简历最重要的部分!

既然是最重要的,选择困难症选手可能就犯难了,怎么样的项目应该被宠幸,写在简历上呢?

1. 本身作的

这点不用多说,必定得是本身作的项目,别看着别人项目牛逼,就拿来吹,面试和背调环节均可能穿帮的。

2. 很熟悉的

对于这个项目,你必须在业务和技术实现上都了如指掌:

  • 业务上:这个项目的业务背景是什么,在业务上有什么比较牛逼的地方,推进了业务如何运行等等
  • 技术实现上:这个项目的总体技术实现思路是怎样的,项目中用了什么比较牛逼的技术,解决了什么比较困难的问题等等

千万千万不能有这个想法:项目中有一个很牛逼的东西,可是不是你写的,你也彻底不了解,可是就想写进项目里。

3. 有亮点的

好看的皮囊千篇一概,有趣的灵魂万里挑一

面试官比较在乎的仍是这个项目表面上看不到而且颇有趣的东西。业务,技术均可。

  • 这个项目作了什么牛逼的事情
  • 你在项目里作了什么牛逼的事情
  • 用了什么牛逼的技术解决了什么困难的问题
  • ...

总结:项目经历必定是面试官比较关心的部分,面试中必定会细问的,因此不要啰嗦,挑牛逼的、有意思的东西写,而且本身能讲明白的。

1.1.2 专业技能

专业技能这一块不少人会写这样写:精通 HTML/CSS/JavaScript 等等,并且写得特别多,巴不得把本身用过的东西都写在这...

我的建议这里不要写太多东西,能够写一些在项目经历里没提到的东西,好比:

个人项目经历主要是 Vue 业务开发为主,我在这里写的是 TypeScript/React/工程化/Node/MySQL 相关的,让面试官更全面的了解你。

若是面试官感兴趣,会挑几个技术栈问你几个问题,若是答的也很棒,必须是妥妥的加分项。

固然,在这里写的技术栈都必须是你了解或者掌握的,不然被随便问两个问题就不会了,就变成减分项了。

总结:专业技能也请慎重对待,有多是你的加分项,也有多是你的减分项。

1.2 样式

若是是一份开发工做的简历,不必花里胡哨的模板,只要简简单单的白纸黑字便可。

我的认为,除了排版上要稍微注意下以外,比较重要的有两点:

  1. 页数一页便可。将你最牛逼的东西写出来就行了
  2. 留白。适当的留白会让简历看上去很舒服,也利于阅读的人捕捉重点

1.3 总结

简历,顾名思义,是你的状况的一份简要介绍,对于面试官而言,他最初只能经过这一张纸来了解你。

因此,不管在内容、表现上都须要你细心准备而且打磨的,望认真对待。

2. 关于复习

大多数人应该都和我同样,是在职准备面试的,天天可用的时间大多数集中在晚上(22:00 - 24:00)。想一想也挺好的,晚上的时间比较容易集中注意力。

我的以为,复习主要是须要制定计划,切记不能三天打鱼两天晒网。

忌零散阅读,宜系统复习。

准备面试的时候,能够按照如下几个模块来准备:

复习计划导图

不管前端技术栈突飞猛进,咱们都得要扎实基础,脚踏实地,切记不可投机取巧、眼高手低。

2.1 JavaScript 基础

JavaScript 基础很是重要,相比于大同小异的框架面试题,JavaScript 能够问不少东西,并且细问起来也有不少有意思东西,若是时间充足能够系统地过一遍。(现实每每是没时间...)

  • 执行上下文/做用域链/闭包
  • this/call/apply/bind
  • 原型/继承
  • Promise
  • 深浅拷贝
  • 事件机制/Event Loop
  • 函数式编程
  • service worker/web worker
  • 经常使用方法
  • ...

2.2 CSS 基础

  • position
  • 行内元素/块状元素
  • flex
  • 1px
  • 重绘回流
  • Sass/Less
  • 居中/常见布局
  • 层叠上下文
  • ...

2.3 框架

这一块主要是关注 Vue 和 React 的共性和特性,侧重 Vue(我工做中是主 Vue),过程当中看了一些源码,加深理解。

  • MVVM
  • 生命周期
  • 数据绑定
  • 状态管理
  • 组件通讯
  • computed/watch 原理
  • Virtual DOM
  • diff
  • React Hook
  • React Hoc/Vue mixin
  • Vue 和 React 有什么不一样
  • ...

2.4 工程化

对于写业务的同窗来讲,以前可能没有大规模接触过工程化的东西,不过这并不影响咱们能够本身去学习和了解。

  • webpack
  • babel
  • 模板引擎
  • 前端发布
  • weex
  • ...

2.6 性能优化

性能优化是必备技能,必须了解。

  • 打包优化
  • 网络优化
  • 代码优化
  • ...

2.7 TypeScript

TypeScript 不敢写本身深刻,只是了解,因此只是复习了一些基础的知识点和比较简单的问题,好比:JavaScript 和 TypeScript 有什么区别,在进行项目选型时,什么因素会让你选择 TypeScript 等。

2.8 网络/浏览器

对于前端开发来讲,网络和浏览器也属于必须了解的知识点。

  • HTTP
  • DNS
  • TCP
  • HTTPS
  • CDN
  • ...

经典问题,从输入 URL 到页面展现,发生了什么。这个问题我以为仍是很考验广度和深度的,能够好好思考一下,每一个人可能回答的结果都会是不同的。

2.9 计算机基础

  • 设计模式
  • 数据结构
  • 基础算法
  • 安全
  • ...

2.10 Node

Node 个人了解并不太多,因此没有特地去准备。

2.11 项目/业务

简历上写的项目,仔细认真的过一遍。还有就是关于业务的一些深层次的东西,得好好思考一下。

2.12 其它

一些开放性问题仍是须要好好思考一下,顺便也准备一下 HR 面可能会问到的一些问题。

2.13 总结

在复习某个部分时可能会引出其它知识点,若是也不是很清楚的话也须要系统的再复习一下。

前端知识体系比较广而且发展迅速,咱们必定要铭记:基础才是最重要的

若是想要获取完整的复习导图(一些重要问题以及真实面试后的补充点),能够关注公众号 axuebin,回复「面试」两字获取。

这里列出的应该也不是很全,欢迎补充,能够在公众号发送留言。

3. 关于面试

投简历以前也在网上搜了一下阿里 P6 面试的相关文章,感受流程也大同小异。亲身经历以后,在这里解答几个多是大家在准备阿里 P6 这个级别的面试时比较关心的问题。

3.1 阿里 P6 的标准是什么?

这个问题没有标准答案,你以为本身的技术和业务水平过得去,就能够来试一下。

3.2 学历、学校、工做经验有什么要求?

没有。

3.3 有几轮面试?须要笔试吗?

通常来讲面试分为技术面 + HR 面。

技术面通常有 4 ~ 5 轮左右。

可能会有笔试。笔试通常在一面的时候,若是面试官以为须要有笔试来考察一下,就会进入笔试环节。

3.4 面试形式是什么样的?

阿里的面试效率如今很是高,技术面试通常会以远程面试为主(电话 + 视频),笔试是经过线上 Coding 来完成的。

面试官或者 HR 会提早联系你约面试时间,耐心等待。

这里说一下,约了面试时间后,面试官忽然说有急事,要改时间。不要瞎想,是真的有事情,耐心等待就好。

若是顺利经过前几面,最终会约在现场进行终面。

3.5 每一面以后会知道本身是否经过吗?

  • 有的面试官会在面试结束告诉你是否经过
  • 你可能会加到面试官微信,能够直接询问
  • 若是有 HR 联系方式,也能够询问 HR
  • 内推人能够看到是否经过(好比找我内推,我会很乐意帮你跟进面试流程)

建议每一面结束以后不要多想,就和考研同样,考完一科就安心复习下一科,适当的时候能够问一下进度。

3.6 对于技术栈有要求吗?我据说阿里是 React,而我主要是用 Vue 的

没有要求。平时用什么技术栈不重要,重要的是理解原理。

3.7 总结

这里列到的也只是写文章的时候想起来的一些问题,若是还有其它疑问,能够在公众号留言,若是我能够回答我都会回复的。

4. 写在最后

今年应该还会好好沉淀一下技术,写一些文章,若是感兴趣的能够关注一下个人公众号。

喜欢玩摄影的也能够关注起来,偶尔可能还有一些关于摄影的东西分享给你们 ~

咱们招人哦,要求在最上面~

相关文章
相关标签/搜索