金三银四不跳槽更待何时?Android开发1年字节跳动5面面经,已成功上岸

532 篇文章 0 订阅
340 篇文章 3 订阅

面试旺季来即,分享面经

想了蛮久的然后还是来写了自己的面试经历,应该没人还比本小菜鸡还菜了。楼主本科野鸡二本,然后毕业去了一家方案公司做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面试解析

以上是整理总结的Android中高级面试遇到的真题解析,希望对大家有帮助;同时很多人经常也会遇到很多关于简历制作,职业困惑、HR经典面试问题回答等有关面试的问题。同样我也搜集整理了全套简历制作、金三银四社招困惑、HR面试等问题解析,有疑问,可以提供专业的解答。

1、看视频进行系统学习

前几年的Crud经历,让我明白自己真的算是菜鸡中的战斗机,也正因为Crud,导致自己技术比较零散,也不够深入不够系统,所以重新进行学习是很有必要的。我差的是系统知识,差的结构框架和思路,所以通过视频来学习,效果更好,也更全面。关于视频学习,个人可以推荐去B站进行学习,B站上有很多学习视频,唯一的缺点就是免费的容易过时。

另外,我自己也珍藏了好几套视频,有需要的我也可以分享给你。

2、进行系统梳理知识,提升储备

客户端开发的知识点就那么多,面试问来问去还是那么点东西。所以面试没有其他的诀窍,只看你对这些知识点准备的充分程度。so,出去面试时先看看自己复习到了哪个阶段就好。

  • 架构师筑基必备技能:深入Java泛型+注解深入浅出+并发编程+数据传输与序列化+Java虚拟机原理+反射与类加载+动态代理+高效IO
  • Android高级UI与FrameWork源码:高级UI晋升+Framework内核解析+Android组件内核+数据持久化
  • 360°全方面性能调优:设计思想与代码质量优化+程序性能优化+开发效率优化
  • 解读开源框架设计思想:热修复设计+插件化框架解读+组件化框架设计+图片加载框架+网络访问框架设计+RXJava响应式编程框架设计+IOC架构设计+Android架构组件Jetpack
  • NDK模块开发:NDK基础知识体系+底层图片处理+音视频开发
  • 微信小程序:小程序介绍+UI开发+API操作+微信对接
  • Hybrid 开发与Flutter:Html5项目实战+Flutter进阶

知识梳理完之后,就需要进行查漏补缺,所以针对这些知识点,我手头上也准备了不少的电子书和笔记,这些笔记将各个知识点进行了完美的总结。

3、读源码,看实战笔记,学习大神思路

“编程语言是程序员的表达的方式,而架构是程序员对世界的认知”。所以,程序员要想快速认知并学习架构,读源码是必不可少的。阅读源码,是解决问题 + 理解事物,更重要的:看到源码背后的想法;程序员说:读万行源码,行万种实践。

主要内含微信 MMKV 源码、AsyncTask 源码、Volley 源码、Retrofit源码、OkHttp 源码等等。

4、面试前夕,刷题冲刺

面试的前一周时间内,就可以开始刷题冲刺了。请记住,刷题的时候,技术的优先,算法的看些基本的,比如排序等即可,而智力题,除非是校招,否则一般不怎么会问。

关于面试刷题,我个人也准备了一套系统的面试题,帮助你举一反三:

以上内容均免费分享给大家,需要完整版的朋友,点这里可以看到全部内容

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值