阿里巴巴招聘技术岗位的流程:
依次进行三轮面试:初面、复面、以及hr面。
每通过一轮即可进入下一轮,三轮全过即为通过。
扩展资料
面试技巧
招聘中的“经典七问”
招聘过程中常要问到的问题极其释义总结如下:
以往工作中您的职责是什么?――如果描述不清,可见即使有相关工作经验,其系统性全面性也值得怀疑。
请讲一下您以往的工作经历。――考察应聘者的语言组织及表达能力,以及描述的条理化。
您以往的工作经历中最得意最成功的一件事是什么?您的长处是什么?――从应聘者的回答中,可了解他是注重个人成功还是注重团队协作。
您感觉还有哪方面的知识、技能或能力需要提升?――“提升”一词比较委婉,一方面考察其态度是否坦诚,另一方面,也为日后的员工培训增强针对性。
对于新的工作岗位您有什么设想?如何开展工作?――这涉及到员工的职业生涯设计,更有关员工工作的稳定性。
您离职的原因是什么?――这是必须要问的问题,涉及员工和组织的融合性。
您对薪金待遇和福利有什么要求?――这个问题的重要性更是不必多言。
参考资料来源:百度百科:招聘
2024-11-19 广告
阿里巴巴招聘技术岗位的流程:
依次进行三轮面试:
初面、复面、以及hr面
每通过一轮即可进入下一轮,三轮全过即为通过。
扩展资料:
阿里巴巴面试问题集锦:
1、微信红包怎么实现。
2、海量数据分析。
3、测试职位问的线程安全和非线程安全。
4、HTTP2.0、thrift。
5、面试电话沟通可能先让自我介绍。
6、分布式事务一致性。
7、nio的底层实现。
8、jvm基础是必问的,jvm GC原理,JVM怎么回收内存。
9、Java是什么。
10、API接口与SDI接口的区别(API是提供给别人的接口)。
11、dubbo如何一条链接并发多个调用。Dubbo的原理,序列化相关问题。
12、用过哪些中间件。
13、做过工作流引擎没有。
14、以前的工作经历,自己觉得出彩的地方
15、线程池的一些原理,锁的机制升降级
16、从系统层面考虑,分布式从哪些纬度考虑
17、Hadoop底层怎么实现
18、threadLocal,线程池,hashMap/hashTable/coccurentHashMap等
19、秒杀系统的设计
20、虚拟机,IO相关知识点
21、Linux的命令
22、一个整形数组,给定一个数,在数组中找出两个数的和等于这个数,并打印出来,我写的时间复杂度高,要求O(n)。
23、n个整数,找出连续的m个数加和是最大。
24、更重视开源技术
25、数据库锁隐原理
26、1000个线程同时运行,怎么防止不卡
27、并列的并发消费问题
28、高并发量大的话怎么处理热点,数据等
29、如何获取一个本地服务器上可用的端口
30、流量控制相关问题
阿里HR面试时的核心问题:
1、你为什么离职?
2、你怎么看待自己的职涯?
(包括工作和家庭的分配,怎么平衡家庭和工作的关系、加班、选择一家公司时的考量、location等)
3、薪资期望
(不要直接说数,绝不能表现出没到多少钱或者什么层级我就不去,这是味道问题不是能力问题)
注意事项:
1、阿里比绝大部分公司更看重情怀和梦想
阿里的八字箴言:乐观、聪明、皮实、自省
2、阿里里面的HR都是懂业务的,会结合对候选人的判断和业务的把控进行筛选,不要忽悠他们。
也算借您的地盘说说我心中的阿里巴巴工作。
阿里巴巴是我见过的最有团队意识的公司了。如果你够聪明,够勤奋,够运气(这只是小部分),而且手里能有一万元左右的启动资金。你就来试试吧。你的付出跟收入会成正比。但是目前形势不太好,因为服务费要涨价。11年会是转折点,熬过去的12年就可能小发一笔,熬不住的估计要亏本。
呵呵,很男人的工作啦。真的很开眼,很长见识。在阿里巴巴工作,智商跟情商都要高的。做得好的每月光扣税都好几万啦。而且好多都是女孩子。但是不要误解他们,阿里巴巴的销售,是绝不会陪老板出去应酬的,因为是高压线,会开除的。靠的全是能力。
不过,压力是很大很大的。他们几乎晚上10点钟之前没有能回家休息的。都是自觉整理客户的。现在是22:23分,我老公还没回来呢,呵呵。都这样。
很好的锻炼机会啦。如果你想成长的更快。就来阿里巴巴试试吧。哦,提醒你一句,南方市场比北方市场好做。也就是说你应聘的区域在哪就会分配到哪。真要是想进阿里,但是面试不成功,你再留言给我,我让他们内部推荐。
加油~~~~~我欣赏这份爷们的工作!
刚看明白问题:岗前培训是24天左右,在杭州总部。包吃包住包来回车票。这是阿里最值得珍惜的一段时间。据说比大学时还生离死别的,呵呵。
复制答案有意思吗
人事部规定,事业单位岗位分为管理岗位、专业技术岗位和工勤技能岗位三种类别。专业技术岗位指从事专业技术工作,具有相应专业技术水平和能力要求的工作岗位,这一岗位的设置要符合专业技术工作的规律和特点,适应发展社会公益事业与提高专业水平的需要。
面试技术岗位一般需要三轮面试。具体如下:
第一轮面试
首先是自我介绍:
我说自己是XXX 学校XXX 专业的学生,以前主要做Java 方向的东西,主要的项目经验在
Web 的服务端上,然后有过一些项目经验。好像就说了这一句话,然后我的自我介绍就完
了。说和没说一样.其实自我介绍作用不是很大,就是为了暖暖场,不至于让你很紧张,自我放松就好了。
下面就是面试官开始发问了:
问:你知道HashMap 和HashTable 吧,给我介绍介绍他们俩的区别。
答:HashMap 的key 允许null,而HashTable 不允许。HashTable 是线程安全的,
HashMap 不是线程安全的。
问:那你给我说一下HashMap 是怎么实现的吧。
答:首先是Hash 算法,HashMap 其实本质里面是一个数组,初始化长度为16.然后你
调用Map 的put 方法,它根据你的Key 调用key 对应的hashcode 方法计算出
来hashcode ,然后根据映射关系,将hashcode 的数值对应到数组的下标上。也就是说hash 值就是他的数组的存储位置。如果出现hash 冲突,那么就顺延到下
一个位置,看看是不是空余的。以此类推。对于key 重复的情况下,他的value
是会被覆盖的。
问:如果我想在多线程下使用HashMap 怎么办?
答:可以使用ConcurrentHashMap.它允许多个修改操作并发进行,关键在于使用了
锁分离技术。它使用了多个锁来控制对hash 表的不同修改部分进行修改。
ConcurrentHashMap 内部使用段(Segment)表示这些不同的部分,每个段其
实就是一个小的hashtable,它们都有自己的锁,只要多个操作发生在不同的段
上,它们就可以并行的进行。
问:我在初始化HashMap 的时候,需要指定他的长度吗?
答:可以指定,也可以不指定。不指定默认长度为16.但是如果put 的的数目超过12的
时候,就会触发resize 操作。resize 的操作代价是非常高昂的,不仅需要扩容,
而且以前的key 都需要重新计算hash 保证散列的均匀性。这样频繁的resize 对
性能影响很大。
问:你知道Java 多态有几种表现形式吗?
答: 一种是覆盖,一种就是同样的方法名但是参数不同。举一个例子吧, 比如
Listlist = new ArrayList();因为ArrayList 是List 接口的实现
类,那么向上转型成为List 之后,如果我再有一个Listlist = new
LinkedList();,那么我在调用list.get 方法的时候,他就会根据具体的你
的实现类去调用对应的ArrayList 的get 方法或者LinkedList 的get 方法。
问:那这种多态是怎么实现的呢?
答:我觉得应该是动态方法绑定。在你初始化new 的时候,到底对应于什么类,是在
JVM 运行的时候才指定的。(PS:其实这里我很虚,这个问题知识听说过,但是没
仔细想过,在面试的时候只能这样含糊其辞,面试官应该也听出来了,就没有细
问)
问:既然聊到JVM 了,那么咱们说一下,你对JVM 的了解
答:首先JVM 分为堆区和栈区,还有方法区和PC 等,但是主要的就是堆和栈。我们
所有初始化的对象都是放在堆里面。堆分为新生代和老生代,初始化的对象都在新
生代的Eden 区域,当经过一次或多次GC 后,存活下来的对象会被移动到老年区。当JVM 内存不够用的时候,会触发Full GC,清理JVM 的老年区。
问:那你说说JVM 里面不同代的垃圾清理策略
答:对于新生代,当进行GC 的时候,HotSpot 一般是将存活的对象放到新生代和
Survive 区,新生代一共两个Survive 区。先把存活的对象放到其中一个Survice
区,然后进行垃圾清理。因为如果仅仅清理需要删除的对象,这样会导致内存碎
片,因此一般会把Eden 进行完全的清理,然后整理内存。那么下次GC 的时候,
就会使用下一个Survive,这样循环使用。如果有特别大的对象,新生代放不下,
就会使用老年代的担保,直接放到老年代里面。
问:你都知道什么垃圾清理器
答:我知道一个普通的叫CMS,好像叫并行标记清理。貌似现在JDK8正在使用一种新
的,G1垃圾清理器,听说很牛逼。毕竟叫Garbage First 嘛。好像G1在stop the
world 方面要比CMS 好很多。
问:你说说什么叫stop the world
答:当JVM 在需要清理垃圾的时候,他需要先标记需要清理的垃圾,在标记完成清理
的时候,这时候JVM 是不能创建新的或者使用对象的,因为这样会导致原来标记
的垃圾发生变化,因此这里进行GC 清理的时候,除了垃圾回收其他什么都不动,
好像整个JVM 都停止了,这叫Stop the world。
问:你说说JVM 是怎么判断一个对象是不是垃圾的
答:一般会采用引用计数标记法。就是一旦一个对象有其他的对象去引用他,就给他得
引用数加一,当一个对象引用技术为0的时候,那么就该清理了。这样带来的一个
问题就是,比如A 对象引用B 对象,B 对象引用A 对象,没有其他的对象引用他
们,那么使用上面那么办法就不能清理A,B,但是他们确实已经是垃圾了。现在
使用GC Root,从所有对象的根,root 开始遍历,只要都在引用树上的对象都是
有效对象,不能被遍历到的就是垃圾,这样就能解决刚才说道的A,B 对象互相引
用的问题了。
问:讲一讲你做的项目吧,我看你简历上貌似写了一个XXX 平台的开发,你给我说说
架构吧
答:首先这个平台使用Spring 作为整个模块的流程控制,使用Spring mvc 实现
Restful 风格的API。然后对于数据访问层,使用Mybatis 作为Dao 层的框架。
由于网页的首页查看次数非常多,很多数据都是反复的从数据库中获取,这样每一
个用户都发一次SQL,效率很低,因此我引用了Memcached 作为缓存层。将最
常展示的信息放到memcache 上,这样每次查询直接从memcache 上获取就
OK 了,这样就是从内存中获取数据了,非常快捷。
问:你给我讲讲Spring IOC 的原理吧
答:一般使用Spring 都会配置一个Spring.xml,在那里面声明需要被管理的类。比如
类似那么,我通过解析xml,获取对应的bean
class,然后使用Class.forName(class),就可以根据类名把对应的类初始化为对
象,然后使用类似@autoWired 这样的标签把spring 容器里面的对象赋值给对应
的class。
问:那你知道AOP 吗
答:切面编程嘛。就是类似在执行一个方法前,动态的指定执行另外的一个方法,然后
或者在之后再执行一个方法。类似于Junit 里面的@before 和@after。
问:你知道Java 里面怎么实现的吗
答:可以使用Proxy 这个类的newInstance 方法,里面实现InnovationHandler 这个
方法,在method 里面调用invoke 方法,然后在这个之前执行你想执行的代码,
就OK 了。
问:给我讲讲Java 里面类的初始化过程吧。
答:一个类,首先初始化它里面生命的private static 的属性,然后执行对应的static
静态代码块,然后初始化private 里面的属性,再执行构造函数。然后就OK 了
问:对方笑盈盈的问我,父类呢?
答:我恍然大悟,抱歉抱歉,说懵了。忘了父类的,执行构造函数的时候,先初始化他
的父类,如果父类还有父类就继续向上,直到Object。
面试官:最重要的问题差点让你漏了。(对方貌似很嗨皮)
面试了那么长时间,终于快要结束了。
对方让我问他问题。
我问你们那边空气怎么样,是不是比北京要好得多。
对方一阵苦笑,说杭州天气也一般般,然后说差不多都这样,我就呵呵了。然后对方问我啥
时候可以去实习,我说得暑假可以吗,对方说没问题,然后就结束了第一轮漫长的面试,时
长55分钟。
第二轮面试
2018/8/28
第一轮是下午2点半开始,然后经过了一番洗礼,口干舌燥的我回宿舍小憩一下,直到五点
起床准备去吃饭,正当我在食堂刚点完小炒,吃了没一半,又来一个0755的电话,我满嘴
米饭的接电话,对方还问我,现在方便接电话吗。我说正吃饭呢,他呵呵笑了一下,说他还没吃。
然后说他接到同事给他发过来的简历,对我进行第二轮面试。
我当时心里想,这也太
迅速了,还没歇过来呢。
首先还是千篇一律的个人介绍,这里我就不写了,还是我那经典的一句话介绍。
然后就是问你项目经验。我还是在那里介绍我原来的那个XXX 平台的架构,算是又重复了
一遍吧。
然后这个哥们又问了我Spring 的IOC 原理和APO 原理,几乎和第一轮的哥们问
的差不多,我很无奈。重复N 遍。
又经Spring 聊到了JVM,然后就JVM 的那一堆内存分配和内存管理和回收又扯了一遍。
重头戏来了,经过我的项目介绍,他听说用了memcache,然后就问我,你的memcache
使用了几个集群,分别是怎么管理的。
我当时就懵了,因为我用的memcache 就是单节点啊,一个节点能用还不行啊,怎么那么
复杂啦。然后我就实话实说,根本没有什么集群,就是一个简单的节点,然后那哥们不依不
饶,说,你知道memcache 集群的hash 一致性是怎么回事吗。
还真别说,虽然我没有配置过集群,但是hash 一致性我是真看过啊。当年为了吹牛逼可没
少费劲啊。
然后我就说,hash 一致性就是为了保证每次set 到memcache 里面的数据在需
要get 的时候能从正确的对应节点拿出来。然后一个好的hash 一致性算法是能保证各个节
点的存储的数据是平衡的,不会出现一个节点存储的数据非常多而其他的数据存储的非常少
的情况。
然后那哥们说,你知道memcahche 当内存满了以后,怎么处理吗?
使用LRU 算法,就是那个响当当的最近最不常使用算法。当内存满的时候,就把最近最不
常使用的数据从内存中移动出去,给新来的数据腾出来空间,That's all。
那你比较一下memcache 和redis 的区别吧。
memcache 仅仅是将数据存放在内存中,而redis 是可以写入到磁盘的。当掉电的时候,
memcache 的存储数据是全部丢失的,而redis 因为是写入到磁盘的,所以可以掉电不丢
失数据。
还有redis 里面有内置的数据结构,比如list 啦map 啦等等,可以很方便的使用
默认的数据结构进行数据的管理插入啥玩意的。特别是在实现消息队列的时候特别爽,能很
好的将数据库的IO 延迟写。
你说说MongoDB 和Mysql 有啥区别?
MongoDB 是非关系形数据,而Mysql 是关系型数据库。我个人目前写项目的时候非常喜
欢非关系型数据库,因为比如当在开发中你的数据结构发生变化的时候,非关系型数据库可
以非常方便的修改attribute 而关系型数据库就得修改表结构,那么以前的数据都会成为脏
数据,非常的悲剧。
而且对于多对多的关系类型,使用非关系型数据库,逻辑会非常简单,
当然数据会有一些冗余。
然后那个哥们说,你身在北京为啥想要去杭州呢?
我说杭州空气好啊,美女多啊,北京压力大啊,混不下去啊,我期望小桥流水啊,巴拉巴
拉。那哥们冷冷一笑说,OK,保持手机畅通,拜拜。
第三轮面试
2015.3.16
不知道为啥,研发的面试需要四轮电面,我面试测试的童鞋三轮就HR 了,看
样子研发果然待遇更牛逼啊。苦苦等了将近一个周,当我正在地铁上准备去市里逍遥的时
候,0755又来电话了,问我要了QQ 号说晚上五点面试。挂了电话后,我那个忐忑啊,给
QQ 号啥意思,分明就是要视频面试啊,会不会让我当面打开Eclipse 写算法啊,完了完了
完了。
我算法可是一坨渣渣啊。当时想放弃的心都有了。哪一个下午是我最难熬的下午,我
在那里复习DFS,BFS,什么快排,又在那里看Leetcode 的题目,乱七八糟看了不少但是
估计都没记住,心想反正挂了就挂了吧。等到五点多打开QQ 开始面试的时候,起初又是,
自我介绍,这里就略过了。
然后看你在XXX 公司实习过,你给我讲讲你们公司的架构。
因为当时去的是一家手游公司,我就在那里说,客户端和服务端是通过Mina 进行消息通
信,然后后台通过比特字节流获得了信息后解析,然后通过消息号传递给对应的Handler
处理,Hnadler 在调用service 处理,所有的人物信息都最终放在了MongoDB 里面,然
后一些游戏的配置信息是在Mysql 里面。
2018/8/28 面试阿里巴巴技术开发岗位是什么样的流程?
为啥使用Mongo 啊?
游戏经常有各种活动,说不定就得出来一个什么新玩意,使用MongoDB 可以随心所欲的
增加attribute,怎一个爽字了得。关系型数据库一般分表,一次分100个表,根据游戏ID
号进行存储。
你给我讲讲你在公司做过的最难的一个技术点吧。
这里涉及公司具体业务逻辑就不说了。
你再给我说说你为啥从那个公司走了?
我说我要去读研究生啊,很无奈的眼神,对方也觉得,这个问题好像很脑残。
又来了一个高频问题,为啥来杭州啊?
我就不说了,不过这个面试官给我用视频看了看杭州外面的天气,感觉确实是灰蒙蒙的。
然后那个们问我啥时候去,阿里楼下有一家不错的小龙虾店,啥时候去,他请客吃饭。
第三轮就这样完了,无语。我还以为得写算法呢,Eclipse 都打开了,吓尿了。结果最后就
是聊天说实习啊,那为啥用QQ 啊,百思不得其解啊。
不过这好像也说明了,实习貌似还是
非常有用的。
第四轮HR 面
这里就不讲了,就是聊天,智商不差就行。
OK,到此为止全部的面试经历就说完了,上面有很多问题都是我自己回答的原话,可能有
一些回答的并不是很正确,希望大家能自己搜索到正确答案查缺补漏。
扩展资料:
阿里巴巴面试题:
面试的题目分了四个部分JAVA、网络、数据库和Android相关。
JAVA
举例说明多态和重载区别
2. 堆栈
3. 垃圾回收
4. Final,finally,finalize
5. 序列化反序列化,为什么要有自定义序列化
6. Java的灵活性体现在什么机制上
7. Jdk1.5到1.7有什么新特性
8. 排序算法
9. 无序数组ab,每个数组有一次循环遍历的机会,找出a有b没有的数字(不能使用外部东西)
10. Hashtable和hashmap
11. Hashcode是怎么得到的
12. 线程和进程
13. Sleep和wait区别
14. 二叉平衡树,满二叉树
15. Object有哪些基本的方法
16. Io和nio
17. 写一个单例模式的例子
18. Socket
19. Exception
20. 有向图和无向图什么区别
21. Linux基本命令
22. 数组和链表
23. 深克隆,浅克隆
24. Java的引用类型有哪些,在垃圾回收的时候有什么表现
参考资料:百度百科_阿里巴巴