当前位置: 首页 > 编程日记 > 正文

应聘苹果数据科学家,你需要知道些什么?

作者 | Jay Feng

译者 | 孙薇,责编 | 屠敏

头图 | CSDN 下载自东方 IC

出品 | CSDN(ID:CSDNnews)

以下为译文:

苹果公司是全球最大的技术公司之一,从事电子消费产品、计算机软件以及在线服务的设计、开发并销售工作。其所有部门都一直渴求富有创造力、热情及专注力的数据科学家,从以研究为主的Siri AI开发团队,到基于云的iCloud架构开发部门,苹果公司一直缓慢但持续地组建其数据科学家团队,以处理日常积累的大量数据。

在苹果,数据科学家是什么角色?

与其他大型科技公司一样,苹果的数据科学家所担任的角色千差万别,要取决于所属的团队。苹果的数据科学家实际所担任的职责更接近于全栈数据科学家,也就是说这份工作包含的内容从数据分析到机器学习软件设计再到纯工程层面。

鉴于苹果是一个庞大的多元化企业集团,所使用的数据技能也因团队而异。市场、财务、销售等不同部门有许多数据分析团队,产品及服务部门还有更多基于机器学习及深度学习的团队,比如Siri、云服务甚至硬件。

所需技能

大多情况下,苹果更愿意聘请有至少几年相关经验的申请者,要求包括:

  • 在实际业务中应用数据科学的经验达三年以上(高级职位需5年以上);

  • 对机器学习技能有切实的理解,包括在回归、时间序列分析、聚类、决策树技能以及分类算法方面的经验;

  • 具有关系数据库方面的工作知识,包括SQL数据库以及Spark和Hadoop这样的大规模分布式框架;

  • 精通数值及脚本编程语言,如SQL、Python、Java、C++、PHP或Perl;

  • 出色的表达技巧,可将复杂的分析及概念提炼成以业务为重点的简明摘要。

在苹果,数据科学家有哪些类型?

从技术上来讲,苹果不会雇佣特定类型的数据科学家,而是根据不同团队的需求和所需的技能来招聘。许多数据科学家需要负责跨多个部门的大量数据分析工作,还要负责机器学习类的重要职责。根据团队不同,数据科学家在苹果所负责的职能可能包括:

  • 与业务团队合作探索洞见及机遇,了解需求,并将其转化为技术解决方案;

  • 与数据工程师及平台架构师合作,部署强大的产品实时及批处理决策解决方案;

  • 使用机器学习技术推动自动化流程,比如评分系统;

  • 使用机器学习、用户模型识别及数据建模方面的最新技术来设计、开发并管理大数据驱动的预测模型,以提高用户参与度;

  • 处理大量数据;使用Sparks SQL操作并提取数据。

苹果的面试流程

苹果的面试流程非常标准化。首先,人力资源部门会进行初步的电话面试,之后是招聘经理面试,以评估进一步的兴趣和职位适合度,再就是简短的电话面试来考察技术。最后,在现场面试前,可能还会根据应聘者资历及所应聘的职位类型进行“开卷挑战”(take-home challenge)。

苹果公司的机器学习杂志

技术筛选及开卷挑战

下一步就是技术招聘经理的电话面试,可能还会有个开卷挑战。技术招聘经理的面试会在代码共享环境中完成。

技术面试的问题一般是Python演练和数据科学推理问题。将自己的想法步骤在技术面试中表达清楚,并清晰传达是非常重要的。这一步是测试应试者使用基础数据结构及算法概念的能力,所需要的关键技能是能否提供全面性的解决方案,并快速分析出相应解决方案的运行时复杂度。

苹果的数据科学类开卷挑战一般限时三天,通常挑战的是机器学习方面的问题,如何建立模型并根据数据集作出预测。

苹果数据科学家的技术面试问题样例:

  • 针对指定的整数列,找出数组左半部分总和等于右半部分时的指数;

  • 在数以千计的产品中,如何吸引数百万用户分别完成数百项交易,并将用户细分到有意义的组中;

  • 根据指定的字符串列表,用Python编写一个函数,以返回相应字符串的所有易位构词。

现场面试

最后一步是现场面试。面试小组通常包含5到6轮面试,通常由面试职位所归属的团队来执行。每次面试会面见一到两位面试官,并由面试经理负责在苹果园区安排与其共进午餐。请注意,虽然可能是在非正式场合,但午餐面试在很大程度上属于面试文化的一部分。

