博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
人人网面试经历
阅读量:6176 次
发布时间:2019-06-21

本文共 3940 字,大约阅读时间需要 13 分钟。

对于一年开发经验的程序员来说是非常尴尬的,经过一个月的面试总结,也快入职心仪的公司了,差不多算是敲定了工作。所以想到陆续的放出一些互联网公司的面试经验来,虽然面不上,但是可提供给别人参阅,以便你们遇到类似或者同一家的公司能够见招拆招!

首先需要说明的是,我能够去人人网面试是通过一家外派公司作为中介才去的。这家外派公司叫做:北京银河创想信息技术有限公司,在智联投递的简历,那边的HR打电话通知我周三上午去面试,去之前我百度了这家公司,搜索引擎给的结果是这家公司与“培训机构”、“不正规”等字样联系起来,当时我心是悬的。不过想到不如虎穴焉得虎子,于是就去了。我暂且把银河创想的面试过程称为一面吧!

一面

进了公司之后,看到里面已经来了好几个来面试的人,递交简历之后被安排到一台笔记本面前,总共有五道题目,不准百度,不能交头接耳。他们有一套自己的评分方式,有自己的输入输入用例,有点像OJ题目,限时30分钟。判分60分以上就能进入面试,不及格就不能进入面试,只好走人。

五道题分别如下:

1.结合金融业务,实现转账过程,从账户A转到账户B,注意金额不能为负数。

public class User{    private String name;    private int blance;        //getter/setter方法}

这道题要做的几现实它的一个计算方法,上面提供了JavaBean,题目代码貌似如下:

/**     *      * @param blanceFrom 借贷人     * @param blanceTo 借款人     * @param blance 借款金额     */    public static void execute(User blanceFrom, User blanceTo, int blance) {            }

这道题不难,需要注意的是判断空指针异常和blance非负数,所以这里我就不提供参考代码了。

2.回文数问题。我感觉这道题描述有问题,按照我的理解是写一算法判断是否为回文数。但是题目却说比如1221,1234321等都不是回文数,我一脸蒙逼,问面试官是不是题目描述错误了。面试官十分肯定的回答我:题目没有错,会做就做,不会做的可以跳过。
本题我直接跳过,不过我解题思路是先把原字数赋值到新的变量,不断的对原来的数字对10取余,然后数字本身除以10,直到该数为0为止。

public boolean isHuiWen(int number) {        int oldNumber = number;        int newNumber = 0;        while(number != 0) {            newNumber = newNumber*10 + number%10;            number /= 10;        }        if(oldNumber == newNumber) {            return true;        }        return false;    }

3.统计句子中每个单词出现的次数。比如如下句子中

Java this is a Java Hello World Thank you

本句子中,各单词出现次数如下:

"Java"出现2次

“this”出现1次
“is”出现1次
“a”出现1次
“Hello”出现1次
“World”出现1次
“Thank”出现1次
“you”出现1次

空格不进入统计里边。这道题用Map的数据结构来做最适合,Map是一种key-value的数据结构。首先用正则表达式将句子切割成String数组,然后遍历这个数组把第i个元素的值作为Map的key,出现次数作为value,当第一次存入key时value等于1,否则value+1。

public Map
wordCount(String sentence) { String[] strs = sentence.split("\\s+"); Map
wordMap = new HashMap
(); for(int i = 0; i < strs.length; i++) { if(wordMap.get(strs[i]) == null) { wordMap.put(strs[i], 1); } else { wordMap.put(strs[i], wordMap.get(strs[i])+1); } } return wordMap; }

4.将阿拉伯字母转为汉字。比如123转为一百二十三。

这道题当时做不出来,以前见过次题,不过没有看别人是怎么解决的,所以这里贴出别人的博客地址:
5.这道题赞记不起来了。

总共五道题目,当时四道题有思路,包括忘记的第二题。只有第4题阿拉伯数字转汉字做不出来,半个小时到的时候,面试官过来问我做的怎么样了,我说“差不多了”。她运行了一下测试用例,52分。有一些额空指针异常和有些案例没有通过,她说可以给我延时,再调试一下程序。在调试的过程中,有些哥们也提交了答案,其中两个哥们就喊直接走人。经过10多分的修改,面试官再次来问我结果,她再次运行测试用例,刚好60分

就这样进入了面试,面试主要问我上一家为什么离职,期待薪资,有没有女朋友,她在哪里工作之类的话题。在面试过程中,我好奇的问面试官,为什么回文数那个例子说给的例子是非回文数?我记得以前在学校学编程的时候,教科书的回文数概念就是那些数字啊!

面试官:它指的的案例自己定义的那些是非回文数!

我一脸疑问,想想也许面试官也不懂技术!所以也别再纠缠了。这时候面试官提出了最关键的问题:我们外派到其他办公地点办公,这点你接受的了么?

我:外派到北京还是外地?那么工资之类的是哪家公司发?...

从面试官那得到的答案是:外派到北京本地,薪资由银河创想结算。一般都会有开发任务的,就算没有开发项目了,他们会喊我回来总部,有五险一金!

虽然在网上听到外派各种门道多,但是没办法,先口头答应吧!

二面

就这样我顺利进入到二面。刚面完回来的路上,接到一家事业单位的面试通知。虽然是事业单位,但确实合同编制。我在微信跟银河创想HR说能不能把二面推到周四,因为周三另有安排,HR不回复,心里没底,而且当时HR没有说外派到人人网,所以心里对二面期待不高。

周三早上去了中关村人才市场,冷冷清清。下午去那家事业单位面。周三整天都没收到银河创想HR发来的面试安排,我不知道她有没有同一周四再去面。反正周四我也有两家公司面试安排,坐地铁去面试的路上,刚下地铁。微信收到银河创想HR发来的信息,说:今天下午去人人网那面试,把地址和前台号码都发过来给我。她再三叮嘱:一定要我们帮你改过之后的简历,不要之前的简历,我心里有很是奇怪。
那时候已经是午间10点多,太阳正火辣呢,我得找家打印店看看。简历打印出来了,我终于知道为什么他们强调要上交他们修改过后的简历了。因为这份简历是经过包装之后的。首先把我的年龄缩小了2岁,再次把我的毕业时间提前一年,只有一年工作经验的我瞬间有了两年的工作经验!
心想:这样不会被戳穿么?
微信问HR,HR说没关系的。心想也对,方正我是外派过去的,又不是人人网雇佣的我,没有和人人网发生劳务关系,简历造假应该没什么问题的!
人人网办公大厦

面试地点是在朝阳区酒仙桥分公司。首先填写信息表,其次给出一张逻辑思维题目,题目如图,在该图的基础上沿上下左右延展,不准修改本图的基本架构,画过之后不准涂改,时间限制为12分钟。

逻辑思维题

写完个人信息,上交了思维题目的答案之后,面试官出来了。原本预约2点的,见我来的早了,面试官还是有点意外的。自我介绍之后,接着是如下的技术面试:

