2023年过年后,我开始了找工作,在此将其中的一些经历和经验与大家共享。
我的求职意向
我要找的工作是WebGL工程师,对地域没有要求。
我对于自己要去的公司主要考虑两点:
1.工作强度不要太高。
因为太忙会让你没时间学习,而且加班太久脑袋也会变迷糊,尤其是在开发一些算力较高的项目的时候。
2.不去没有人品的公司。
就我的经历而言,当一个公司没有了人品后,其内部必然存在没人品的领导,这可能会让你无法专心搞技术。而且,助纣为虐,并非君子所为。
我面试过的公司
我当前主要往上海、杭州、北京三地投的简历。
从2023-2-13 至2023-2-15的三天内,经历了6场面试,上海1家,杭州2家,北京3家。
北京的WebGL 挺多的我是知道的,不过我没想到杭州也有不少,也没想到上海的WebGL 并不算太多。
在这6家里面,有2家是家居相关的,其余的分别是办公软件、三维地图 、军工、三维编辑器。
之前我在面试办公软件的那家的时候,他说可以用WebGL开发PPT、word之类的办公软件的插件,这是我没想到的。
其余的,我发现千峰、传智、尚硅谷那样的教育机构里并没有WebGL,至于为何如此,我不太好说。
这6家公司的薪资多数在20K-40K之间,个别在30K-60K之间,因为有的公司是猎头直接推的,有点混乱,我只能有一个大概估计。
接下来说一下面试题。
面试题
面试题分主流前端、WebGL和图形学3部分。
1.前端基础题
主流前端就是js、vue、react、ts、设计模式那些。
js、设计模式和ts都是比较重要的,vue、react你可以说你只是会用,并不精通,也没事。
2.图形学、WebGl和three.js相关的题
基础题:
- 点积、叉乘
- 欧拉、四元素
- 矩阵,如模型矩阵、视图矩阵、投影矩阵、视图矩阵等
- 正交相机、透视相机
- WebGL渲染流程
- three.js中的WebGLRenderer渲染过程
- PBR材质
- 法线贴图
- 后处理
- 着色器,比如抗锯齿、转场、体积云等
当前公司在实战中遇到的问题点和技术点:
- 深度冲突问题
- 多层透明度问题
- 单面材质的背面可见(不使用双面)
- 图形的镂空
- 渲染时的性能优化
- 开发大场景项目时的性能优化,比如LOD
考察知识面的题:
- 软阴影
- 光线追踪
- 环境光SSAO,SSDO
项目交流
面试官会让你说一个自己做过的最满意的项目,然后就此展开交流沟通,以考察你的实战能力。 这个时候我们就可以把自己的核心亮点展示出来,说得越多越好,只要他不让你停,你就别停。
总结
面试的过程既是一个考察自己的过程,也是考察市场的过程。
我在这次面试中,看到了自己下一步要踩的台阶,这是我面试之前最想要的。
在技术深度上,Three.js的渲染架构逻辑我尚未打通,PBR尚未手写,这是我接下来要重点研究的。
在技能定位上,只研究WebGL、Three.js或者Babylon会有点技能单一,最好再掌握一门相关技术,比如unity、UE4/UE5、cesium、WebGIS等。
在市场需求上,WebGL相关的需求并没有我想象的多,这应该跟市场经济尚未复苏有关系,个人预测下半年会更好一些。
在整体的工作强度上,不加班的公司很少,甚至很多公司会明着说我很忙、会996、会单休,这种我会直接拒绝,也希望大家可以团结一致。