阿里计算平台事业部前端实习 offer 面经

从 3 月 28 日内推投递简历开始, 经历 7 轮面试, 在 5 月 17 日收到录用意向书. 和大家分享一下面试的经历和个人的一些看法.

简历筛选一面. 面试官花名执衡, 是 ng-zorro-antd 的主力开发者之一.

因为这个部门在开发 ng-zorro-antd, 而我的 GitHub 上也有一些前端组件开发的项目, 所以基本上都是围绕这一方面问的.

讲了一下印象最深刻的一个组件的设计, Dialog, 讲了讲 API 的修改和组件之间的解耦

DatePicker 是怎么实现的

如何实现一个 clickoutside 效果

如果弹出的菜单的位置过于贴近边框,如何调整这个元素的位置

由于都是自己实现过而且思考过的, 所以都回答上来了.

简历筛选二面. 面试官是同组的后端.

大部分都是跟技术无关的问题

非常看重实习的时间

问我是不是一定要做 vue 技术栈

对实习的城市有没有什么要求

一个组合数学的题目,计算 50 个人至少有两个人生日相同的概率, 这道题我犯了一个很傻的错误, 但是和面试官的交流还算顺畅, 最后发现了问题所在

一个升序数组,求两个元素的和为一个指定的数,这个非常简单了

在乱序的情况下求解上题

技术一面

自我介绍

本科在学校的状况如何 (我本科是学工商的, 估计是要看我自学能力如何)

Vue 的生命周期, 讲的时候说可以在 beforeCreate 钩子里混淆三方插件,提到了 vuex, 然后就问了

Vuex 状态管理的原理是什么

如何在浏览器端和原生端实现代码复用, 讲到 weex 又简单讲了它的原理, 明确告诉面试官仅仅是基本了解

跨域, 这个了解比较多, 还造过 JSONP 的轮子

前端性能优化问题, 讲了网络性能优化 DOM 性能优化和 js 性能优化, 这两个话题我都是比较熟悉的, 看过高性能 JavaScript 的同学也肯定知道

对 CSS 的了解, 我说我基本都用 flex 开发使用传统的属性比较少, 就没问问题了……

CSRF 攻击原理以及防御手段

平衡二叉树

如何在上亿规模的数据中找到最大的一个数, 这个我的确不知道

讲一篇最近看过的技术文章和一篇非技术文章, 应该是要看表达能力如何, 自己有没有主动获取新知识的习惯

这一轮就和普通的前端面试一样.

技术二面

对于学校的项目问了很多问题, 比如你觉得有哪些比较缺憾的, 遇到了什么问题, 如何解决, 如何解决工程中遇到的一些问题, 项目用了什么样的技术栈. 你在阅读 Vue.js 的过程中学到了什么. React 和 Vue.js 的理念差别在哪里, 你更喜欢哪一种?

很快就结束了.

技术三面. 同部门的后端.

live code 做了两道算法题, 犯了一些小错误, 但是在面试官的指导下都解决了.

第一道想不起来了… 不是道很难的题目.

另一道是一个先增后减的数组, 在 O(logn) 的时间复杂度求某个元素下标. 第一步二分找到最大值, 第二步普通二分查找.

HR 面

感觉没有什么特别之处, 正常交流即可.

HR 面一周后简历一面的面试官就给我打电话说我通过了, 并布置了学习任务, 结果后来又说要高 P 加面, 结果提心吊胆的等了两周, 等到了...

加面. 面试官是盒马鲜生的振宇.

直接就开始聊项目. 对一个项目挖的比较深, 聊了很多东西. 比如为什么要做这个项目, 项目的结构设计, 项目的难点在哪, 如何解决等等. 也问了在你做的项目在技术上有什么特点.

问了一些基础知识, 重在考察思维能力. 比如让你写一个 localStorage 库你会怎么做 (命名空间, 封装 get set update delete 方法), 饿了么的结算有很多复杂的规则, 你怎么保持代码的可维护性 (剥离业务逻辑) 等等.

加面完第二天就收到了意向通知. 

点击作者姓名与作者大佬交流~

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏跟着阿笨一起玩NET

GB2312转换成UTF-8与utf_8转换成GB2312

1851
来自专栏c#开发者

C# : row-clickable GridView and get and set gridview rows using JavaScript

Complete C# code: ---------------- using System; using System.ComponentModel; ...

2996
来自专栏张善友的专栏

Using sqlite with .NET

The other day I found that there is a .NET wrapper for sqlite. sqlite is a very ...

2288
来自专栏海说

Java应用中常见的JDBC连接字符串(SQLite、MySQL、Oracle、Sybase、SQLServer、DB2)

Java应用中常见的JDBC连接字符串 Java应用中连接数据库是不可或缺的,于是便整理一些可能用到的JDBC的jar包及其相匹配的URL,以备日后查阅。 1)...

2730
来自专栏DT乱“码”

连接数据库操作

package com.chendongj.dbUtil; import java.sql.Connection; import java.sql.Drive...

2009
来自专栏码匠的流水账

聊聊spring cloud的LoadBalancerAutoConfiguration

本文主要研究一下spring cloud的LoadBalancerAutoConfiguration

1042
来自专栏码匠的流水账

聊聊EurekaRibbonClientConfiguration

spring-cloud-netflix-eureka-client-2.0.0.RELEASE-sources.jar!/org/springframewor...

1171
来自专栏吴小龙同學

时间工具类TimeUtil

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30...

3046
来自专栏成长道路

JDBC动态SQL语句连接orcale数据库的工具类

import java.sql.Connection; import java.sql.DriverManager; import java.sql.P...

2490
来自专栏james大数据架构

C#日期格式转换

DateTime dt = DateTime.Now; // Label1.Text = dt.ToString();//2005-11-5 13:21:25 ...

1895

扫码关注云+社区