  1. 集合框架了解么?HashMap和Hashtable的区别?
  2. HashMap实现原理?Hashtable线程安全是怎么现实的?
  3. 能讲讲HashMap的put()操作过程么?
  4. Spring中Bean的生命周期
  5. Spring如何管理事务的?
  6. Service层是单例还是多例的?是线程安全的么?如果要做成多例的如何实现?
  7. 事务的传播性,数据库的隔离级别?
  8. static可以被继承么?static在哪里地方会用到?
  9. ArrayList和LinkedList的区别,为什么说ArrayList是线程安全的?
  10. 如何配置服务器(tomcat)的内存大小?
  11. 说一说Servlet实现的接口?
  12. 项目中常用的设计模式有哪些?写一个单例模式?

上诉的技术面当时答的不是特别好,有点自认为答的可以,有的答的不好,尤其是HashMap的底层不太熟悉很让自己吃亏。但是回来都做过一番温习。本来想写一写这些题目的解析的,但是把这个任务跑给读者去做吧!

面了几家的互联网公司,首先互联网薪资高,但是技术要求也高。比如他们都比较偏向于问基础。啥是基础?就是数据结构和算法,Java集合框架的实现原理等等。即使问到框架,也问的很深层次的东西。

转载于:https://www.cnblogs.com/shizongger/p/6947313.html

你可能感兴趣的文章
mysql--用脚本实现分库分表备份
查看>>
dig挖出DNS的秘密
查看>>
sphinx 增量索引 分布式索引 实例
查看>>
InnoDB Plugin1.0.7的新特性【快速恢复】
查看>>
***iOS 项目的目录结构能看出你的开发经验
查看>>
iptables中state模块的连接状态
查看>>
/usr/local/lib/libltdl.a(ltdl.o): could not read symbols: Bad value
查看>>
秘籍:如何用廉价硬件玩转深度学习,成本不到1000美元
查看>>
nagios(或icinga)将多个主机放到一个组内步骤
查看>>
mybatis-config学习
查看>>
编译安装Nginx实现网络访问多虚拟主机(wordpress+phpmyadmin)
查看>>
Windows 2012 Hyper –V 3.0 New Functions
查看>>
Interpreting an ESX/ESXi host purple diagnostic screen (1004250)
查看>>
linux shell 不同进制数据转换(二进制,八进制,十六进制,base64)
查看>>
源码安装MySQL 5.1 GA
查看>>
苹果电脑获取Android Studio的发布版SHA1和开发版SHA1
查看>>
How to troubleshooting RAC Vip Problem
查看>>
jar 命令 打包装class文件的文件夹
查看>>
CentOS 7.2 部署Saltstack
查看>>
centos7下安装MPlayer
查看>>