作者:登月人串爆
写在前面
想了蛮久的然后还是来写了自己的面试经历,应该没人还比本小菜鸡还菜了。楼主本科野鸡二本,然后毕业去了一家方案公司做MTK平台的Android Framework开发有一年,然后去了澳洲某野鸡大学读了一个渣硕。
秋招正式批
到了九月份大家都在投简历找工作,本小菜鸡也是蠢蠢欲动,于是跟着大佬们投了简历,(没想到是去当分母的)QAQ。。。。 投了字节跳动的Android开发
笔试
笔试AC了几题忘了反正蛮久的,就稀里糊涂的收到了邮件让我去面试。
一面
一面上来自我介绍,然后介绍面试流程,然后开始考计算机网络八股文
- TCP/UDP的区别
- 进程线程调度
- 手撕LRU 不能用LinkedHashMap
- 还有个题是用DFS,走迷宫搜路径条数,直接暴力干完
- 接下来就是聊项目,复现过一篇论文的数据压缩方法,(BWT),详细解释
- 反问环节
一面面完心态崩了 , 然后加上当时有考试,就意兴阑珊回去准备考试了。。。。。
二面
二面的面试官很nice, 体验很好。上来是一套老八股文,
- Java的hashmap用过吗
- 咋实现的
- 追问红黑树
- 问线程安全和hash冲突 (弟弟这块比较菜。。。没啥准备拉闸了)
- 写题
老dp题,最长公共子序列
然后问操作系统,这部分没答好。。。。。。
然后就感谢信了。。。。。
然后12月份小弟不小心摔了一跤, 导致做了一个手术,在住院期间术后实在忍受不了医院饭堂的饭的时候,叫老爹去外面买小酒喝的时候接到了字节HR捞人的电话。。。
字节 跨平台开发
一面
- 自我介绍
- 做过安卓开发吗
- 介绍源码结构
- OS 里面跨进程通信(ipc)手段有哪些? – ( 信号量 , socket, 管道, 命名管道, mmap)
- 安卓Binder机制介绍
- 启动Activity过程 (由于小弟读过AOSP源码,这部分从startActivity开始讲到ActivityThread里面的handleMessage…面试官估计听得累了。。。叫了差不多OK了。。)
- View的绘制过程? 这部分没答好
- 数据库优化有吗? 建立索引 --追问 什么时候索引失效? – 只答出了用where like。。。
- 计算机网络http1.1 和HTTP 2 区别? (不知道。。。。)
没多久HR告知通过一面。。。。 弟弟计网,database实在拉胯
二面
- 自我介绍
- 项目介绍
- 追挖项目的点
- 你熟悉OS是吧,聊聊OS, CPU执行指令有什么步骤?(寻址, 取指, 执行)
- PC和SP 有什么区别?(program counter 和 stack pointer)
- mmap了解吗 (老IPC手段了,这是答的最清楚的地方了,扯了一下同步那些)
- C++ 的虚函数和纯虚函数区别? 虚函数表知道吗? (扯了一下语法)
- Kotlin会用吗? (不会)这里说了没学过还一直追问我 有点难受
- Binder通讯和socket通信比较?
- 如果让你设计一个下载的SDK, 你会怎么设计?
- tcp的四次挥手, 为什么在client 回复server的ack之后还要等2MSL?
- 写题 三色排序快排做partition过程
撕代码之后就结束了, 然后HR告知通过,然后约了三面。。。
三面隔了蛮久的,由于有康复治疗和医院复查等就隔了一周多。
三面
- 自我介绍
- 介绍项目流程
- 操作系统你介绍一下 (内核态 用户态)
- 你提到了syscall 那请你举个例子 比如open的调用过程
- inode 介绍一下
- 一个二维数组, 0 表示空格 1 表示病毒 2 表示易感人群
然后在每一轮中病毒会传播给它相邻的 四个格子(上下左右), 然后被传染的人有一个轮次的潜伏期,等于隔一轮才有传播性一个数组有多个病毒,同时开始传播, 问是否能使得所有人都染病,如果可以返回轮次,否则-1.(这里用了BFS) - socket下面的协议了解吗?(不了解)
- TCP 如何保证按序传输?
- 反问环节
面完没多久就HR告知三面通过。。。。约了HR面。。。。。
HR面
略……
最后过了一个星期收到了字节的OFFER,成功入职!
备战金三银四
下面给大家分享一份 《2020 Android 复习文档汇总版》
该面试宝典不仅收录了本人亲身面试遇到的问题,还收录了从一些朋友那里收集过来的问题。在以后的工作中本 人也会不断的更新和充实该面试宝典,当然也希望大家能够多多奉献比较优质的面试题。
不仅展示了常见的面试问题以及回答技巧,还详细讲解了每一道题所包含的知识点,让每个程序员不仅知其然,更知其所以然。
由于篇幅原因,下面以截图展示部分内容。如有需要以下完整学习笔记PDF,可以点赞+评论支持下打工人老弟,大家可以去我 GitHub项目中:https://github.com/733gh/Android-T3 查阅这个些学习文档。
Android 开发核心笔记
Android 面试知识点大全
其他
最后因为文章篇幅长度有限制,暂且只能分享到这了。但小编在闲暇时刻喜欢去收集整理了一些Android 往年相关的面试题,进行自行刷题测试自己是否符合市场岗位的需求,如果大家想参考学习Android 相关面试题及一些知识点可以直接去我 GitHub 项目地址:https://github.com/733gh/Android-T3 中进行查看。