毕业一年,你该达到什么程度:富途Android社招面经

这里是双非本科毕业一年的Android开发渣渣,坐标深圳.

我社招的状态是在职精投,除了富途,还投了腾讯和字节,其中腾讯音乐的QQ音乐部门捞了我,但是很可惜,倒在了二面,QQ音乐的面经后面整理了再发吧。

感觉一年经验的社招和校招差不多,四轮都是视频面试,面试官都很准时,而且人都很好,在回答卡住的时候会给与提示,在反问环节我也看出了面试官的思路是非常清晰的,总的来说整个面试过程非常nice。

9.28投简历,9.29晚约视频面试。
9.30 一面 1h15min :

为什么想换公司?

在开发中遇到的最大的困难?怎么解决的?

接口和抽象类的区别,一个类的能不能多继承,能不能实现多个接口

接口类的非方法能不能被修改?不能,接口类里非方法的类型都是final修饰,所以必须初始化并且不能被修改。

抽象类的变量可以被继承和修改么?可以。

final关键字

GC如何标记要回收的内存?GC Roots有哪些?

线程安全问题,sychronized、lock/unlock的区别使用,公平锁和非公平锁的概念。

sychronized是如何体现公平锁和非公平锁的(CAS、锁自旋)?

HashMap原理,在什么时候扩容(当加入的元素大于阈值threshold后)。 以及线程安全的HashTableConcurrentHashMap的原理。

View的事件分发

布局优化怎么做的?LinearLayout和RelativeLayout在性能上的区别。

WebView的优化,如果出现了数据的交互该怎么做?(AIDL),Binder怎么实现进程间通信的?mmap的模型?

内存优化?RecyclerView的缓存机制,如何优化?

项目中的联网模块怎么实现的?UDP和TCP的区别?

TCP会检查包的顺序么,Tcp怎么控制包的发送(滑动窗口)。

看到项目中使用了WebSocket,讲下它和Http的区别?

RxJava的操作符?项目中是如何使用RxJava的?

快速排序和冒泡排序的稳定性问题

编程题:将一个分数转化成小数形式输出,因为分数只可能是有限小数或无限循环小数。如果小数是无限循环小数,则使用小括号括起。

这题思路是做while轮除。我界定是否产生了无限循环小数是使用HashTable。

对我们公司了解多少?有什么想问的?

10.4 二面 45min

为什么想要离开当前的公司 "abcde"字符串在内存中占多大,这些字节在JVM的编码格式 JVM堆和栈的作用,进程和线程的作用,堆栈和线程进程的对应关系 死锁怎么产生?如何去解决死锁,多个方案 线程同步问题,自增是原子操作吗?如果要做到线程安全的自增要做怎么做? 快排的过程,时间复杂度,n*lgn是如何得来的? Http是在哪一层,Https使用了非对称加密还是对称加密?TCP和UDP的区别,为什么UDP不可靠还要使用UDP 拥塞控制和流量控制的区别 智力题:给一篮子鸡蛋,如何用最少的比对次数找到最大的和最小的鸡蛋, 我的回答是 一开始,随便拿出两个鸡蛋,然后接下来剩下的鸡蛋每拿出一个,就和这两个进行比较,如果比两个中小的鸡蛋小就替换小的那个,如果比大的鸡蛋大就替换掉大的那个,这样比较次数就是 (n-2)2 ,因为有些鸡蛋只用比一次就行了(因为是最小的就不用往大的比了),所以结果是小于 (n-2)2的,但我觉得应该还可以更加快.... 编程题,排序二叉树的插入,如果插入相同的数,需要做什么保证树可以还原(即不允许丢弃到相同的数)? 有什么要问的?

10.8 三面 1h20min

两桶油漆,A桶全是红色油漆,B桶全是蓝色油漆,将A桶中取一勺倒入B中,再从B桶中取一勺倒入A中,求A桶的蓝红比例和B桶的红蓝比例,是大于、小于还是等于? 用一个数组实现一个循环队列 给定一个只有“R”“G”“B”三个字母的字符串,用一次遍历基于原字符串将他们以“RGB”的顺序排序好(LeetCode原题) 52张扑克牌,取一张不放回,再取一张, 两张为相同颜色的概率是多少?

10.10 hr面 45min

自我介绍 为什么选择计算机这个专业 为什么要离开当前的公司 你是深圳的,为什么会选择在东莞工作。 在上一个公司学到了什么 选择公司因素,按优先级排个序 用三个关键词描述自己 代入用户思维和不代入用户思维做产品有什么区别? 家庭情况,有没有女朋友? 你觉得一个好胜心过强的人会有什么样的问题? 你会想在团队里面承担一个什么样的角色? 平时的爱好是什么 有没有给自己制定一些计划?对自己的要求有多高? 学习的渠道、方式,有GitHub吗?看什么样的书? 学习是基于公司项目学习,还是个人兴趣学习? 预计到岗时间,期望薪资 反问环节

总结一下,技术面环节主要考项目和Java基础、编程题要注意规范和思路是否最优。

和HR小哥哥聊得很开心,他说下周会给offer call,我就乖乖的等着

文末

以上部分题目也是自己在复习期间在网上找的一些大厂面试题。我自己也将这些面试题做了解析整理并归纳成了一个文档,由于篇幅原因就没在文章里做展示了。好记性不如烂笔头,永远抱着一个“我应该会”的心态去刷面试题,在自己脑子过了一篇,感觉回答的上来,但往往一真跟面试官对上线就会卡壳,还是建议把每个面试题都去写一遍,再去做延伸。当你能将每一道面试题都能富有逻辑性的写出来的时候,那在面试的时候就绝对没有问题了。

另外需要面试题解析文档的同学可以找我自取:【Android开发交流】

面试题部分

整理不易,如果觉得我的这篇分享对你有所帮助的话,点个赞支持一下吧!另外祝所有正在面试的小伙伴们,都能拿到自己理想的offer!

来源url
栏目