开头

让我们一起来看看,字节跳动的第三面,面试官都问了什么?(第一二面的题目及答案已整理,需要的可以在文末领取)

从七月中旬开始,我前前后后差不多一共投递了八十份简历,到目前为止,我参加面试的面试有十二家(收到的面试通知)

字节跳动的面试我准备了一个多星期吧,因为比较重视。

从字节跳动面试官这些问题,可以看出,第三面他们考察的一个很重要的方向就是项目架构和性能优化。

“懒洋洋”甚至跟我吐槽:“我靠,现在大厂面试java后端都这么难的吗?”

大厂面试就是难,但是大厂的待遇是真的香!最近不是都在讨论华为的工资到底有多高么?应届生毕业6年,年薪百万不是梦。

面试官的问题:

(1)问:点击一个图标到这个应用启动的全过程(前面是项目经验没啥好说的)。
答:点击图标后通过startActivity远程调用到ams中,ams中将新启动的activity以activityrecord的结构压入activity栈中,并通过远程binder回调到原进程,使得原进程进入pause状态,原进程pause后通知ams我pause了。ams再根据栈中activity的启动intent中的flag是否含有new_task的标签判断是否需要启动新进程,启动新进程通过startProcessXXX的函数。启动新进程后通过反射调用ActivityThread的main函数,main函数中调用looper.prepar和lopper.loop启动消息队列循环机制。最后远程告知ams我启动了。ams回调handleLauncherAcitivyt加载activity。在handlerLauncherActivity中会通过反射调用Application的onCreate和activity的onCreate以及通过handleResumeActivity中反射调用activity的onresume。一个应用就此启动。
(2)问:Retrofit原理。
答:主要是通过动态代理将接口直接转换成代理对象。动态代理和静态代理的区别,动态代理直接在虚拟机层面构建字节码对象。
(3)问:View自定义的流程,实现哪些方法。
答:1.实现OnMeasure,onlayout,onDraw. 继续问“onMeasure中会用哪些方法?”(我觉得这题可能没大好,我是想回答的详细点的,结果还没打到点他就说好,继续下一题,不知道是认可了还是觉得我答的过于啰嗦,如果觉得太啰嗦可以提出来啊。。。) 我回答onMeasure 中传入两个int数值,这个数值32位,前2位表示模式,后30位表示宽度、高度。这是外表容器给内部view的限制。一种模式是容器给你多大的值,你就是多大的值(match_parent),第二种,容易给内部view多大的空间,内部view不用管,是多大就是多大。第三种,容器给子view多大的空间,和子view自己算出来的占用空间,选择小的那个(wrap_content).说到这我正打算说onMeasure会调用measureChildwithmargin类的函数,他说好了,然后下一题.
(4)问:问我怎么设计app的。
答:基本都用的mvc架构,曾经有个项目使用mvp。还有其它一些整体设计上的问题,很零碎,但都答的差不多。
(5)算法题,面试官的表述不是很清晰,所以开始没理解他的意思,我归纳一下题目:有1,3,7三个面值的金钱,现在要取n元。怎么取个数最少。(n是已知数) 意思就是 1a+3b+7*c=n 什么情况(a+b+c)最小。当然这是我自己归纳出来的,他开始的描述让我想哭。
答:开始脑子有点没反应过来,把它当逻辑题做了,想了5分钟后才反应过来,这是编程题啊。遍历呀。 a的取值范围(0n)b的取值范围(0n/3) c的取值范围(0~n/7) 遍历取最小值。当然这种情况效率并不高,我当时也和面试官说了,没太考虑效率,如果需要可以再改。感觉他也认可,思路对就行了。 其它一些零碎的问题没印象了,主要就这些。

我们很多程序员都有一个大厂梦,但如何针对大厂进行面试准备,很多程序员就显得手足无措了。本文就根据自己一些见解谈谈如何准备面试。

关于笔者: 阿里巴巴 Android 客户端开发工程狮一枚,喜欢技术、热爱开源。

细节杂谈

之所以是细节杂谈,说实话,是因为真的不知道可以写什么,网上关于面试的文章很多,大概看了几篇之后,更不知道写什么了。而根据自己的面试经验来看,发现其实有很多细节,在面试的时候都没有被好好重视起来。所以,这里针对这些细节做个总结,也希望可以对你们有所帮助。

1. 准备一个良好的开场白

首先笔者理解的自我介绍的作用是缓解初次交谈的尴尬以及过渡开场,然后才是扩展为对候选人的口才、逻辑以及表达能力的判断。

如果你实在不知道怎么说,即便是把你简历上的姓名、年龄、爱好、工作经验复述一遍,至少也是起到了暖场的作用。当然要是能基于此,表现出一定出彩的地方,那自然是再好不过,多花点心思准备是值得的。

PS:最近看到一个有趣的分享,唐僧每次介绍自己:贫僧唐三藏,从东土大唐而来,去往西天拜佛取经。其实这几句话包涵了每人都要问自己的三个问题:我是谁?我从哪里来?我要到哪里去?

2. 谦虚是必要的,因为这是礼节

很大程度上,面试官还有一个身份就是以后可能要一起共事的同事或者老板,所以切忌不要表现的心高气傲,尤其在电话面试中,很难在短时间就能了解一个人,你所表现出的态度就显得非常重要,如果和面试官产生了争论,要注意谈话技巧,可以在你的观点前加上我理解的是什么什么…

