先简单介绍一下个人基本状况~楼主是澳门某大学2018届软件专业本科,大四上学期经过平常实习入职360企业安全集团的华南基地(Base 珠海,现更名为奇安信集团),18年春招转正担任前端开发工程师,到今年11月份已经有两年左右开发经验。在原单位里以 toB 端页面开发为主,除了平常的业务系统开发,还参与了二/三维数据可视化大屏的项目,并接触到一些项目研发管理相关的经验。javascript
我从今年9月份开始肯定跳槽意向,9-10月开始有针对性地进行复习和刷题,11月上旬开始密集的面试流程,一共投递了如下公司的岗位(主要是使用 Boss 来投递):html
这段时间常常珠三角三地来回跑,最后11月底肯定 offer 意向,最终也是拿到了满意的 offer~而这三个月的经历也让我有一些新的感悟:前端
虽说做为软件开发工程师,须要靠锲而不舍的锻炼、积累和沉淀提高我的技术水平;但在日常业务开发中不多有机会面面俱到地覆盖到技术的每一方面,尤为对像我这样毕业一年左右的职场新人来讲,面试前期作好充足准备是必不可少的。vue
这里推荐一下一些准备过程当中收获很大的博客/文章:java
这里以一个流水帐的形式记录每轮技术面试涉及的问题,供你们参考各个公司如今业务的方向和面试的倾向,暂时不整理完整答案。PS: 后期面试安排太过密集不少题目没来得及记录请见谅~😅node
单一数据源、State 是只读的、使用纯函数来修改状态webpack
<link>
标签请求新主题的样式文件、React Context API、CSS 变量,这里最后还提到了 localStorage 的使用,保存用户上次的选择git
回答的时候忘记了对比度的算法实现没答上来,讲了下明度 Luminance 的调节;亮度Brightness是RGB+亮度系数;边缘检测和图像锐化是使用 Convolution Kernel 卷积核加深中心像素与周围像素的色彩差值梯度,使边缘更加突出github
这题其实我没理解题意,其实如今想一想应该答案是 亮度是在原RGB上直接添加亮度系数(color+brightness),而对比度是 在原色彩与中间值的差 上与对比度系数相乘 (color-0.5)*contrast+0.5web
// counter.js
let counter = 10;
export default counter;
// index.js
import myCounter from "./counter";
myCounter += 1;
console.log(myCounter);
复制代码
这轮面试我临时订机票从珠海坐飞机飞北京到快手总部,11月里从24摄氏度到零下一度的落差真的要把我这个广东人冻僵了QAQ 不由感叹祖国幅员辽阔啊~
一面电话沟通,都是前端很是基础的问题,例如闭包、跨域、Vue响应式、HTTP 基础等等;二面现场面、HR电话面
技术面都是电话沟通,HR视频面,后面题目没有记录了
Canvas 适合绘制图形元素数量巨大的场景,如热力图、地理坐标系或平行坐标系上的大规模散点图和线图,SVG 本质上生成了 DOM 节点,会对浏览器渲染形成很大的负担;SVG 的优点是占用的内存更低(对移动端尤为重要),渲染性能略高,而且用户使用浏览器内置的缩放功能时不会模糊;并且由于是生成了 DOM 节点,在开发上直接使用 DOM API 进行用户的交互会更方便
安全:用户输入的时候编辑页面防止 XSS 攻击、敏感字符过滤、外链资源白名单过滤、图片资源脱敏处理转换为本地资源;优化:关键请求路径优化、事件监听节流、非首屏资源懒加载、代码压缩、服务端渲染、利用好缓存策略、开启 HTTP2
首部压缩、数据分帧、多路复用,服务端推送
剩下的流程须要到北京总部,放弃流程
一面完两周过去了还没消息我觉得已经凉了……跟我联系的面试的前辈跟我说还没凉可是流程比较慢,这时候已经接到 offer 了就没继续等下去🤣
基本全部的技术终面都会问到如下主观性问题:项目难点、项目研发流程、技术选型、团队状况、团队内部的贡献(技术分享、维护工具)、沟通技巧、我的职业规划;最后的“你还有什么问题要问我吗”是了解团队和公司状况的一个极好的机会,我通常会提问:
经历此次求职,其实我也更加深入地认识到前端工程经历这15年的发展,已经进入了一个比较平稳的状态:初级人员饱和、高级人才稀缺。初级新人找到突破口的惟一办法就是在专业技能熟练的基础上,往不一样方向横向挖掘亮点,如可视化产品开发、Node.js 工具链开发等,以实际业务为基石,踏踏实实提高自我水平才是最重要的事~求职的过程当中我也一度迷茫过、自我怀疑过,感谢智广、剑诀、少杰、钺钺和予南这些深瞳小伙伴对个人鼓励和建议,也但愿这篇文章可以给正在求职的小伙伴带来一点帮助😎~