如何成为全栈数据科学家?如何选择公司团队?

2015-08-31

       Warald指出:统计、编程、商业嗅觉三项全能的全栈数据科学家非常罕见。如果欠缺这三项中的1-2项,但是还是想成为全栈数据科学家,还有可能吗?答曰:当然。除了读书,你还可以在工作当中继续学习、不断提高。那么,该如何加强背景?该选择加入什么样的公司(或者说团队)?Warald给出一些建议。


       首先感受一下自己喜欢多快的步伐,喜欢把事情做的多么细致。网络创业公司代表快+准确率不太高的极端,制药公司代表慢+极其准确的极端。即使都在互联网创业公司范围,不同产品的公司也对步伐要求不同,值得好好体会一下。


       其次是要明白数据的领域性。无论你是分析什么数据,都需要对这个领域有一定的理解,否则一定走不远。你对这个领域本身是否有兴趣?如果是完全陌生的,是否肯花时间去学? 这些很主观的事情,完全因人而异。有的人可能无论分析什么数据都一样有热情,但是有的人会看见金融数据就两眼放光,但是看见网站运行的log就睡着了,看见 DNA结构就两眼模糊了。


       作为新人,你需要跟同事们学习,这意味着团队成员背景也是很重要。虽然一开始找个工作难度低、人员水平低的地方,会活的很愉快,但是这种情况一般难以长久。当你刚毕业生的时候,同事对你的无知容忍度会很大,也会因为你对他们地位没有威胁而更愿意教你。


       如果不趁着这时候多问问题、多学习,以后当别人对你的期望是“资深数据科学家”但是你却没有那个能力的时候,下场会很惨。刚工作的前几年,哪怕钱不是最多,也要去能帮你学习提高的地方。比如你自己代码能力不错但是对数据嗅觉一般,建模虽然也能调用现成的包来跑个机器学习的模型但是对里面细节和适用场合也不太清楚,那么找个能带你的人就非常重要。比如说,如果你是统计出身但是代码能力一般,那么可以想方设法跟软件工程师一起合作。在你是新人的时候,如果全公司没有一个人能在你最需要的能力方向上辅导你,那这个公司真的值得去吗?如果是大公司的科研团队,那就看看成员有多少是博士、有没有科研实力(比如发论文记录)、有没有给开源项目贡献代码的 – 不是说团队没有PhD就不行,但是现在PhD这么多、各种专业都可以做数据科学,连一个PhD都没有的地方经常不是好迹象。


       数据科学跟码农一样,必须一辈子保持学习。如果你天天勉强混够8小时工作,业余不做任何学习,也许你可以这么混两三年,但是五年以后,可能突然发现你技能陈旧(典型的例子就是工作只用excel做分析)、丧失了跳槽的能力。这个时代没有什么铁饭碗,没有什么公司能保证你可以呆一辈子。老牌企业从MSR到IBM到ebay到雅虎都在裁掉一些当初也还算很不错的人。如果你保持学习的活力,一直保持在领域前言,那自然不用担心,刚听说风吹草动,没等公司裁员通知下来,就有很多下家要来抢你了。反之,如果你等到裁员以后才开始准备面试、学习新技能,那么已经太晚了。


       争取用开源工具。开源的东西用的人更多。虽说只要学好了一个,其他东西很快也可以学会,但是开源的东西会让你跟别人交流更顺畅,能交流的人更多。比如全组都是用 Python、R、Hadoop,但是你用SAS,这个鸿沟其实不是那么容易跨越的;Matlab因为跟R足够类似,一般会被接受;Hadoop/Spark/Pig比微软的SCOPE应用广泛太多。


       培养数据科学的嗅觉。看别的公司在做什么、别的公司要聘请什么样的人,哪怕不打算跳槽也要时不时看看外面的职位有什么要求;开学术会议、去meetup、阅读专业博客;你平常用的技术工具如果是开源的,那么肯定会不断有新工具出来,经常看看,保持跟上时代步伐;公开课的确需要花费大量时间,但是既然数据科学是真爱,那么花费时间的事情并不会觉得痛苦。


       很多年轻人说,也不清楚到底自己是否喜欢某件事,那么可以试试再说。现在这个时代,中国很多年轻人已经不像上一代那样充满了对金钱的不安全感,在富足中长大,没有遇到过真正缺吃少穿的日子,很多人对生活和工作的追求超越了上一代,还需要追求成就感、满足感、幸福感,而不是仅仅的混口饭吃。正如有很多人做码农是因为喜欢编程一样,也有很多人选择数据科学是因为喜欢从数据里面挖掘价值。很幸运,这些工作也都紧跟时代的步伐,机会多、收入高。