就连牛顿说他不过是站到了巨人的肩膀上了,所以永远不要觉得自己有多牛,真正牛的人只会更谦虚。这里手动,他是我很喜欢的一个 Android 开发同学。

3. 大招放的好,工作何愁找

嗯,标题起的挺押韵,容笔者小小的骄傲下

最强整理:从外包公司到今日头条offer,聪明人已经收藏了!相关推荐

  1. 从外包公司到今日头条offer,吐血整理

    前言 疫情一过,我相信将会是面试求职的高峰时期,如果此时手里有份高质量的面试宝典,那么你将得心应手面对考官各种问题.虽然不敢保证你能应聘上心仪的职位,但是能保证看完这些内容你的收获将超乎你的想象! 此 ...

  2. android设计模式面试,从外包公司到今日头条offer,吐血整理

    前言 疫情一过,我相信将会是面试求职的高峰时期,如果此时手里有份高质量的面试宝典,那么你将得心应手面对考官各种问题.虽然不敢保证你能应聘上心仪的职位,但是能保证看完这些内容你的收获将超乎你的想象! 此 ...

  3. 字节跳动今日学习内容:从外包公司到今日头条offer,一文搞懂

    一.Spring Cloud微服务概念定义 提起微服务,不得不提 Spring Cloud 全家桶系列,Spring Cloud 是一个服务治理平台,是若干个框架的集合,提供了全套的分布式系统解决方案 ...

  4. 从外包公司到今日头条offer,帮你突破瓶颈

    背景 在深度使用 Flutter 开发过程中,我们遇到了业务代码耦合严重,代码可维护性糟糕,如入泥泞.我们需要一个统一的应用框架来摆脱当下的开发困境,而这也是 Flutter 领域空缺的一块处女地. ...

  5. android系统应用!从外包公司到今日头条offer,算法太TM重要了

    大家应该看过很多分享面试成功的经验,但根据幸存者偏差的理论,也许多看看别人面试失败在哪里,对自己才更有帮助. 最近跟一个朋友聊天,他准备了几个月,刚刚参加完字节跳动面试,第二面结束后,嗯,挂了- 所以 ...

  6. 从外包公司到今日头条offer,含BATJM大厂

    前言 最近有不少人问我这样一个问题:「我刚接触编程,准备学习下Android开发,但是担心现在市场饱和了,Android开发的前景怎么样?」 想着可能有很多人都有这样的担心,于是就赶紧写篇文章,来跟你 ...

  7. 从外包公司到今日头条offer,聪明人已经收藏了!

    开头 让我们一起来看看,字节跳动的第三面,面试官都问了什么?(第一二面的题目及答案已整理,需要的可以在文末领取) 从七月中旬开始,我前前后后差不多一共投递了八十份简历,到目前为止,我参加面试的面试有十 ...

  8. 从简历被拒到收割今日头条 offer,我用一年时间破茧成蝶!

    点击上方石杉的架构笔记,右上选择"设为星标" 每日早8点半,精品技术文章准时送上 往期文章 BAT 面试官是如何360°无死角考察候选人的(上篇) 每秒上万并发下的Spring C ...

  9. 从简历被拒到收割今日头条offer经验总结

    一.印象中的头条 二.面试背景 三.准备面试 四.头条一面电话面(Java+项目) 五.头条二面视频面(大数据+项目) 六.头条三面视频面(算法+场景题) 七.如何通过头条笔试? 八.如何准备头条面试 ...

最新文章

  1. push的时候 出现卡顿现象
  2. 【知识星球】图像降噪模型和数据集内容开启更新,经典问题永垂不朽!
  3. VSCode生成.vue模版
  4. du命令和df命令的区别
  5. 欧盟:2020年之前普及免费WiFi网络
  6. Linux上Oracle自动启停方案
  7. ArchLinux下i3wm简单配置和美化
  8. 支付宝支付出现 openssl_sign(): supplied key param cannot be coerced into a private key
  9. 大数据分析——Matplotlib入门教程
  10. 无法启动此程序因为计算机丢失msvcr110.dll,Win7运行程序提示计算机中丢失msvcr110.dll如何解决...
  11. 对比农行与建行网银业务办理流程
  12. FactoryBean的使用~
  13. 7CCSMCMP: Coursework 2 Computer Programming for Data Scientists The 7CCSMCMP instructors
  14. Python去掉换行符\回车符
  15. .ignore插件自动忽略
  16. maven不能加载ojdbc14.jar的解决方法(亲测有效)
  17. Tcpdump命令抓包详细分析
  18. 计量经济学五个基本假定
  19. 宝宝看的启蒙动画片哪里找?三款电视软件推荐,孩子启蒙不怕难
  20. java derby数据库_使用Apache Derby进行Java数据库开发,第3部分

热门文章

  1. Java学习笔记 | 尚硅谷项目三详解
  2. 甲骨文2013财年第一财季报告
  3. 俞敏洪老师的回复真的太糟糕了!
  4. 欧盟委员会敲定新SCC,以恢复正常的欧盟-美国数据传输协议
  5. 交易、账务系统去Oracle经验
  6. 解读谷歌的AI杀手级专利:Dropout
  7. 哪些Apple设备支持这次系统更新?来看你的旧Apple设备支持最新系统吗
  8. 【上电即上华为云】华为云openCPU智联模组_Cat.1_MC615-CN-L610-CN_环境温湿度(GXHT30传感器)
  9. 数据库课程总结(ORACLE)
  10. 分布式文件系统FastDFS详解-附带视频教程