70%求职者所以被拒,你还不避开这些“雷区”?!

全文共3713字,预计学习时长7分钟html

不少想要在数据科学行业寻找一席之地的人正在慢慢意识到这个问题:在数据科学这个领域应聘,想获得求职或者面试反馈是基本不可能的。ios

互联网公司对这些信息守口如瓶有不少缘由。其一,公司给出的每一条拒绝理由均可能招致法律诉讼。其二,不少人并不能很好地消化负面消息,有些人甚至会变得十分偏激。其三,若是要这么作的话,想一想面试官要花多长时间写一篇构思精良的反馈给几十个甚至上百个应聘的人。除此以外,公司并无从中获得任何好处。git

因而,就出现了一大批困惑、迷茫又想要有所成就的数据科学家。但好消息是:在这个行业,求职被拒的缘由其实也就那么几个,针对这些不足还有不少方法来进行弥补。github

不论是技术性仍是非技术性的技能,应聘者所不具有的也正是这些公司迫切需求的,本文旨在对这些问题进行探讨。web

缘由1:使用Python语言处理数据科学的技能面试

大部分数据科学模型都基于Python环境。在使用Python语言处理数据结构时,仅有少数工具能将新手和经验丰富的老手区分开来。若是你期望经过建立特别出众的项目来吸引雇主的注意,这些工具能迅速拉开你和其余人的差距。算法

要想促使本身扩充数据科学理论方面的知识,提升实践能力,能够在项目中尝试如下几个方法:flask

数据挖掘。你应该熟练掌握pandas函数,好比.corr(),scatter_matrix(),.hist() 和.bar()这些语句的使用。你应该时刻注意,利用主成分分析(PCA)原理或者t-SNE的方法将数据可视化,在Python语言中可使用sklearn的PCA和TSNE。微信

特征选择。在90%的状况下,数据集会有不少并不须要的特征,这些特征会耗费没必要要的调试时间,还极可能会出现过拟合的现象。这就要求数据科学家们熟练掌握基本的筛选方法(如scikit-learn库的VarianceThreshold函数和SelectKBest函数)和稍显复杂的基于模型的特征筛选方法(如SelectFromModel)。网络

使用超参数搜索的方法来寻找最优模型。数据科学家必定得知道GridSearchCV函数是什么、怎么用。RandomSearchCV函数同理。要想出类拔萃,你能够用skopt库中的BayesSearchCV这个函数来实验一下,看看怎么将贝叶斯优化法运用到超参数搜索中。

管道机制。sklearn中的pipeline库能够帮助你一站式完成数据预处理、特征选择和建模这些步骤。若是你对pipeline不熟悉的话,那就说明你应该增强对建模工具包的学习。

缘由2: 几率论和统计学知识

几率论和统计学方面的知识并不会在数据科学的工做中单独应用,但它们是全部数据科学工做的基础。因此,若是你还没仔细研究过下面这些知识的话,那你就很容易把面试搞砸了。

贝叶斯法则。这是几率论的基础,在面试中常常出现。你能够练习一些基础的贝叶斯“白板”问题,而且阅读下面这本著做来深入理解这个法则的含义和来由。

传送门:http://www.med.mcgill.ca/epidemiology/hanley/bios601/GaussianModel/JaynesProbabilityTheory.pdf

基本的几率论知识。你应该知道怎么回答下文这些问题。

问题传送门:https://github.com/kojino/120-Data-Science-Interview-Questions/blob/master/probability.md

模型评估。在分类问题中,不少新手习惯以模型的精确度做为衡量标准,这样作一般不是一个很好的选择。你应该习惯使用sklearn的precision_score,recall_score,fl_score,和roc_auc_score等函数并了解其背后的理论知识。对于回归问题,知道为何用均方偏差(mean_squared_error)而不用平均绝对偏差(mean_absolute_error)也一样重要,反之亦然。花时间去弄清列在sklearn官方文件中的全部模型评估标准是很值得的。

官方文件传送门https://scikit-learn.org/stable/modules/model_evaluation.html

缘由3: 软件工程小窍门

数据科学家被要求作软件工程工做的状况愈来愈多。不少雇主都要求应聘者管理好本身的代码,在笔记本和草稿上留下清晰的注释。尤为是如下几个方面:

版本控制。你应该知道怎么使用git系统,而且能用命令行和本身的GitHub库远程互动。若是你还不能作到的话,建议你从下面这个教程开始。

