返回首页

面试阿里巴巴java研发工程师需要哪些能力

172 2023-11-22 12:50 admin

一、面试阿里巴巴java研发工程师需要哪些能力

计算机原理,数据结构,算法,这是最基础的。

二、高分求阿里巴巴面试问题、技巧、经验

面试不要想的太复杂

我面试过很多单位成功率都很高,我有朋友是做人事工作的,告诉你几点要求

1.面似的工作要适合你

2.一般会先是人事面试,然后主管或经理面试

3.第1个问题是自我介绍,如果你用英语是最好的,因为英语介绍或者交流是比较难的.说明你敢于挑战,在很多面似的人中你可以从中突显你.或给面试的人很好的影响

4.接着会问你些无关工作的问题,比如你为什么选择我们单位,为什么离开原来的单位等问题,或者问你平时的生活习惯.这些你要准备好.人事只要是问这些

5.经理主要问些关于他需要的岗位你能不能胜任.问题不会太复杂,会问你以前做过什么.你对他需要的岗位的知识会问你点.

6.你要围绕他招聘的要求来表达自己的想法

7.一个大公司很注重团队精神,也要求个人的追求精神.在面试中你要表达出来

8.最后告诉你下,如果在面试中20%的时间是面试官在说,而80%的时间是你在表述的话你的面试就成功了.不能他问什么你就回答什么,比如你对他们公司了解吗,你不能回答单单的了解,你要扩展开来多表述自己的开发.这个很重要,不然面试气份会很沉闷

三、作为一个应届生程序员,我是怎么通过阿里的三轮面试的

首先,自我介绍。

我:“我做过两个项目。写过几篇论文和专利。还参加过阿里巴巴大数据竞赛。同时,出于个人兴趣,我还阅读了一下HDFS的少部分源码,理解了一下HDFS的核心思想,实现了一个功能非常简单,并且还不完善的HDFS。”

面试官1:“说一说你写的论文中的某一篇的创新点?”

我:“我写的文章或者专利,主要遵循一个原则:将已有的理论或者模型应用到新的场景中。所以,都是偏向应用的。重点说说这篇论文吧。首先,从奇异值分解说起吧……”

大概讲了几分钟后,面试官1打断我:“你做的这些东西都偏向数据挖掘方向,为什么没有投数据挖掘呢?”

我:“因为,按照我的理解,数据挖掘这个岗位需要对机器学习算法有深入研究,然而,我做的偏向于对数据挖掘算法的应用。所以,我想投研发,偏向数据挖掘和分布式方向,从基础做起。”

面试官1:“其实,你的优势是做过数据挖掘。这样吧,我先找一个数据研发的面试官对你进行一下面试。等会儿,你再来我这。”

虽然自己也系统地学习过机器学习算法,但是接触时间太短(几个月),研究不够深入,只在比赛中用过少数几种算法:LR、RF和GBRT。自己的优势在于对数据的理解和特征的提取,以及算法的应用。

而算法推导过程并不清楚,只是理解了其思想。我怕被问得太细致,所以不是很情愿。不过,在面试官1的坚持下,最终还是同意了。

看到第二个面试官的牌子上写着“数据研发”,我稍微舒了口气;幸好不是“数据挖掘”。

今年,“数据研发”岗位招人挺多的,很多都是去小微金服。面试完之后,我觉得“数据研发”的岗位要求是这样子的:

熟练掌握基本的SQL语句;因为有一道笔试题目。我觉得阿里应该用自己的ODPS-SQL(类似于Hive)进行数据研发,虽然这个平台挺复杂的,但是面试的时候的要求并不高。只要掌握基本的内建函数和SQL语句就行了:select, group by…

我在比赛过程中,写过几万行SQL代码(去重之后几千行),没有用到过索引和视图;经常用到内建函数,偶尔使用UDF(用户自定义函数)。但是,写的代码不包含索引、视图和UDF。也没有考优化(其实我也不懂)。

有数据研发方面的相关经历,面试官似乎很注重这一项。我参加过阿里巴巴大数据竞赛。

对数据研发有一些自己的看法。这个很关键,一定要思路清晰。我主要在讲比赛中的模型:数据的预处理->训练集、预测集->特征提取->进一步处理->正负样本比例->训练->预测。

当然会用写MapReduce的话就过更好了。阿里的平台提供了MapReduce,估计工作中会用到。

然后,跟第二个技术面试官开始交流。

面试官2:“自我介绍一下吧。”

我:“刚才介绍过其他经历了。那我主要介绍下与数据研发相关的经历吧。”然后,简单说了下自己参加的阿里巴巴大数据竞赛。

面试官2:“行。先做一道题目吧。”

面试官给了我一道SQL的题目:给定一个表,共四列:user_id, brand_id, time, cnt(花的钱数)。从这个表里面选出用户B对每个品牌brand购买的总额度。

一看到,有点窃喜,这跟我竞赛做的东西太相似了。

跟面试官进行简单沟通后,很快写出来了。不过还是怕做错,检查了很久才拿给面试官2。顺便提了一下,如果需要处理字符串的话,我会用ODPS-SQL里面的UDF。面试官看了下程序,没说什么,就放到了一边。

后面,我们主要在讨论阿里巴巴大数据竞赛:我做了什么,用什么模型、算法做的,准确率是多少。(这块讨论时间最多)

还好,我主要讨论的是对业务和数据的理解,没有深入讨论数据挖掘算法。

讨论很顺利。结束之后,面试官2把我带回面试官1。

回来后,继续与面试官1主要讨论我写的论文。由于之前对自己写的论文进行过总结,思路很清晰。并谈论了写论文的体会和收获。

总之,第一面的面试官很和蔼,交谈也很开心。

再次稍微提一下:个人觉得面试官主要有两类,一类是用技术把你问死,从而判断你对技术的掌握深度。

另一类是,简单的技术问题之后,让你去表现,引导你来讲,从而看你这个人的思想、表达能力、个人观点等综合素质。

当然,一个面试官如果看到你不善于表达,就只能一直问你问题了。很荣幸,我碰到的是第二种面试官。面试跟聊天一样轻松。

最终,顺利通过。

应该是这个样子的吧 哈哈【ITjob]