1.跑数据,每天最重要也是最耗时间的事情就是跑数据。为此你经常需要和SQL打交道,在我们部门所有新入职的数据挖掘工程师都需要到数据研发工程师(管数据仓库的)轮岗半年。想想好多人在一个部门可能也就呆两三年。。一轮岗半年也是很醉。如此决定的原因是为了让你熟悉业务。身为数据挖掘工程师,如果对于数据仓库里的数据都不能做到完全理解,直接跑算法纯粹属于抓瞎。照我们老大的说法就是你要“培养数据的感觉”,对此我还是深表赞同。但是久而久之你会慢慢发现这尼玛和当初自己想象中的数据挖掘工作不一样啊,我是想来当算命先生的,怎么过来就成了在数据仓库搬砖的了。。sad but true。如果题主无法接受这样的工作状态,建议你还是找更偏研究一些的岗位,不要来一线业务部门。
回复 ( 1 )
谢@第五大洋莫叔邀。。。想不到知乎第一次被正经邀请竟然是来吐槽老东家。。姑且谈一点感受吧。
首先,阿里是个大公司,虽然很多部门都在招数据挖掘工程师,但是由于每个部门的需求不同,层次也不一样,因此对于人员的技术要求实在是说不清楚。。我一直觉得我所在的部门一定是全阿里技术最菜的了(否则怎么会把我这种渣招进去。。),然而经过和其他部门的同学交流之后才发现原来还有更菜的存在。。题主如果想进阿里,可能的话,最好能提前联系好部门,想做科研型的研究算法底层的话最好去iDST(似乎北京地区的部门在算法上总体要比杭州做的好一些),其他部门如搜索和安全部似乎也有类似岗位,可以提前联系。看题主描述要做空间信息,应该是要去高德了吧,具体有没有这种部门不太了解。至于其他的一线业务部门,如我之前所在的部门,所做的工作一般比较low,下面会详细说。这些岗位的工作根据部门的差异会比较大,当然,毕竟岗位的名字都是叫数据挖掘工程师,工作当中自然也会有许多相同之处。下面谈一下作为一线业务部门每天数据挖掘工程师都在做些啥。
1.跑数据,每天最重要也是最耗时间的事情就是跑数据。为此你经常需要和SQL打交道,在我们部门所有新入职的数据挖掘工程师都需要到数据研发工程师(管数据仓库的)轮岗半年。想想好多人在一个部门可能也就呆两三年。。一轮岗半年也是很醉。如此决定的原因是为了让你熟悉业务。身为数据挖掘工程师,如果对于数据仓库里的数据都不能做到完全理解,直接跑算法纯粹属于抓瞎。照我们老大的说法就是你要“培养数据的感觉”,对此我还是深表赞同。但是久而久之你会慢慢发现这尼玛和当初自己想象中的数据挖掘工作不一样啊,我是想来当算命先生的,怎么过来就成了在数据仓库搬砖的了。。sad but true。如果题主无法接受这样的工作状态,建议你还是找更偏研究一些的岗位,不要来一线业务部门。
2.算法,说实话,因为工期催得紧,算法层面都很low,基本都是随便写写再直接调库跑出来一个结果能交差就没有然后了。毕竟现实情况下,耗费大量时间在算法优化的结果往往是费劲九牛二虎之力才提高了0.0000x个预测准确率,并没有什么意义。目前部门内做推荐算法的团队还只是在用最基本的Apriori,而像决策树,随机森林这些比较古旧的方法在部门内貌似还是很常用的算法。。SVM什么的我都很少见有人用,至于深度学习什么的就更不说了。。你可以感受一下,当然别的部门是什么情况我并不知道。因此我并不觉得面试的时候把数据挖掘算法全都搞的很透彻有什么必要,可能很多面试官也没搞清楚吧(逃)。
3.评case。我们这边每周都会评case,当然很多时候会因为下一个需求来了很多没解决的问题也就不了了之。。
日常工作大概就是上面三个周而复始
—————————————————————————–
关于实习面试,其实问的还是很杂。我所遇到的情况,多数时间还是项目描述,你做了什么,怎么做的,如果项目经验比较丰富的话,往往面试就在聊项目的过程中过去了。一些基本的数据挖掘概念肯定是要知道。比如聚类分类,过拟合,还有一些算法的理解和如何优化,不用太深刻,但原理要懂吧。至于编程,阿里是众所周知的Java圣地,我遇到好几个面试官问了我多线程编程问题,也有喜欢问JVM的,虽然在工作中并不知道有什么卵用(或许还是因为我们太low了吧)。面试这种运气因素占比爆表的事其实谁也说不清楚,感觉最重要的还是要体现出你的自信,或者概括成三个字:不能怂。
最后,找实习的话,可以找内推,但还是那句话,一定要提前打听清楚团队。谨慎入坑。