教程传送门:https://product.hubspot.com/blog/git-and-github-tutorial-for-beginners

网页开发。有些公司更倾向于将数据储存到本身的网络应用程序(WebApp)中,或者经过API的形式来访问数据。所以,熟悉网页开发的基本知识也很重要,最好的办法就是学习一些Flask框架的知识。

传送门:https://www.freecodecamp.org/news/how-to-build-a-web-application-using-flask-and-deploy-it-to-the-cloud-3551c985e492/

网页抓取。这有点相似与网页开发:有时候你须要经过从网页直接抓取数据,将数据采集自动化。BeautifulSoup和scrapy是两个很是不错的网页抓取工具。

清晰简洁的代码。学会字符串的使用。不要滥用行间注释。将长函数拆成短函数,越短越好。10行以上的函数都不该该出如今你的代码中。每一个函数都应该清晰地命名,function_1不是一个好名字。在给变量命名时遵循Python语言的规则,要像这样like_this,不能像LikeThis或者这样likeThis。一个Python模块(.py格式的文件)中的代码不要超过400行代码。每一个模块都要有一个明确的目的,好比data_processing.py,predict.py)。学习if name == ‘_main_’语句是什么,为何重要。使用列表解析(list comprehension)。不要滥用for循环。最后要记得给你的项目附上一个README文件。

缘由4:商业嗅觉

彷佛有不少人认为只要本身技术够硬,就能被心仪的公司录取。其实否则。事实上,公司更青睐能更快带来效益的员工。

这就意味着求职者不只技术要过关,还要掌握一些其余的技能。

想别人之所想,并付诸行动。大多数人在沉浸于“数据科学学习模式”时,都会遵循一系列步骤:导入数据、分析数据、清理数据、数据可视化、建模、模型评估。

若是你是在学习一个新的库或者一项新的技能的话,这些步骤没什么很差。但在商业环境中,这种相似于“无人驾驶”的工做模式是一个很差的习惯,由于上班时间的每一分、每一秒,你作的每一件事情都是公司在为你买单。你得培养本身的商业思惟,思考怎么妥善安排好本身的时间,为团队和公司作出有意义的贡献。

这里介绍一个方法,在开始一项数据科学项目以前,先思考一下你要用它达到一个什么样的目的,先给本身提几个问题,这样你就不会中途被一些所谓的DS工做流(workflow)等无关的工做打乱思路。把这些问题想得越实用越好,当你完成整个项目以后,再回过头想一想这个项目有没有帮你认真回答这些问题。

问对问题。公司但愿雇用的员工在调整工做模式时可以顾全大局,并思考清楚一些问题。好比,“我如今负责的工做是由于它真的对团队和公司有实际帮助,仍是由于我能在里面使用我本身喜欢的算法?”或者“我应该优化哪些重要的商业指标呢?有没有更好的方法来改善?

将你的成果解释清楚。管理层须要你来告诉他们哪些商品卖得好,哪些用户转而使用了竞争者的产品,你得说出个因此然来。但他们不懂(也不屑于去了解)什么是查准率/查全率曲线,也不知道你为了防止模型过拟合作出了多大的努力。因此,用浅显易懂的方式来让你的听众明白你作出了什么成果,有什么影响,这也是数据科学家必须具有的一项技能。

你能够找一个从高中开始就再也没上过数学课的朋友,试着一边作项目,一边向这位朋友解释你作的项目是干什么用的。友情提示:解释的时候不能提到任何算法的名字,有关调试超参数的术语也不能提,你使用的语言应该越简单越好。

除了上面的缘由,还有……

关于求职被拒的缘由,没有以上述理由更详尽的了,从笔者目击的百余个新手数据科学家求职和面试指导案例,以及与面试官的沟通结果看来,70%的人是由于上述理由被拒。

但记着,像性格这种定义比较灵活的东西也可能会被算做考量的标准之一。若是你和面试官不是很合得来,谈话进行地不是很顺利或者很尴尬,就颇有可能你的硬实力是够的,可是面试官以为你的气场和公司文化不是很符合。不少技术大牛也会因这种

留言 点赞 关注
咱们一块儿分享AI学习与发展的干货
欢迎关注全平台AI垂类自媒体 “读芯术”

添加小编微信:dxsxbb

便可进入微信交流群

相关文章
相关标签/搜索