反思

昨晚去北京大望路阿里面试, 产生了严重的挫败感, 羞愧难当.

比不得从大学就有目标有理想, 一直在为目标努力学习技术的同学, 在大学唯一能拿得出手的就是参加了电子设计大赛, 学了点嵌入式的知识.
毕业后开始做android, 说得好听点叫做项目, 实际上就是搬代码, 真正记到脑子里的有多少呢? 从百度Google搬到自己的代码里, 同一个问题要遇到好几次才能记住, 很多问题搬完了还不知道为什么这么做. ReactNative都做完一个项目了, 生命周期都记不清楚, 这样的工作有什么意义呢?

进步太慢, 毕业后的前两年自学android, 现在想来基本都是在爬, 两年之后自认为很厉害, 什么业务都做得了了, 其实只是井底之蛙, 甚至连hybird都不知道. 面试官问一句"都是原生开发吧", 支支吾吾回答了一句"就是在Eclipse里写java和xml…", 真是可笑至极! 一如昨天回答"intent如何突破传参大小限制": “不太清楚可以突破…”. 我可以找借口说平时做的项目不大, 不需要这些操作, 其实用到intent的时候也应该深入看一下, 不是吗? 自认为工作这五年, 理论知识还不如BAT招的应届生, 也许在其内部工作了一年的新手掌握的基础知识都比我扎实吧?

个人经历

其实我有好长一段时间没有正规的面试过了,大约3年的时间里面,我没有正规地接受过面试。

所以在准备投字节跳动之前,我投了几个公司做了一下热身活动。记住,这个时候其实不需要有啥心理包袱。因为本身候选人面试成功的可能性比较低,一个合适的可以面试的人选他们也很乐意看看,而且万一你确实想换工作,但是心仪的公司面不上,而热身活动的公司拿到了offer,你也可以考虑考虑去看下。并且这个时候你没有任何的心理包袱,因为反正你也就是来面试看看的,所以面试时候的发挥可能也会更好点,因此说不定最终拿的offer会比最后想去的那家更好呢?

面试准备

老实说,我自己平常没事就会看一些面试题,所以我都是直接去面的。

建议大家如果准备面试的话,需要做以下准备:

**背题:**看一看最近的面经文,了解现在公司都在面什么类型的题,准备一些常见题,开背吧!如果一些基础的开发问题都不会那问题就有点小大了。

**算法:**做一些算法题,leetcode 上面的一二三星就够了,前端算法很简单,基本都是初中数学的难度吧。

**项目:**项目回顾,把你做的项目从技术架构到源码都要做到足够了解,至少面试的时候不要被面试官问住了。并且要体现出你在工作中的作用,体现出自驱性。(大公司都很看重自驱性)。

**亮点:**准备亮点,回答问题的时候不用全部回答上来,但是在面试的过程中一定要有亮点(不然你就会得到反馈,面试官说你还行,但是没有过~) 我一般会准备几个点,每个点都保证可以睡上半小时。另外一定要了解的很深入,并且能够用自己的话流畅的表达出来!!

**内推:**最好找人内推,成功率会提高一些。

**练手:**先找几家不太想去的公司(规模差不多)练练手,如果第一次面试就去心仪的公司面试,淘汰率会非常高。

**心态:**心态很重要,面试不过很正常,不证明你不优秀,只是不适合,总结面试经验,为下一次做准备。

如何回答问题?

怎么把自己会的问题说好,这个很关键。

逻辑清晰 一定要逻辑清晰,不然即使你知道这个问题的答案,面试官也不会满意,如果你逻辑清晰,即使这个答案不会,面试官也会给你加分。

独特理解 现在的面试题大同小异,那么如何体现出你的优势就很重要。结合业务以及你自身的知识储备来讲。

深入思考 对每个问题一定要有深入的思考,不然就很难进入大公司了,深度上要有一个拔高才能在面试中获得好的成绩。

流畅表达 面试就是一个表达的过程,一些问题心里明白不行,还要流畅的表述出来,基本上如果面试官觉得你表达的很流畅,当你讲到一半就不会再让你说下去了,证明已经通过了。

刷题当然也是最重要的,毕竟我是有好几年没有过正规面试的经历了,于是问我在阿里的同学要来了一份他们公司P8整理的一系列大厂面试题,刷到天昏地暗,如今我也已经入职了字节跳动,这些面试题对于我来说也没什么太大的用处,所以在这里无偿的分享给大家。