现场注意事项

  • 每轮现场面试的反馈是分开的,也就是说一轮面试的表现不佳,不会影响到下一轮面试;

  • 请记住:苹果的数据科学家这个头衔涉及了与数据科学相关的众多团队,考虑到对全栈数据科学职位的各种要求,询问招聘者现场面试的内容会有所帮助。如果某个数据科学职位更注重数据分析,大量练习SQL和产品案例相关的问题更有用。如果某个职位需要构建模型和机器学习的知识,请复习机器学习系统设计及实施的相关概念;

  • 通常来说,在白板编程面试中,面试官似乎更偏爱链表、数组/字符串及系统设计方面的问题;

  • 苹果的数据科学家工资可能会很高,取决于你所属的级别。例如,第四级普通员工的年薪为15万到18万美元,另有工资10%的奖金,以及价值20万到30万美元的公司股票。每年股票的增值也很可观。

苹果的数据科学面试问题

  • 描述L1及L2正则化之间的差异,特别是它们对模型训练过程影响的差异;

  • ACF和PACF的含义是什么?如何计算?

  • 如何设计某个客户端-服务器模型:客户端必须每分钟发送一次位置数据?

  • 编写一个函数,以检测二叉树的左右子树是否都是镜像。

  • 假设有个过去5年内每月分组的时间序列数据集,如何确定本月与上月之间的差异是否显著?

  • XGBoost如何处理偏差方差权衡?

  • 假设多个服务器上分布着10万个文件,想要处理所有的文件,如何处理?如何使用Hadoop来处理?

作者:Jay Feng, Interview Query网站的创始人,在Racketracer网站撰写数据等方面的文章。

原文:

https://towardsdatascience.com/the-apple-data-scientist-interview-2db967cabbce

本文为 CSDN 翻译,转载请注明来源出处。

【end】

原力计划

《原力计划【第二季】- 学习力挑战》正式开始!即日起至 3月21日,千万流量支持原创作者!更有专属【勋章】等你来挑战

推荐阅读

  • 2.2版本发布!TensorFlow推出开发者技能证书

  • 如何用 CNN 玩转 AlphaGo 版的五子棋?

  • 美团十年,支撑全球最大规模外卖配送的一站式机器学习平台是如何炼成的?

  • 2020 年最新版 68 道Redis面试题,20000 字干货,赶紧收藏起来备用!

  • 最近一个名为 BTCU 的比特币分叉,准备用新分叉解决比特币网络的旧问题

  • 返鄂复工人员自述:回武汉上班,要先飞合肥,再由公司包车接回去

  • 你点的每个“在看”,我都认真当成了AI

相关文章:

python 利用模板文件生成配置文件

2019独角兽企业重金招聘Python工程师标准>>> gen.py: __author__ fuhan from jinja2 import Template a{name:a} b{name:b} mode_dict { a:a, b:b } def gen_config(tplt_file, modea): with open(tplt_file, r) as r: tplt Template(r.read()) config mode_dic…

利用Apache的ab命令做Benchmark性能测试

测试系统性能,例如httpsqs # ab -k -c 10 -n 100000 "http://127.0.0.1:1218/?namexoyo&optput&dataabc ab是Apache超文本传输协议(HTTP)的性能测试工具。 其设计意图是描绘当前所安装的Apache的执行性能,主要是显示你安装的Apache每秒可…

MySQL 狠甩 Oracle 稳居 Top1,私有云最受重用,大数据人才匮乏! | 中国大数据应用年度报告...

整理 | 屠敏出品 | CSDN(ID:CSDNnews)科技长河,顺之者昌,错失者亡。在这个技术百态之中,中国专业的 IT 社区CSDN 创始人&董事长蒋涛曾多次在公开活动中表示,开发者是对技术变革最敏感的人群。这不仅源于…

MAC安装OpenXenManager管理Xenserver

官方文档:https://github.com/OpenXenManager/openxenmanager要求:Python 2.7pyGTK 2.16ConfigObjRavenGTK-VNC(仅限Linux)Debian / Ubuntu Linux软件包依赖项:python2.7 python-gtk2 glade python-gtk-vnc python-gla…

用Flutter + Dart快速构建一款绝美移动App

作者 | Wojciech Kuroczycki译者 | 弯月来源 | CSDN(ID:CSDNnews)如今,与前端或移动相关的新框架层出不穷。所有从事Web开发的人都应该熟悉各种目不暇接的新方法以及针对复杂问题的轻量级解决方案。我们不再因为没有现成的技术而烦恼&#xf…

自己写的单链表

