三、需要哪些过硬的竞争优势才能脱颖而出?
Data Scientist需要深刻理解需求和问题所在,然后对数据进行处理,采取合理的量化分析寻求答案,所推荐的答案,也必须是backe by ata evience。以下三类技能是很重要的:
- Data Hacking
要有独立从各种各样的地方把数据化为己用的能力。可能会用到的:
SQL:用来存储和查询structure数据
Programming:比如用Python for parsing/scraping ata。如果既会一门scripting language,又会一门compile/object oriente language,会是优势。主要是用来处理unstructure数据
Haoop/parallel processing:你处理的数据可能太大(比如超市过去半年的购物记录、信用卡公司两年内的刷卡记录)无法一次性装入内存,而你需要对数据进行快速的分析,这就需要MapReuce等技术。
这其中,SQL和Programming是最基本的,你必须会用sql查询数据、会快速写程序分析数据。当然,你的编程技术也不需要达到软件工程师的水平,因为你写的coe大多数只是一次性的、不会被复用,而且也只会被你或者个同事使用,并非放在网上让无数人点击,因此对程序质量要求不高。
要想更深入的分析问题,你可能还会用到:
Exploratory analysis skills,可以使用python、R、matlab等各种工具,IT公司用SAS和SPSS相对较少,尽管有些job as/escriptions里提到了,当然也不是完全不可以。但是如果你只会SAS,那么选择无疑要少很多
Optimization、Simulation:有些职位需要研究顾客需求变化,调整产品或者服务价格,来帮助公司最大化盈利
Machine Learning、Data Mining:比如手机广告的精准投放
Moeling:你需要理解不同的统计模型有什么应用范围、有什么限制和特长
- Problem Solving:
你不光要理解what users say they want,你还需要真正的理解what they actually mean、转化定义出一个可以用数据解决的问题,然后选择正确的分析工具,量化分析和解决问题。
- Communication
数据科学家会跟公司的很多不同部门的人打交道,会比码农跟更有机会见到高层或者是 business领域的人。如果你希望接触像市场营销这样的部门,希望跟上级领导多多打交道,那你需要有较强的交流能力。你需要知道区分什么是问题本质、什么是技术细节,要有能力给上层领导讲high level的分析和推荐,有能力给同事讲解和efen你的技术细节,也就是”见什么人说什么话”,这不是说要你油滑,而是说要知道什么时候需要隐藏技术细节,而只展现跟听众最相关的信息。
你很可能要经常做presentation,需要很强的visualization的能力,熟悉Ewar Tufte和Nathan Yau的东西,会很有帮助。另外,也许你很喜欢高深的方法,觉得你懂,但是一切的解决方案,都要从产生business revenue的角度来考虑是否合理。
你也可能需要跟software evelopment team合作,需要讲清楚需要他们实现什么、需要告诉他们什么地方需要改进。
至于你所从事行业的omain knowlege ,懂最好,不懂也不必强求,行业的特有知识,3个月内可以学会,但是数据分析能力,可不是三个月就能学出来的,并且不同行业背后的数据分析能力是普适的。