字节跳动面试经历

字节跳动一面

  • 自我介绍
  • 介绍下Android的mvc/mvp/mvvm
  • view的事件分发机制
  • viewGroup 怎么知道view有没有消费事件
  • 写一个单例模式(解释单例模式中的sync,双锁,volidate)
  • 算法题目:
    有A和B两个有序数组(数组元素不重复),给出sum,请找到A和B中所有相加和为sum的序列对(面头条遇到的)
    A:[1,4,5]
    B:[3,4,6]
    sum=8
    output 1,1,2,0 => because A[1]+B[1]=8 /A[2]+B[0]=8
  • 内存泄漏有哪些?怎么排查

闲聊

之后就问了我最近看了哪本书,学到了什么,最近还在学的什么技术呢?问了我职业规划,兴趣爱好,还说了说公司的语言选型,我后来问了下对于我的面试表现评价,人家不方便说,又问了新人培养等问题。

字节跳动二面

  • 自我介绍
  • 你遇到最难的问题是什么
  • android的handler机制
  • android的anr机制
  • android冷启动优化
  • android弱网优化
  • android 视频相关有了解么?
  • android长图片加载怎么实现
  • gradle用过哪些
  • 最近看什么书?
  • 职业规划是什么?
  • 能接受在北京工作?
  • 算法题目:排序二叉树转有序双链表,要求在原来的树节点基础上增加。

字节跳动三面

这个面试官应该是一个总监级别的,说话非常的硬气,肯定是一个资深大佬,一共面了40多分钟。常规的面试基础都没问,纯怼项目和算法了。

  • volite的关键字,干了什么(什么叫指令重排)
  • 生产者消费者(非阻塞式)
  • 怎样获取当前线程是否是主线程
  • 怎样检测函数执行是否卡顿
  • 常用的对称加密算法,有什么同
  • view分发反向制约的方法
  • 两个线程用不同的对象,怎么养
  • 乐观锁使用
  • hashmap底层原理
  • arraylist底层原理
  • webview如何做资源缓存
  • hashmap扩容
  • 一张图片100*100的图片在内存中的大小
  • 项目里面的难点(如何解决,解决方案是什么)
  • 一个app发布一个版本后,发现变卡了,你如何复现?如何得知某个地方变卡,如何得知用户在某行代码变卡
  • android 动画机制有哪些?
  • lottie的原理
  • 直播中的动画要怎么做?要做成动态的,比如礼物是可以配置的?
  • 算法题:找出数组中的k数。k数的定义:比位置位于这个数前面的数字都大,且比位置位于这个数后面的数字都小的数字(数组首尾的数字不用管)(面头条遇到的)
    [4,1,3,2,7,9,8,10,12]
    此数组中的k数为7和10

字节跳动四面

HR面,大约35分钟,主要是问个人职业规划、薪资待遇,以及对字节跳动的期许等等…

这里我就分享一份资料,希望可以帮助到大家提升进阶。

内容包含:Android学习PDF+架构视频+面试文档+源码笔记高级架构技术进阶脑图、Android开发面试专题资料,高级进阶架构资料 这几块的内容。分享给大家,非常适合近期有面试和想在技术道路上继续精进的朋友。

如果你有需要的话,可以扫描下方二维码,免费获取Android学习PDF+架构视频+面试文档+源码笔记领取方式

喜欢本文的话,不妨给我点个小赞、评论区留言或者转发支持一下呗~

扫描下方二维码,免费获取Android学习PDF+架构视频+面试文档+源码笔记领取方式**

[外链图片转存中…(img-pUtcpgW4-1629790332911)]

喜欢本文的话,不妨给我点个小赞、评论区留言或者转发支持一下呗~