link.c #include <stdio.h> #include <malloc.h> #include <string.h> #include <stdlib.h> #include "link.h"/**** 这是一个计算HASH值的算法**/ int time33(char* arKey,int arlength){int h 0;int i;for(i0;i<arlength;i){h h*3…

假装不知道有尽头(博弈论的诡计)

《笑林广记》中记载这样一则笑话。 有一个人去理发铺剃头&#xff0c;剃头匠给他剃得很草率。剃完后&#xff0c;这人却付给剃头匠双倍的钱&#xff0c;什么也没说就走了。一个多月后的一天&#xff0c;这人又来理发铺剃头。剃头匠还记得他上次多付了钱&#xff0c;觉得此人阔绰…

Java Script 第四节课 Java Script的隐式转换

<!DOCTYPE html><html><head><meta charset"utf-8"><title></title><script type"text/javascript">/*if(exp){exp为true的代码段;}else{exp为false的代码段;}*///其它类型转换成布尔类型假的有var a;//undefin…

深入理解malloc和free

1.为什么free是void*&#xff0c;那么它怎么知道要释放多少内存&#xff1f; 《UNIX环境高级编程》 《C语言编程常见问题解答》 《你必须知道的495个C语言问题》 《UNIX环境高级编程》 2.free源码 内存控制块结构定义 struct mem_control_block {int is_available;int si…

根据IP和MAC查端口

进入交换机的命令提示符.输入show ip arp 查出IP地址跟MAC 地址的对照表.再输入show mac-address-table,看一下这个MAC是从哪个端口学到的转载于:https://blog.51cto.com/124130/271033

“数学不好,干啥都不行!”骨灰级程序员:其实你们都是瞎努力!

之前很多程序员读者向我们反馈&#xff1a;1&#xff09;数据结构、编程语句&#xff0c;核心原理都是数学&#xff0c;不会数学搞编程好难&#xff0c;后来发现各种东西还要概率论&#xff0c;还要推收敛&#xff01;近似还要知道泰勒展开&#xff01;2&#xff09;做算法优化…

转:秒杀系统架构分析与实战

原文出处&#xff1a; 陶邦仁 欢迎分享原创到伯乐头条 0 系列目录 秒杀系统架构 秒杀系统架构分析与实战1 秒杀业务分析 正常电子商务流程 &#xff08;1&#xff09;查询商品&#xff1b;&#xff08;2&#xff09;创建订单&#xff1b;&#xff08;3&#xff09;扣减库存&a…

Visual Studio中的《C# 语言规范》

无意中的无意发现了个好东西——《C# 语言规范》&#xff0c;您不用到处下载&#xff0c;它就在您的Visual Studio安装目录中&#xff0c;例如&#xff1a;F:\Program Files\Microsoft Visual Studio 9.0\VC#\Specifications\2052\CSharp Language Specification.doc 这是它的目…

超轻量级中文OCR,支持竖排文字识别、ncnn推理,总模型仅17M

整理 | AI科技大本营光学字符识别&#xff08;OCR&#xff09;技术已经得到了广泛应用。比如发票上用来识别关键字样&#xff0c;搜题App用来识别书本上的试题。近期&#xff0c;这个叫做chineseocr_lite的OCR项目开源了&#xff0c;这是一个超轻量级中文ocr&#xff0c;支持竖…

Redis队列的应用

Redis用双链表list实现队列的 LPUSH key value [value ...] 将一个或多个值 value 插入到列表 key 的表头 如果有多个 value 值&#xff0c;那么各个 value 值按从左到右的顺序依次插入到表头&#xff1a; 比如说&#xff0c;对空列表 mylist 执行命令 LPUSH mylist a b c &…

Python fabric实现远程操作和部署

fabrictitle是开发&#xff0c;但是同时要干开发测试还有运维的活 (o(╯□╰)o)近期接手越来越多的东西&#xff0c;发布和运维的工作相当机械&#xff0c;加上频率还蛮高&#xff0c;导致时间浪费还是优点多。修复bug什么的&#xff0c;测试&#xff0c;提交版本库(2分钟)&…

自己写的哈希表以及解决哈希冲突

哈希表就是键值key-value对&#xff0c;使用hash函数让key产生哈希值&#xff0c;当不同的key产生相同的哈希值时就是哈希冲突了&#xff0c;产生哈希冲突可以使用拉链法。 hash.c #include <stdio.h> #include <stdlib.h> #include <string.h> #include &…

Python与MySQL数据库的交互实战

