InfoQ为什么我劝你不要当数据科学家?( 二 )


即使在每家公司都是人工智能公司的时代 , 大多数公司也不具备支持人工智能的基础设施 , 甚至不需要它 。
最近 , 一家快速扩张的初创公司的数据科学负责人在与我喝咖啡的时候分享了一些建议 。
首先 , 要找出问题所在 , 然后构建基础设置 , 再引入数据科学家 。 这可不是一个快速的过程 。 (我的转述大意)
最近 , 另一家知名公司的从事数据科学的零号员工向我发泄 。 她吐槽称 , 她被迫在笔记本电脑上而不是在云端上的大数据训练人工智能模型 。
如果你被录用后没有具体的问题需要解决 , 或者公司没有做好数据科学的准备 , 你可能会发现自己很难提升价值 。
软件工程传授通用技能
成为一名初级软件工程师就像获得了技术领域的 MBA , 你所学到的东西都只不过是沧海一粟 。
你要学习数据库、云技术、部署、安全性和编写简洁的代码 。
你要通过观察 Scrum 领导、高级开发人员或项目经理来学习如何管理软件的开发 。
你要通过代码审查来得到指导 。
如果你进入的公司拥有一支成熟的工程团队 , 你几乎可以保证你会很快提升自己的技能 , 并打造出一个通才的背景 。
软件工程更具可转移性
通过提供更全面的技术体验 , 当你决定是时候改变时 , 软件工程提供了更好的退出机会 。
DevOps、安全、前端、后端、分布式系统、商业智能、数据工程、数据科学……
我认识一些从软件行业改行到数据科学的开发人员 。 如果你浏览一下数据科学的岗位描述 , 你会立即注意到 , 岗位描述到处都是核心的软件开发技能 。
如果你能构建端到端的项目 , 那么你还可以做更多的工作 , 而不仅仅是为 Kaggle 构建模型 。 你可以采用该模型 , 将其产品化 , 设置授权和条码 , 然后开始向用户收取访问费用 。 这就是你自己的初创公司 。
我从来不认为数据科学是不可转移的 。 根据数据做出决策是一项杀手级技能 。 但随着我们变得越来越以数据为导向 , 这也将成为我们每一项工作的一部分 。
机器学习将成为软件工程师的工具
随着人工智能的产品化和易于使用 , 软件工程师将开始使用人工智能来解决他们的问题 。
我可以用一下午的时间教会开发者如何构建 Sklearn 分类器 。 但这并不意味着他们可以构建下一个 AlphaGo , 不过 , 这确实给了他们一个替代基于用户输入的硬编码条件逻辑的选择 。
数据科学家有专业知识 , 比如统计学 , 以及对模型如何工作的直觉 。 但 DevOps 和安全工程师也有自己的专业知识 。
我认为这些都是常见的 , 没有什么不同 。 一个经验丰富的软件专业人员在不同专业之间的转换速度比一个新入行的人选择一个专业的速度要快一个数量级 。
虽然我不认为我们会看到数据科学完全合并到软件工程中 , 但我确实感觉数据科学有可能会成为另一个软件工程专业 。
人工智能不会取代软件工程师
尽管这观点听起来很傻 , 但我在 2014 年进入了软件工程领域 , 因为我担心人工智能会让其他工作都被淘汰 。
然而从那时起 , 这一状况就几乎没怎么变过 。 技术采用的速度很慢 , 人工智能的应用范围比媒体想象的要窄得多 。
与其他专业相比 , 机器学习离自动化软件工程更远 。 虽然我们有初创公司在构建酷炫的产品 , 比如人工智能代码完成 , 但编写代码并不是真正的工作 。 这项工作是用技术来解决问题 。
在奇点出现之前 , 软件工程仍然将是一项宝贵的高薪技能 。
结 语
首先 , 本文所述都是轶事 。 其次 , 我意识到我将数据科学家、机器学习工程师和人工智能研究人员混为一谈了 。 但我认为 , 这些论点仍然值得考虑 , 因为这是你的职业 。
我姑妄言之 , 你姑妄听之 , 不必太过当真 。 我希望你自己研究一下 , 然后再做决定 。 这毕竟是作为数据科学家的一部分 。


推荐阅读