跳转到主要内容

在Shopify,我们接受了全栈数据科学的理念,经常被问到,“成为一名全栈数据科学家意味着什么?”。这个词最近在数据行业出现了激增,但似乎没有就定义达成共识。因此,我们与一些Shopify数据科学家聊了聊,分享了我们的定义和经验。

什么是全栈数据科学家?

“全栈数据科学家参与数据科学生命周期的所有阶段。虽然你显然不可能成为一切的大师,但全栈数据学家可以相对快速地产生高影响力,因为他们与他们正在构建的过程和设计的每一步都有联系。”-数据科学家Siphu Langeni

“全栈数据科学可以用一个词的所有权来概括。作为一名数据科学家,你拥有一个端到端的项目。你不需要成为每种方法的专家,但你需要熟悉其中的内容。这有助于你确定什么是解决问题的最佳解决方案。”-高级数据科学家Yizar(Izzy)Toren

通常,数据科学团队的组织是让不同的数据科学家研究数据科学项目的各个方面。然而,全栈数据科学家的范围涵盖了端到端的数据科学项目,包括:

  • 发现和分析:如何收集、研究和解释来自多种不同来源的数据。这个阶段包括识别业务问题。
  • 采集:将不同来源的数据移动到您的数据仓库中。
  • 数据建模:使用批处理、流式处理和机器学习工具转换数据的过程。

什么技能造就一名成功的全栈数据科学家?

“通常情况下,你在解决问题的同时也在理解这些问题。这就是为什么你需要不断与利益相关者沟通并提出问题。你还需要良好的工程实践。你不仅要负责确定解决方案,还需要建立将解决方案运入生产的管道。”,高级数据科学家

“最有效的全栈数据科学家不仅仅是等待临时请求。相反,他们会使用数据主动提出业务问题的解决方案。要有效地做到这一点,你需要熟悉详细的产品分析,并了解如何向用户提供解决方案。”-高级数据科学经理Sebastian Perez Saaibi

全栈数据科学家是多面手,而不是专家。由于全栈数据科学家拥有端到端的项目,他们与多个利益相关者和团队合作,发展了广泛的技术和业务技能,包括:

  • 商业头脑:全栈数据科学家需要能够识别业务问题,然后提出正确的问题,以构建正确的解决方案。
  • 沟通:对于一个通常有助于影响决策的全栈数据科学家来说,良好的沟通或数据讲故事是一项至关重要的技能。你需要能够以利益相关者能够理解和实施的方式有效地传达你的发现。
  • 编程:Python和SQL等语言的高效编程技能对于将代码交付到生产环境至关重要。
  • 数据分析和探索:探索性数据分析技能是每一位全栈数据科学家的关键工具,其结果有助于回答重要的商业问题。
  • 数据工程:一名全栈数据科学家应该具备构建和部署生产管道模型的工程技能。
  • 机器学习:机器学习是全栈数据科学家可以用来回答商业问题或解决问题的众多工具之一,尽管它不应该是默认的。在Shopify,我们支持从简单开始,然后随着复杂程度的迭代。

成为一名全栈数据科学家有什么好处?

“你可以选择如何解决不同的问题。我们没有一种方法,因为这实际上取决于你解决的问题是什么。这甚至可以包括决定使用哪种工具。”-高级数据科学家Yizhar(Izzy)toren

“你可以最大限度地接触技术堆栈的各个部分,培养与其他工艺合作的信心,并通过可操作的见解精明地推动决策。”-数据科学家Siphu Langeni

作为一个多面手,一个完整的数据科学家是“一无所长”吗?虽然全栈数据科学家预计将在数据科学专业领域拥有丰富的经验,但每一位科学家也将在特定领域带来额外的专业知识。在Shopify,我们鼓励T型开发。强调这种类型的发展不仅使我们的数据科学家能够磨练他们擅长的技能,而且还使我们能够作为一个团队广泛工作,利用个人的深度来解决需要多种技能的复杂挑战。

对于想要成为全栈数据科学家的人,你有什么建议?

“全栈数据科学可能会让人望而生畏,尤其是对于有学术背景的人来说。如果你花了一段时间研究并专注于构建概率规划模型,你可能会犹豫是否去研究栈的不同部分。我给那些迈出这一步的人的建议是将其视为一个新的问题领域。你已经掌握了一个(或多个)专业技能,所以将全栈数据科学的广度视为一项挑战。”-Sebastian Perez Saaibi,高级数据科学经理

“问很多问题,努力收集背景信息,这样可以节省你在后端的时间。并致力于磨练你的技术技能;当你了解自己的东西时,你会获得对他人的信任!”-数据科学家Siphu Langeni

综上所述,全栈数据科学家是指:

  • 专注于解决业务问题
  • 是投资于端到端解决方案的所有者,从识别业务问题到将解决方案交付生产
  • 发展涵盖全套数据科学的广泛技能,同时培养T型技能
  • 知道使用哪种工具和技术,以及何时使用