[]推荐算法工程师的成长之道( 三 )


偏工程实现类的需要有扎实的计算机基础 , 熟悉数据结构和算法 , 熟悉计算机体系结构 , 熟练掌握设计模式 , 有很好的面向对象和抽象思维能力 。
除了熟悉推荐系统的底层代码实现 , 还需要对机器学习算法、最优化理论、数值计算等非常熟悉 , 能够用高效的代码来实现这些算法 。
(2) 偏算法研究类
偏算法研究类的推荐算法工程师主要关注的是怎么结合公司业务、产品特性构、已有的数据建一系列牛逼的算法 , 希望通过这些算法来大大提升转化(可能具体算法的高效工程实现交给工程师) 。
这类职位一般要求有研究背景 , 希望是博士 , 需要具备非常好的理论基础 。 一般是大公司有专门从事算法研究开发的职位 , 或者是研究院类似的单位(大公司的研究院也算) , 小公司一般不会招聘专门搞算法研究的 。
个人觉得在工业界算法不是最重要的 , 关键是怎么将算法跟产品形态很好的结合起来, 快速上线, 整个业务要形成闭环, 具备迭代优化的能力 。
Google的辛格博士就是喜欢用简单的算法来搞定问题的典型代表(读者可以参考吴军的数学之美第二版第13章) 。
偏算法研究类需要有很好的数学基础 , 需要对高等数学、线性代数、最优化、概率统计、几何、图论等方向非常熟悉 。 同时需要在机器学习领域有深刻的领悟 , 能够利用数学工具设计高效易用的机器学习算法 。 不一定需要编程能力特别强 。
(3) 综合类
创业公司、小公司、或者刚刚成立推荐算法团队的公司 , 前期没资源也不愿意在推荐系统上一下投入非常多的人力 , 很多推荐算法工程师是既需要思考算法 , 也要做相关的工程 , 是上面两类的综合体 。
虽然学习接触的东西会更多 , 但是精力也会更分散 。
(4) 偏业务类
随着大数据、云计算、AI的发展 , 越来越多的云计算大厂或者AI创业公司将AI能力(包括推荐能力)封装成SAAS服务提供给第三方公司 。
我个人觉得这一定是未来趋势 , 未来很多创业公司不会再去招聘推荐算法工程师来自己开发推荐业务了 , 可能就是直接购买别人的推荐SAAS服务 。
这个时候就需要一个懂推荐算法业务的专家来结合公司具体业务情况选择最合适的推荐算法提供商及对应的推荐SAAS服务 。
这类偏业务的推荐算法工程师不需要开发推荐算法 , 也不需要工程实现 , 但是需要对推荐算法相关知识熟悉 , 了解周边生态 , 知道什么算法可以用在什么推荐产品形态上 , 每种算法的优劣 , 知道在合适的时间节点引入合适的算法 。 这类职位其实就是一个推荐算法商业策略师 。
2. 管理路线
如果做了很长时间推荐算法想转管理岗位 , 需要提前做好准备 。 包括心理准备和知识储备 。
人的时间是有限的, 转管理了就一定没有那么多时间钻研技术了 。
但是技术管理人员一定要熟悉了解技术 , 要有很好的技术视野 , 能够把握未来的技术发展方向 , 在合适的时机做合适的决策 , 引入合适的新技术 , 这种能力也是要建立在一定的技术积累和学习上的, 所以怎么做好技术学习和团队管理的平衡非常重要 。
做技术管理需要多花时间学习业务知识和管理技能 , 学会有效沟通 , 需要站在老板的角度思考问题 , 需要引领团队更好地支撑公司的商业目标 。 同时也需要有很好的产品意识, 能够深刻洞察用户的需求 , 做好的产品来为用户和公司创造价值 。
管理方向再往上走可以是技术VP , CTO等更高的级别 , 当然这类更高的级别对人在各个方面的要求会更高 。 如果自己有想法 , 并且喜欢挑战的话 , 等你准备充分了 , 还可以创业 。
3. 转行换方向
推荐算法工程师如果想转其他方向, 可选择的范围很多 , 比如算法产品经理、项目经理、数据分析等 。 在什么时间换行、换什么行业需要结合个人的兴趣和现实情况决定 。


推荐阅读