page contents

面经||【Shopee】前端岗-社招面经分享

发现shopee今年还是挺火的,招的人也挺多,但是面经很少,所以记录波,有需要的看下。|一面(视频面) 1.自我介绍 2..单向链表输出倒数第K个元素 3.看代码输出结果(考察变量、函数提升) 4.看...

attachments-2022-05-Lvmrz1fE629073eaba272.jpg

发现shopee今年还是挺火的,招的人也挺多,但是面经很少,所以记录波,有需要的看下。
|一面(视频面)

1.自我介绍

2..单向链表输出倒数第K个元素

3.看代码输出结果(考察变量、函数提升)

4.看代码输出结果(考察异步代码先后顺序)

5.手写instanceof关键字

6.手写Promise

7.react中为什么不能在for循环、if语句里使用hooks, 说下react hooks实现原理。

8.说下react fiber。

9.看你之前做过RN开发,说下RN的原理。

10.说下输入一个ur|地址的全过程。

11.http的缓存策略。

12.说下https,证书是如何校验的?

13.说下http2,你觉得阻碍http2发展的问题是什么? (这题后面的问题挺有意思, 可以网上搜下答案)

14.算法题。跳格子问题,假设一次只能跳- 个格子和两个格子,N个格子有多少种跳法?


二面(leader面)

1.自我介绍

2.为什么要离职?

3.对你的项目经历中RN做的app挺感兴趣的,你能详细说下这个项目吗?

4.RN中原生和js端是如何通信的?你说后面使用JSI了,你能说下JSI的实现原理吗?

5.如果要你对这个app进行性能优化,你有哪些办法(面试官问了三次还有其他办法吗? )

代码层面,按照react的优化,减少re -render次数。图片加载用react- native-fast-image,页面初始化的逻辑使用InteractionManager.runAfterlnteractions。去掉无用的View层。
进行分包加载,启动时只加载启动页面bundle,二级及更深页面等访问到再加载。一些复杂的控件, 写原生模块,比如日期选择、下拉选择、 级联、播放器等。

6.你们的RN热更新服务是怎么做的?热更新原理是什么?你们的热更新策略怎么做的?
客户端用的微软的code-push,服务端用的code-push-server。
热更新原理就是app每次启动会请求热更新服务器,对比下本地bundle版本和服务器的bundle版本,如果版本不致, 就会根据配置的更新策略下载、更新bundle,然后 重新reload bundle.
我们就是在检查到新的bundle后,会弹窗强制更新。

7.设计-个RN热更新服务,需要考虑哪些地方?
bundle体积大的问题。打包的时候需要进行分包,使用增量更新,减少下载体积。用户的网络不稳定、网速差问题。需要用CDN加速,支持断点续传。
安全性问题。
bundle被中间人劫持篡改。使用https 下载,并按照https的加密思路,对bundle用hash算法进行签名,然后app端检验签名是否被篡改。
bundle'下载地址被暴力攻击。检查User- Agent只允许手机设备下载,记录设备id,在一定时间内限制下载次数。
8.你有什么要问我的吗?

| HR面
就一些简单的问题,这里就不说了。到hr面,基本都能过。

I总结

整体难度一般, -面没有区分度,感觉-年经验和五年经验都是一样的。 二_面不错,对项目进行了深挖,考察了架构设计。问的问题偏向于RN,最后进来也是做C端的RN开发。
在shopee的工作体验确实轻松,不卷,但是过于轻松,又担心自己的产出。差不多就这样吧。大家自己看一看我写的面经,或许有所帮助吧。

以上就是本次分享内容,更多大厂Shopee工程师面试经验持续关注六星社区

想要高效学习,指路微信公众号——【python编程学习圈】每日分享学习干货,关注即可免费领取整套Python零基础到入门资料及学习教程,走过路过,千万不要错过!!快行动起来!!

attachments-2022-05-ZwUUz0Co628f2e3079c7b.jpeg

0 条评论

请先 登录 后评论
小柒
小柒

1316 篇文章

作家榜 »

  1. 轩辕小不懂 2403 文章
  2. 小柒 1316 文章
  3. Pack 1135 文章
  4. Nen 576 文章
  5. 王昭君 209 文章
  6. 文双 71 文章
  7. 小威 64 文章
  8. Cara 36 文章