【蚂蚁金服】前端岗-2023面试复盘之蚂蚁金服

结论

✅通过
蚂蚁金服的流程实在是太太太慢了~ 本来还挺早就面完蚂蚁的一面,过了几天都没反馈,问了一下猎头告诉我说一面过了,然后就是漫长的等待。。。直到其他家都面完了三面,蚂蚁才打电话过来,就果断拒绝了后续流程。
我一直很喜欢蚂蚁面试流程的一点就是面之前先做题,但这些题又不是纯leetcode的算法,还是能够真正考察出候选人的写代码能力的。后面的面试问题就感觉是想要一个资深的能够进去直接解决问题的人,这个感觉还挺难招到的。

一面

总时长:113min
前面的三道笔试题难度中等,不过差点给我问懵了,做题时间30min,后面30min主要在聊工作经历,本以为到一个小时之后就要结束了,结果面试官一点没有要停的意思😅。再往后就发现是面试官是真的能唠,都是我主动Cue结束的环节才到最后,一看时间快两个小时。
面试中没有问太多的技术细节,大多是我在主动把我工作经历中所涉及到的项目及技术点做一些介绍,以及面试官对一些实际场景的情况进行提问。
三道笔试题
蚂蚁的面试好像每次都会先进行笔试,个人感觉这种方式还挺好的,代码能力不过关的话也不用浪费时间面试了。
将一个数组转成树状结构

这道题相对来说比较简单,数组中的每一项都有一个id和parentId字段,第一步找到根节点之后,只需要在数组中查找parentId = root.id的节点即可作为树的第一层,后续对第一层的节点分别采用递归的形式获取到后续的子树。

(emmmm,忘了第二题是啥了)
实现一个并发请求方法,最大并发为3

很明显这道题是要实现一个p-queue包的效果,但是我不会,只能硬着头皮写🥹
最后大概是实现了,主要思路是用一个长度为3的数组来表示请求队列,通过 while(queue.length) 来循环请求队列,通过 queue.forEach(url => request(url))来实现请求的并发,每完成一个请求则从队列中将该请求移除且加入一个新的请求。当所有请求都完成后,循环队列也结束。

聊经历
让介绍一下自己的几段工作经历,考虑到面的岗位主要做2B的一些工作,所以重点讲了一下在百度工作时做的一些事情。先介绍了一下业务上主要做的工作,然后是技术上做的一些基建工作,之后结合面试官的问题聊了一下当时团队的情况,以及自己的一些优缺点啥的。
聊经历阶段面试官通常不会问太多的技术细节问题,主要靠个人的介绍,这个阶段面试官想了解的事情通常是项目中的亮点、候选人对业务的理解、候选人的团队协作情况等,因此可以结合这些点尽可能的去展现自己。
这里讨论的一些值得参考的问题在下文中查看。
作为前端负责人主要做哪些工作

技术指导:带领团队成员做一些技术基建相关的工作,并给成员的技术方案做一些指导意见
资源协调:当存在项目或者需求前端资源不足时,统一协调前端人员的工作,保证人力有效利用
任务分配:根据不同人员的能力情况,进行合理的任务分配,实现前端人效最大化

如何避免自己成为团队效能瓶颈

培养团队成员的owner意识和管理能力,尝试让成员独立负责项目及需求排期等工作,在成员的能力范围内尽可能让其独立承担项目需求,以减少我的介入。

在进行产品的私有化过程中做了哪些事情

通过公司的CI/CD实现前端资源的docker化,将前端的静态资源打包成一个nginx的docker镜像
通过堡垒机上书写的shell脚本,自动拉取镜像并完成启动工作

在产品的海外版发布中做了哪些事情

主要做了国际化的工作,包含了以下几个步骤:

语料提取:与业界普遍的标识提取语料方式不同,考虑到有很多老的项目存在如果全部加一遍标识成本较高,因此采用构建阶段开发babel插件,通过对文本节点使用中文正则匹配的方式判断节点中是否含有中文,若有则整个文本进行提取
语料翻译:自己实现了一个语料管理平台,主要对语料进行CURD操作,默认语料会先通过百度翻译,产品或运营可以在平台中手动更改语料
语料发布:语料管理平台点击发布按钮后可以将语料更新到语料的JSON文件中
语料匹配:当页面点击其他语言时,重新加载页面和语料文件,根据语料文件对整个项目中的文本进行替换

如果海外版的页面与国内版不一致怎么处理

整体排版一致,部分样式不一致:这种情况在项目中单独给海外版的页面开发一份样式
整体排版不一致:这种情况相当于两个页面差异较大,直接采用两个项目的形式单独开发,这样可以避免一个项目中各种if…else导致的后期难以维护的问题

海外版的页面性能问题怎么解决

面试官讨论的情况主要出现在海外CDN节点较慢,这种情况我也不知道怎么解决。

发表评论

后才能评论