Android社招面经分享!2021华为Android高级面试题及答案,附相关架构及资料相关推荐

  1. Android开发框架Collection,Android社招面经分享

    前言 其实一开始我考虑的是阿里的,因为那里有认识的人,希望通过内推可以顺利进入大厂,但是却被面试官一连串问题,完虐!这时候秋招已经过半,后来在牛客上看了很多牛友面经,也加了很多交流群,受到了很多朋友的 ...

  2. 最“热乎”的蚂蚁Java社招面试经历分享(共40个面试题)

    面试时间:2021年10月12日 1.final finally finalize的区别 2.synchronized关键字的作用以及在什么时候使用,concurrent包里面其它的锁. 3.有遇到过 ...

  3. 今年11月初阿里巴巴社招面试经历分享,Java工程师方向已拿offer【附学习方法】

    一面: 1.首先确认对阿里的意向度 2.其次面试官一般会针对您所做过的项目来做具体技术的交流,会比较关注个人对项目细节是不是掌握到位. 3.主要考察java的技术基础和原理,比如Spring框架以及数 ...

  4. java中月日年这种怎么转换成年月日_最“热乎”的Java社招面试经历分享(共40个面试题)...

    面试时间:2020年10月12日 1.final finally finalize的区别 2.synchronized关键字的作用以及在什么时候使用,concurrent包里面其它的锁. 3.有遇到过 ...

  5. 2019Android面试总结(附相关架构及资料),阿里快手拼多多等7家大厂Android面试真题

    线程池ThreadPoolExecutor的使用,内部处理任务的过程以及四种线程池的区别. Java中的四种引用以及使用的场景 java中GC回收算法以及年代区分问题等 java方面的问题印象中差不多 ...

  6. 2022 华为 Java 高级面试题及答案

    Kafka 源码篇--Kafka 快速入门 1.1Kafka 简介 1.2 以 Kafka 为中心的解决方案 1.3 Kafka 核心概念 1.4 搭建 Kafka 源码环境 Kafka 源码篇--生 ...

  7. 2021网易Java高级面试题及答案,王者笔记!

    前言 Spring 是一个非常流行和成功的 Java 应用开发框架.Spring Security 是 Spring 家族中的一个安全管理框架,提供了一套 Web 应用安全性的完整解决方案.在用户认证 ...

  8. android设计招式之美,麦可网Android设计招式之美

    相关课程: 麦可网Android设计招式之美 麦可网Android高级应用开发 麦可网Android面向对象技术 本套课程目录: 1 – 设计模式与Android框架设计a 2 – 设计模式与Andr ...

  9. 最新Java面试题2021年,常见面试题及答案汇总

    2021最新Java面试题[附答案解析]java面试题及答案2021,java2021最新面试题及答案汇总,2021最Java面试题新答案已经全部更新完了,有些答案是自己总结的,也有些答案是在网上搜集 ...

最新文章

  1. mysql获取用户名_mysql-LEFT JOIN 3列获取用户名
  2. 【学习笔记】Docker - 01. Docker是啥
  3. 小数点化分数的过程_分数和小数的互化
  4. java servlet 3.1,Servlet 3.1规范学习小记
  5. linux 格式化ntfs u盘,手机u盘数据恢复linux格式化为ntfs格式
  6. SQL字符串转换为数组
  7. 读书笔记之大数据采集与预处理
  8. android高清壁纸,40张极Cool的Android系统桌面壁纸
  9. 关于无线温度监测系统
  10. 疫情期间,找工作的一些建议
  11. SQL基础(廿)--- 抑制重复
  12. django框架——模型层(下)
  13. [附源码]JAVA+ssm计算机毕业设计餐饮管理系统(程序+Lw)
  14. 经典查找算法 --- B+树
  15. 平头哥剑池CDK 更新重磅来袭!三大亮点速看!
  16. rviz显示矩形框BoundingBox
  17. 数据警务_如何停止网上种族歧视警务
  18. 结束进程导致桌面图标消失
  19. 【子桓说】西安女硕士:我挺感谢新媒体的
  20. 二维火收银系统服务器超时,二维火收银系统,改变的不止是你的收银模式!

热门文章

  1. php半透明,php水印代码,php半透明水印支持png透明背景
  2. 萃见:上班还是创业,这是一个值得思考的问题?
  3. Android版本兼容性问题
  4. dwt转为html,如何把dwt页面转换成html页面
  5. c语言中的warn函数用法,关于c ++:MSVC等同于__attribute__((warn_unused_result))?
  6. MyBatis 3.2.8 用户手册 4.1.5 Result Maps
  7. 微信开发:NAT穿透
  8. 访问后端服务 报错504 问题记录
  9. 四旋翼飞行器轨迹跟踪仿真MATLAB simulink/simscape
  10. 移动设备技术_手机底层板子设计人员告诉你一般手机电池的正确使用方法