作者 | Huang supreme编辑 | 郭芮图源 | 视觉中国安装PyMySQL库如果你想要使用python操作MySQL数据库&#xff0c;就必须先要安装pymysql库&#xff0c;这个库的安装很简单&#xff0c;直接使用pip install pymysql&#xff1b;假如这种方式还是安装不上&#xff0c;就用如下链…

Hyper-V的三种网卡

External 虚拟机和物理网络、本地主机都能通信 Internal 虚拟机之间互相通信&#xff0c;并且虚拟机能和本机通信 Private 仅允许运行在这台物理机上的虚拟机之间互相通信

filter-mapping中的dispatcher使用

web.xml里<filter-mapping>中的<dispatcher>作用 2.4版本的servlet规范在部属描述符中新增加了一个<dispatcher>元素&#xff0c;这个元素有四个可能的值&#xff1a;即 REQUEST,FORWARD,INCLUDE和ERROR 可以在一个<filter-mapping>元素中加入任意数目…

脉冲神经网络在目标检测的首次尝试,性能堪比CNN | AAAI 2020

译者 | VincentLee来源 | 晓飞的算法工程笔记脉冲神经网络(Spiking neural network, SNN)将脉冲神经元作为计算单元&#xff0c;能够模仿人类大脑的信息编码和处理过程。不同于CNN使用具体的值(continuous)进行信息传递&#xff0c;SNN通过脉冲序列(discrete)中每个脉冲发射时…

TCMalloc:线程缓存的Malloc

转载自&#xff1a; http://shiningray.cn/tcmalloc-thread-caching-malloc.html作者&#xff1a;Sanjay Ghemawat, Paul Menage 原文 翻译&#xff1a;ShiningRay 动机 TCMalloc要比glibc 2.3的malloc&#xff08;可以从一个叫作ptmalloc2的独立库获得&#xff09;和其他我测试…

今年央视的春晚能给人带来惊喜吗?

已经好多年还没看完中央电视台的春节联欢晚会自己就睡着了&#xff0c;说实在的&#xff0c;现在央视春节联欢晚会的节目总是让人期待后感到相当的平淡乏味&#xff0c;有些搞笑节目庸俗的让人笑不出来&#xff0c;绝大多数的节目都显得非常的人工&#xff0c;全然不能激发出观…

将baidu地图中的baidu logo去掉

Web 最简单方法&#xff0c;将logo的css样式改为display:none即可 <!DOCTYPE html> <html> <head><meta charset"utf-8" /><title>移除百度地图LOGO和版权信息</title><script type"text/javascript" src"htt…

Linux环境网络库

安装libevent 官网&#xff1a;http://libevent.org/ 书籍&#xff1a;http://www.wangafu.net/~nickm/libevent-book/ Libevent参考手册翻译:http://blog.csdn.net/laoyi19861011/article/category/831215 Libevent参考手册翻译增加&#xff1a;http://blog.sina.co…

万人马拉松赛事,人脸识别系统如何快速、准确完成校验?

作者 | 阿里文娱技术专家墨贤出品 | AI科技大本营&#xff08;ID:rgznai100&#xff09;大麦的人脸闸机在2019年杭州马拉松上成功的完成了刷脸入场功能的首秀&#xff0c;相比传统的马拉松入场核验方案在入场体验和入场效率上都有了很大的提升&#xff0c;下面介绍一下大麦的人…

Collection集合List、Set

Collection集合&#xff0c;用来保存一组数据的数据结构。 Collection是一个接口&#xff0c;定义了所有集合都应该包含的特征和行为 Collection派生出了两类集合 List和Set List接口&#xff1a;List集合的特征是元素是可重复且有序 Set接口&#xff1a;Set集合的特征是元素是…

如何用Jupyter Notebook制作新冠病毒疫情追踪器?

出品 | AI科技大本营&#xff08;ID:rgznai100&#xff09;新冠肺炎已在全球范围内爆发。为了解全球疫情分布情况&#xff0c;有技术人员使用Jupyter Notebook绘制了两种疫情的等值线地图&#xff08;choropleth chart&#xff09;和散点图。前者显示了一个国家/地区的疫情扩散…

关于Aptana studio工具

今天&#xff0c;使用了Aptana studio这个工具&#xff0c;界面类似于Myeclipse因使用MyEclipse比较顺手&#xff0c;这个工具上手还挺容易的。而且比Dreamweaver好用多了&#xff0c;有代码提示的工具&#xff0c;再加上工具不大&#xff0c;耗内存较小。挺喜欢这个工具的。写…