【笔试】
拿到是JAVA研发工程师基础笔试题,总体感觉是针对应届毕业生,考题比较基础但面比较宽泛。大致记录如下:
1.一个部门1/2为系统工程师,2/5为软件工程师,1/4两者都是,那么两者都不是的比例? ---集合覆盖
2.某设计运动员射击10次,总中90环,如果每次射击为0-10环,列出其成绩所有可能值的表达式。---缺失的10环的10次分配
3.高度为h的满树其总结点数为?中序遍历为? ---树
4.针对10,100,32,45,58,126,3,29,200,400,0利用除商留余法构造存于长度为13的数据的HASH。 ---实在不会
5.简述进程与线程的区别。 ---"本质的区别在于每个进程有它自己的变量的完备集,线程则共享相同的数据"
6.简述网络三次握手的过程。---网络基础
7.关于ICMP的特性。
8.根据子网掩码判断已知的IP地址是否在当前子网内。
9.Linux系统开启新进程的命令?进程间通信的方法。
10. shell编程。
11.仅仅提交更新部分的数据而不是全部数据违反了数据库的什么规则? ---数据库
12.第一范式的特性。
13.增加数据表一列的SQL语法。
14.非主键索引为什么能提高搜索效率但会降低更新效率?
15.编写代码将任一字符串按照某子串进行分割,并将处理后的内容反向输出。例如"A B C",按照" "分割,最终输出"C B A" ---考察得基础而全面,设计API,正则,StringBuilder等内容
16.编写代码删除某文件目录下的所有子目录和文件,并输出目录的名字,路径以及文件的内容。 ---同样是对文件系统API及异常的考察
17.
int x = 999; int countx = 0; while(x){ countx++; x=x&(x-1); } return countx;
---countx最终返回什么内容?
18.列举平常经常浏览的网站以及关注的技术。
19.简述三年的职业规划。
【面试】
前面的笔试已经看出多是考察的基本功,针对社招的有经验者面试官除了扫一遍考题外主要注重以往做过什么项目,用过什么技术,担当什么样的角色,是否积累了相关行业的从业经验。个人感觉人人比较看重求职者的综合素质和技能,最好什么都会并对互联网行业工作性质比较适应这样基本就能进门了,如果再对分布式、缓存与服务器集群,负载均衡有实践经验就有资本要价了。如果通过了技术面试官的筛选,接下来更高级别的面试官主要对个人未来的职业规划比较关注,他们希望了解求职者对互联网、SNS、人人网有怎么样的认知并相对性地有怎样的职业规划,这一般需要互联网行业的实际工作经验才能回答好,我就是因为缺乏对互联网行业的认知所以回答的不很到位,比较可惜。
【其他】
实话实说千橡的办公环境、休息区都还是挺不错的,和不同级别的面试官聊后也感觉工作氛围是比较开放的,唯一不能避免的就是行业造成的加班(不过通常也不严重,平均7点半)。特别要说的是面试作为一场博弈有不少细节还是要注意,求职者与面试官其实都是为了同一个目的坐在一起,所以交谈中会不由自主地往对方靠,比较显而易见的例子就是面试官对求职者的启发,同时面试官也是普通的人,细心的求职者可以通过所掌握的信息迎合他的喜好,这点不好多说,总之就是要做到细心观察、多交互、恰当应对。