悠悠有品面试
面试时间:2025年10月16日
面 试 官:2位
面试时长:37分钟
面试形式:钉钉会议
自评打分:5分(满分10分)
面试概况
因为GAP了将近100天时间,从投简历到面试只有2天,所以准备的比较仓促,面试官问的问题回答的也不甚满意,后续和业务线负责人面试时聊的很好。技术面试官不拖拉,直奔主题,性格果断,业务线面试官不急不燥,稳中有序。
技术面试
自我介绍
笔试题
// 给定一个数组和一个目标值,找出两个数之和等于该目标的下标对
const arr = [2, 7, 6, 11, 8, 13, 29, 20, 2]
const target = 9
// 期望输出 [0, 1],即2和7的下标
const findTwoSumIndex = (arr, target) => {}
我的回答
const findTwoSumIndex = (arr, target) => {
for (let i = 0; i < arr.length; i++) {
const idx = arr.findIndex((item) => item === target - arr[i]);
if (idx > -1 && idx !== i) return [i, idx]; // 这里防止出现target为4时,返回的都是第一个2的下标
}
}
// 时间复杂度:O(n^2) 空间复杂度O(1)
我在经过提示后的回答
const findTwoSumIndex = (arr, target) => {
const numMap = new Map();
let i = 0;
while (i < arr.length) {
const complement = target - arr[i];
if (numMap.has(complement) && numMap.get(complement) !== i) {
return [numMap.get(complement), i];
}
numMap.set(arr[i], i);
i++;
}
return [];
}
// 时间复杂度:O(1) 空间复杂度O(1)
或者
const findTwoSumIndex = (arr, target) => {
const numMap = new Map();
for (let i = 0; i < arr.length; i++) {
const complement = target - arr[i];
if (numMap.has(complement) && numMap.get(complement) !== i) {
return [numMap.get(complement), i];
}
numMap.set(arr[i], i);
}
return [];
}
// 时间复杂度:O(1) 空间复杂度O(1)
开放题:平时项目中我时如何做性能优化的,有哪些监测手段,以PC端首屏加载为例?
首屏加载:First Contentful Paint(FCP)
我回答的内容,以React项目为例:
- 框架层面
- React.lazy + Suspense
- 组件缓存React.memo、useMemo、useCallback等
- 分包
- 避免state、props频繁更改,以及嵌套过深,避免大量数据频繁更新造成的页面重绘
- 表单时间避免实时渲染,如使用防抖节流
- react使用pruecomponent、vue可以使用functional函数组件,提高组件性能
- 其他技术层面
- 图片懒加载、精灵图片、webp
- 虚拟dom
- 操作数组和对象时,尽量减少循环次数,使用高性能的API,比如some等
- 静态资源的混淆压缩
- 减少请求
- 优化的监控指标有哪些
- 页面静态资源的加载时间
- 使用console的time和timeEnd计算可视元素的渲染时间
- 使用浏览器自带的Performance分析指标,LightHouse也可以
- 框架自带的插件React DevTools中的Profiler、Vue DevTools中的Performance
- 使用第三方工具,比如埋点
业务线面试
假如入职了以后,我的个人规划时什么样的?
入职了以后,我计划仍然以技术为主,希望在技术上能够更上一层楼,后期如果有机会做业务线负责人的话,我也希望能够尝试,并且我也有信心自己能够胜任,这样也能发挥自己最大的价值。
如果收到offer,什么时候可以入职?公司在金桥,通勤有问题吗?
我目前处于离职状态,如果有offer,随时可以入职。通勤也没有问题,我目前住在川沙,如果入职的话,我会搬到高东附近居住。
为什么选择悠悠有品?有没有国际化项目经验?
我的回答:目前我的工作经验主要集中在保险和金融领域,悠悠有品是一个游戏装备交易网站,我刚好比较缺乏电商这方面的经验,所以我对悠悠有品非常感兴趣。我之前做过国旅的企业差旅项目,主要也是面对国际用户的,也算是有一定的国际化项目经验。
你认为你是什么性格的人?
我的回答:我自认为我是一个比较外向,善于交际的人,所以在团队协作时,没有太大问题。第二我认为我是一个比较有耐心的人,我在公司带新人的时候,更多的不是一上来就分配任务,而是先根据每个人的想法,给与自己的建议,算是授人以渔吧。最后我认为我是一个自驱力比较强的人,考研就是一个很好的例子,我在工作时,也学习了不少技术,包括NPM开源包、github开源项目等。