作者:Kartik Singhal
我收到很多询问很多(或一大批)关于如何从软件工程师转型为FAANG公司中的机器学习工程师(MLE)。我自己成功完成过这一转型,可以说我面临的最大挑战是不知道从哪里开始,并且在没有明确计划的情况下感到迷茫。
在本文中,我将分享一个分步方法来帮助你应对这一变化。这七个步骤帮我从软件工程师转型为机器学习工程师。
让我们开始吧。
为什么使用机器学习目前机器学习和人工智能非常热门,但你应该明白自己为什么想要进入这个领域。这种个人动机将在人工智能热潮消退时仍然支持你继续前进。
让我上瘾的东西对我来说,这关乎谷歌搜索是如何开发的。谷歌能够如此快速地找到我所需要的东西,让我非常想知道它背后的科技原理。这种好奇心使我开始学习排名算法,从PageRank入手,然后是更广泛的机器学习。
问自己以下几个问题:
花了我四年时间(包括一年的硕士课程,一年的博士课程,在这一年中我辍学了,以及两年的职业生涯)我才意识到自己真正想做什么。这是可以的。建立经验和了解像机器学习这样大的新领域是需要时间的。
了解您的动机和兴趣将自然地引导您识别在机器学习领域内最适合应用您的技能的领域。
我开始在亚马逊定价团队担任软件工程师。尽管定价领域并不是我的首选,但由于在那里积累了丰富的经验,这帮助我更快地过渡到了机器学习工程师职位。
在你的职业生涯中,你有时会面临需要做出短期牺牲以换取长期收益的决定,尤其是在进入一个新的领域时。以下是在我转行过程中必须做出的一些艰难选择:
如果你确定了一个你热衷的领域,你仍然需要一个支持你的经理和公司来确保过渡成功。
找到合适的环境:
提示找到过去将软件工程师转型为机器学习工程师(MLE)的团队。这可以大大加速你的转型,因为这些团队通常有明确的转型指导方针。
提示:总是起草一份文档,概述你的过渡计划以及你希望参与的项目,并在与经理的一对一会谈中讨论。如果他们反复表现出不感兴趣,他们可能没有动机帮助你转换角色。
在我在亚马逊的第一支团队中,尽管这份软件工程师的工作并不是我的理想选择,我也尽了百分之两百的努力。我的目标是让自己变得不可或缺,从而能够挑选自己想参与的项目。这种努力与我的经理建立了一种互信的关系,在这种关系中我们彼此尊重对方的意见。
为什么这很重要?通常只有顶级工程师才能选择他们的项目,而其他人则必须完成分配给他们的任务。展示可靠性可以给你带来可能无法获得的机会,并让你对自己的职业生涯有更多的控制权。
一旦你加入了一个拥有机器学习机会、支持性经理和相关领域的团队,是时候应用你的基础知识了。
做小项目的兼职工作:
例如,我在亚马逊团队中参与了一个改进AWS SageMaker训练管道的项目。这使我能够更密切地与团队中的机器学习工程师合作,了解他们的开发流程,并为即将发布的模型迭代中新功能的发展做出贡献。
扩大你的范围:
提示:阅读同一领域内其他公司的博客和研究文章,以了解他们面临的挑战,并获取潜在的改进想法。例如,当我还在亚马逊工作时,我会关注来自其他电商平台(如eBay和沃尔玛)的技术文章。
像晋升这样的过渡时期是滞后指标,意味着任何一个新角色都需要该个人去已经正在执行达到该职位预期的水平。确定在您过渡到MLE角色时将用于评估的标准。通常,在绩效反馈会议中,软件工程师和MLE的评估标准是不同的。
与软件工程师不同,机器学习工程师的侧重点通常更多在于模型效果、特征工程和算法优化。业务指标的影响和技术专长这是因为与软件工程相比,机器学习的发展周期更长,并且通常直接与特定的业务指标挂钩。
从软件工程师过渡到机器学习工程师可能既具有挑战性又充满回报。它需要战略规划、持续学习和适应能力的结合。
几个额外的小贴士:
这些策略在我职业转型中发挥了重要作用。通过遵循以上步骤,你可以改善你的旅程,并为作为机器学习工程师的新角色的成功奠定坚实的基础。
祝你好运,一如既往,快乐学习!
免责声明本博客基于个人经验和公开资源。请注意,文中表达的观点仅代表我个人意见,并不代表我过去或现在的雇主的意见。请始终参考招聘公司的官方资源和指南以获取最准确的信息。