技术渣渣的面经
先说一下个人的教育背景吧,坐标武汉地区,师范类院校渣硕一枚,专业属于教育学,本科是二本师范类院校,成为研究生之后,才决定进入 it 行业,成为一名程序媛,期间跟着导师做一些教育软件的研发。
15 年 8 月份正式学习安卓,期间才开始补 java 知识(之前并不了解,连面向对象是什么意思都说不出来),数据库知识,数据结构等等一系列的, 16 年 4 月份的时候跟风找实习,当时并没有复习任何知识,投了 bat 三家公司,过了一段时间收到了腾讯的面试通知,这是我收到的第一个面试通知,当时非常开心,仍然是什么都没准备就去面试了。一面面试官看到了我的简历后只问了我一些项目相关的问题,我觉得答的挺好,但是还是挂了。五一前后,华科举办了一个比较大的招聘会,就在同学的“怂恿”下投递了一些简历,第二天收到了其中一家的面试短信,这是一家刚刚创业的公司,里面都没有几个员工,本以为应没什么问题,结果面试被问道一些极为简单的问题时居然都答不出来,最终还是挂掉了,这件事之后,才认识到自己是多么浅薄。后来就开始接触到牛客网,在牛客网上开始刷题,狂补各种知识,看各种资源视频,一段时间后终于有了一定成效,我记得一开始做牛客网上的题目时,一套题目几乎就只能得 10 、 20 分,后来不断提升后终于可以把分数提高到 50 、 60 分了。但是我并没有怎刷编程题,以至于我的算法能力特别差,当时报有一定的侥幸心理,觉得算法这种东西考得应该不多,短时间内提升不了太多,就没必要花太多时间了,现在看来简直可笑,甚至想抽自己几个大嘴巴,因为吃了很多亏。
八月份的时候,开始啃别人的面经,啃的时候不断拓展总结,一遍一遍的看。就这样啃了一个月的时间,我就正式加入秋招大军,当时投递了很多很多简历,不少于 100 家,由于专业不对口,没有实习经验,学校等诸多问题,在简历筛选这个阶段上就挂了很多家,为了避免自己在简历上直接被筛选掉,我就开始到处跑宣讲会,天天在华科和武大之间穿梭,有时候一天要参加 3,4 家宣讲会,连饭都吃不上,一周瘦了 6 、 7 斤,其中的辛酸只有经历过的人才知道。在九月中旬的时候几乎是考一场挂一场,看到别人都有了 offer 而自己却一无所获,逐渐开始怀疑人生,后来不断调整自己的心态,毕竟机会那么还有那么多,并没有那么多余的时间让我们悲伤,所以只能努力充实自己。渐渐地面试机会变多了,就开始应对各家的面试,发现经常止步于算法题上,我就非常后悔,我开始狂刷算法题,主要是《剑指 offer 》上的题,利用中秋三天的时间,我大致把《剑指》过了两遍(主要是学会其中的思想)。在 9.28 的时候,我收获到了第一个 offer (顺丰科技)。十月份的时候,发现主要是一些银行、移动联通这样的国有企业,又找了一段时间,最终选择去中信银行信用卡中心。经过一个半月的时间,我总结了一下我的求职感受,如下:
1 、找工作期间一点要调整好心态,好心态才会有好“运气”
2 、一定要总结自己的面试问题,千万不要被同一个问题坑两次
3 、如果你的个人简历不是很突出,一定要多跑跑宣讲会(有现场笔试或者现场投递简历有优势的),尽量和相同方向的小伙伴一块跑,这样彼此可以互相照应,你懂得
4 、如果你是一个程序媛的话,你可能会需要付出更多的艰辛,因为我遇到某些公司更偏向于男生,真心不服气,但是也没办法
5 、如果说你经常败在笔试上,尽量不要单打独斗去考笔试,你懂得(不要想着即使笔试过了,面试也没人帮,先把笔试过了再考虑那些)
6 、不要因为懒,错过一些机会!!!
7 、面试的时候一定要自信,面带微笑,会有加分,不要把熟悉的部分写在自己的简历上(项目,个人技能)
8 、面试的时候如果碰到自己不会的问题千万别胡说,自己一知半解的知识点,千万不要提及,不要给自己挖坑(切记),某些时候可以巧妙得将面试官指引到自己会的方面上
附部分面试问题(抱歉有些记得不是很清)
1、 人人(二面,挂)
这是我面试的第一家公司,感觉很不好,当时承诺给我三面,让我先回去,回头通知时间地点,最终不了了之了,都是套路。
一面:
l 接口和抽象类的区别 是否可以实例化
l 各种状态码
l 算法题:从一堆字符串中,去除重复的字符,并输出
。。。
二面:
l 两个无序链表合并成一个有序链表
l 手写 Kmp 算法
2、 cvte (一面,挂)
面试官很好,很帅,一直面带微笑,但是答得不是很好。
一面:
l 项目介绍
l 自定义控件如何绘制,然后现场画出了一个控件,问我具体应该怎么绘制(如何计算子 view 的宽高度等等)问的超级细
l 算法题 题目忘了,只记得写的时候时间复杂度过高。
l 断点续传的原理
l Hsahmap 的底层原理
l 四大组件的生命周期
l 接口和抽象类的区别
l Gc 算法具体内容
l java 内存模型
l 学习方法(说的时候只有这一部分被夸了)
3、 58 (三面,过)
面试感觉不是特别好,但是却过了,所以我觉得有时候面试或多或少跟运气是有关系的,平常的时候多攒人品
一面:
l Sql 语句 分组排序
l 海量数据排序方法(题目背景是游戏排名)
l 为什么游戏需要分区(跟服务器有关系)
二面:
l 项目介绍(展示了一下我曾经做的项目)
三面:
我觉得我答得不好,我说我不喜欢加班,但是大家都懂 58 的“ 996 ”,不知道为啥还让过了
4、 科大讯飞(二面,挂)
准备的不好,面试的时候问得特别细致,是我面了这么多家最细致的一个
一面:
l 介绍项目
l 断点续传的基本原理(问的很细很细)
l 图片压缩方式
l Xml 解析方式,原理优缺点
l Listview 的优化(问的很细很细)
l 自定义 view 的绘制方式
l 事件分发机制(问的很细很细)
l 对 Restful 了解
l Volley 的原理及使用
l 三级缓存的理解
l lru*** 的基本原理
l 四大组件相关知识
l 排序算法(随意写一种)
二面:
l 项目介绍
l Hashmap 和 hashtable 之间的区别
l 断点续传原理
l 数据缓存处理
l 对我项目中用到一个开源框架中算法了解吗?( IK Analyzer )
5、 顺丰科技(二面,过)
没有问道什么技术问题,但是我觉得我当时候整个人的状态比较好,一直面带笑容。 ps 顺丰科技的 hr 都很赞,觉得公司挺好的。
一面:
l 介绍项目
l 四大组件生命周期
l 虚拟机相关知识
l 对顺丰科技了解吗(当时回答比较好,本人比较擅长回答这种类型的问题,面试官很满意)
二面:
l 个人基本信息
l 对顺丰科技的认识
l 期望薪资
6、 银联商务(二面,挂)
唉,其实很想进银联的,因为比较想留在武汉,而武汉有名的公司比较少,投了一些直接简历就不过(斗鱼、华为),银联算是很好的,据同学说银联商务更偏重于男生,对女生要求更高。其实整体面试感觉很好,但是。。。
一面(群面):
l 对于一个社会现象的讨论(技术方面的)
l 对一个打电话的系统功能讨论(技术方面)
二面:
l 项目介绍
l 文件上传下载
l 。。。
笔试
面试过后又加了一轮笔试全是行测题目, 40 分钟 25 道题,还有一道算法题,结果晚上出结果了没有我, /( ㄒ o ㄒ )/~~
7、 招银网络科技(电面,挂)
笔试做了一部分就去做好未来的笔试了,结果莫名其妙的过了,匪夷所思。好未来后来也过了笔试,由于冲突了就没有去面试。
电面
l 首先是自我解释,介绍一下项目
l cookie 和 session 的区别
l http 的理解, http 中无状态的含义是
l 多线程安全实现方式, synchronized 和 lock ,信号量的区别
l 介绍一下 restful 框架
l Java 和 JavaScript 的区别
l 数据结构 对一个基本有序的数组应该采用什么方式进行排序,对一个乱序的数组应该采用什么方式排序能快速找到前 n 个数?为什么?
8、 携程(二面,挂)
感觉携程答得也挺好的,但是也挂了,可能无缘吧
一面:
数据库
l 对 acid 的理解
l 非关系数据库的理解,使用心得
l 隔离级别的具体说明 幻读 脏读 不可重复读举例说明
网络
l cookie 和 session 的认识
l http 和 https 的理解
l 从输入网址到最终界面呈现到底经历哪些步骤
l 七层模型,三次握手和四次挥手具体步骤
Java
l 多线程安全实现方式, synchronized 和 lock ,信号量的介绍 线程池具体原理
l 介绍一下 restful 框架(问了是哪个博士写的,那篇文章看了吗,真可怕)
l 接口和抽象类
l 虚拟机相关知识
l Java 和 JavaScript 的区别
l 数据结构 对一个基本有序的数组应该采用什么方式进行排序,对一个乱序的数组应该采用什么方式排序能快速找到前 n 个数?为什么?
安卓
l 四大组件的相关知识
l Linux 和安卓中跨进程间通信间的区别,以及安卓中 binder 基本原理
操作系统
直接说没怎么接触过
二面电面:
l 多线程安全实现方式,线程池具体原理
l service 中启动方式有哪些区别是?
l 安卓动画相关知识
l Activity 的生命周期及其他相关知识
l 。。。。
9. 中信银行信用卡中心(三面,过)
笔试的感觉不好,全是数据库,测试的相关题目,最终的编程题要求用 c++ 做,本以为会跪,结果过了。一面的时候一直被面试官骂结果也让过了(一面刷了很多人),觉得人品爆发了,二面问的几乎都是 web 相关的,最终也过了。
一面:
l 项目介绍
l Socket 通信具体原理(与 tcp 间的关系)
l http 基本知识(问的很细)
l 接口和抽象类
l Xml 解析方式,及基本原理
l Tcp udp
l Restful 的认识,优点,以及和 soap 的区别
。。。。
二面:
l 项目介绍
l Session 相关知识(问的很细)
l Servlet 的相关知识(问的很细)
l 文件上传下载(问的很细)
l 图片压缩(问得很细)
l Xml 解析(问的很细)
l Java 相关知识(问的很细)
。。。。
总结
加了牛客网的两个群( 5 群, 6 群),接触到很多大牛(发现很多是做安卓的,受伤,难怪工作这么难找),看了很多面经,认识自己见识是如此短浅,学习的道路还有很长。很感谢牛客网这个大平台,感觉牛客网上的每个工作人员都很棒,还有那些无私分享自己求职经历的人,最后希望每个求职的人都可以收获到自己满意的 offer 。
#人人网##携程##58集团##广州视源电子科技股份有限公司##安卓工程师#