学弟吐槽:太可怕!现在的Android面试官都是这样不给人“活路”吗?
Posted 懂你的大海
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了学弟吐槽:太可怕!现在的Android面试官都是这样不给人“活路”吗?相关的知识,希望对你有一定的参考价值。
前言
前几天我的一个大学学弟跟我吐槽他面试挂了,觉得现在的面试很卷! 听他描述完想起了之前我在知乎看到的一个问题----什么是高质量的Android面试! 当然质量高的面试,不仅仅针对于android,毕竟,语言只是一个工具!
有来有回,见招拆招。 所有的面试者都希望在自己的能力范围内,尽可能的展现自己的能力(我还不错,快给我发Offer吧),希望和面试官有的聊,聊的还不错。这就和大家刚开始找另外一半一样,共同“语言”,共同“话题”,是进一步深入的基础。 ==优秀的的面试官就像一个主持人,更多的是做一个引导,让你把才能展现出来==。
例如:典型的夺命连环call。
面试官: 你在工作中有处理过性能优化么? 我: 有。 面试官: 那你都坐了哪些性能优化呢? 我: 启动速度、电量、页面、内存....... 面试官: 看来你这块经验还是比较丰富的,那请你讲一下,你是如何减少APP启动时间? 我: ...... 面试官: ok,刚才你提到了内存优化,说一下你对内存泄露的理解。 我: ...... 面试官: ....... 我: ....... 面试官: 那内存抖动这块,你怎么看? 我: .......
上面是一个典型的Android性能优化相关面试(大厂必问技能栈),不知道大家发现上面的套路了么? 优秀的面试官,一定是顺着你的话茬往下走,看看你到底有几斤几两,俗称的剥洋葱。 ==你会什么,我问什么==。这就要求我们对自己“说的话,写的字”要负责。
说的话,为什么和面试官聊了没几句,就让我出门左转了?感觉面试官没有和我深入沟通的欲望,是不是气场不和,对我有偏见?或者招聘需求就是假的,过来调侃我的?
写的字,有没有同学投了简历石沉大海?明明感觉自己闭关修炼了1年,结果还是外包打电话找我面试;或者面试官就根本就没问我高分技能项,屠龙术无处可施。
面试问底层问源码就是卷?
为什么我什么话都想接?为什么我简历上什么都想写?OK,下面请大家看两条技能描述,你觉得他们能找到工作么? 如果我告诉你,凭借这两到三项技能,大厂Offer拿了个遍,惊不惊讶,意不意外?凭什么别人能凭借这两到三条,就能够拿Offer到手软。我写满了,连个面试机会都不给我?==凭什么?==
-
大家都懂Java/kotlin,但是程度一样么? 堆栈,方法区这些你日常工作中接触不到的内容,在你脑海里捣糨糊的时候,人家已经手动实现JVM核心模块了。
-
并发编程在你脑海里只是new Thread的时候,人家已经深入到操作系统级别去考虑并发安全和性能的问题。
-
jekpack等开源框架,你会搭建,你会用(真的会么?);但是人家能够实现核心模块
-
你用的是别人给你造的脚手架,他是给你造脚手架的人,哪种人才更加稀缺?
IT找工作大家都说难,但是真的难么?5k,8k的工作还是搂搂就有的;难的是什么?我该如何成为金字塔尖,难得是我想在后面加个0。
但是为什么薪资和人数成的是反比?程序员基数这么大,这不就和大家高考一样么?择优录取! 为什么考试的时候,不会的问题,答案我抄问题也要写的满满当当,因为你不会,你心虚,我希望老师给我一个人情分。但是,不好意思,这里是职场,我希望你来,能给我创造剩余价值,这里没有人情可言。
然而当我得知跳槽是涨薪最好途径的时候,我发现外面高薪的需求,我怎么都匹配不上?这其实揭秘了一个IT职场中常见怪圈:==对于你来说,我想要的是长足稳步的发展;而公司要的是,你在我这里,当好你的螺丝钉,你的后续,我可能没空也没能力管。==
铁打的营盘流水的兵,这个矛盾,很难调和!
作为一名Android开发如何正确高效的提升?
如果想在写简历和面试的不心虚,这就需要你除了日常工作外,一定还要有计划的提升自己。能看到这里的,或多或少都会有提升自己的想法,让自己在职场里不再“心虚”,但是麻烦的在于:
-
我要工作,还要学习,时间怎么安排?
-
我该从哪里开始学?学什么?
-
为什么我学的时候,感觉还不错,学完之后就忘了,感觉是白给?
-
我该如何快速提升自己,年纪越大,感觉竞争力越低(我的目标除了星辰大海,还有升职加薪)
对标腾讯T9级Android高级架构师进阶路线图
下面给大家分享一份互联网快速提升的对标腾讯T9级Android高级架构师进阶路线图及对应的学习笔记和部分高频面试问题,看看你掌握了多少?这些笔记和面试文档已经全部整理收录在我的Github上了,点击这来我的Github查看获取学习吧或者点击 【这里】 查看获取方式!
架构师筑基必备技能
目前Android APP开发主流语言就是Java语言,Java语言最大的特性就是提高了软件的交互可能性,可以说安卓手机几乎所有应用程序都是利用Java语言来进行编写的。
JAVA知识要点:
1、 Java序列化、泛型与反射
2、虚拟机底层原理
3、Android内存原理
4、 Java高级并发原理详解
5、 编译时技术掌握与实战
6、JDK高级动态代理
7、高级数据结构与算法
8、 Java IO操作
9、
。。。。
Android R FrameWork源码与UI
在Android中,Framework泛指系统架构层。Framework的中文意思是“框架”,在软件开发中通常指开发框架,在一个系统中处于内核层之上,为顶层应用提供接口,被设计用来帮助开发者快速开发顶层应用,而不必关心系统内核运行机制,通常Framework都会隐藏main函数等应用程序必须的组件,开发人员只需把精力放在功能代码的实现上。说简单点,Framework具体的工作也就是为android应用开发的开发人员提供了一系列的服务和API的接口。
UI其实并不是单纯指用户看到的效果。因为在Android开发中,每个控件背后都有一套深层次的体系在支撑,自然而然,会UI不单纯指的是会自定义控件,我们还应该知道自定义控件背后的执行流程,包括从Activity的创建,XML的解析,到每个控件的测量、布局、绘制。当然在中间还夹杂着比如动画、事件分发机制、嵌套滑动机制等知识点。还有谷歌提供的一些UI框架也使我们要掌握的对象,比如Jetpack组件库、Material Design等。
知识要点:
1、 FrameWork源码解析(SDK 30)
2、Android常用组件深入解析
3、JetPack全家桶
4、Android R新特性解析
。。。。。
大厂内部APP调优方案
性能优化是一个项目必须要经历的过程,你的应用好与坏都是在用户使用的过程中反映出来的,如果性能优化没有做好,对于你的应用来说影响是非常大的。尤其是现在的Android市场竞争非常激烈,如果你的应用体验没有竞品的好,那么用户流失是必然的。
性能优化不是一件简单的事情,每个应用的性能好与坏无法由一个人来决定,因为性能优化的维度有太多了,从我们项目的整体架构,到我们代码的每一个细节,再到应用使用环境的测试,只有步步为营,才能做好一个项目的优化。大部分开发者把性能优化指向与不闪退就行,但是实际上性能优化包含了很多方面,比如从简单的启动优化、 UI优化、 卡顿优化、 崩溃优化、 安全性优化,到深层次的弱网优化、 大图加载优化、 储存优化、 高效传输优化、 极限瘦身优化,再到实际开发过程中的OOM问题原理解析、 ANR问题解析、 Crash监控方案。要想把这些优化流程做好,我们不仅从项目架构、代码规范等方面入手,还用学会利用第三方的检测工具来检测项目性能,最主要是,我们需要一套完整的性能优化方案,这正是我们所缺少的,所以我们必须要把缺少的补上, 打造一套真正的完整的性能优化体系,把性能优化流程化,常态化。
1、 APP基础优化
2、APP深度优化
3、开发焦点问题优化
4、编程效率优化
5、项目实战
抖音在APK包大小资源优化的实践
优酷响应式布局技术全解析
网络优化
手机淘宝双十一性能优化项目揭秘
高德APP全链路源码依赖分析
彻底干掉OOM的实战经验分享
微信Android终端内存优化实践
对标腾讯T3.3架构师
Android框架体系架构(高级UI+FrameWork源码) 这块知识是现今使用者最多的,我们称之Android2013~2016年的技术。
Android开发者也往往因为网上Copy代码习惯了而导致对这块经常“使用”的代码熟悉而又陌生:熟悉的是几乎天天在和它们打交道, 天天在复制这些代码 ;陌生的是虽然天天和这些代码打交道,但是并没有深入研究过这些代码的原理,代码深处的内涵。
本篇知识要点:
1、架构师设计思想篇
2、 手淘全套架构设计与实现
3、 开源框架
4、OKHttp网络框架
5、一线大厂核心框架剖析与实现
NDK模块开发(音视频系列)
NDK(Native Development Kit缩写)一种基于原生程序接口的软件开发工具包,可以让您在 Android 应用中利用 C 和 C++ 代码的工具。通过此工具开发的程序直接在本地运行,而不是虚拟机。
在Android中,NDK是一系列工具的集合,主要用于扩展Android SDK。NDK提供了一系列的工具可以帮助开发者快速的开发C或C++的动态库,并能自动将so和Java应用一起打包成apk。
本篇知识要点:
1、NDK开发之C/C++入门
2、JNI模块开发
3、Linux编程
4、底层图片处理
5、音视频开发
6、机器学习
Flutter学习进阶
2021 年无疑是 Flutter 技术如火如荼发展的一年。
每一个移动开发者都在为 Flutter 带来的“快速开发、富有表现力和灵活的 UI、原生性能”的特色和理念而痴狂,从超级 App 到独立应用,从纯 Flutter 到混合栈,开发者们在不同的场景下乐此不疲的探索和应用着 Flutter 技术,也在面临着各种各样不同的挑战。
本篇知识要点:
1、Flutter跨平台开发概述
2、Windows中Flutter开发环境搭建
3、编写你的第一个Flutter APP
4、Flutter Dart语言系统入门
…
微信小程序开发
微信小程序作为现在比较火的编程开发应用场景之一,深受市场的青睐,这让不少开发者眼馋不已。但是对于初学者来说,就完全摸不着头脑了,不知道微信小程序开发制作需要学习那些知识,有需要的朋友可以参考本篇。
本篇知识要点:
1、小程序概述及入门
2、小程序UI开发
3、API操作
4、购物商场项目实战
总结
同样是做Andorid,有的人工作5年工资没变化,有的人工作2年就已经年薪50W。这个现象或许前几年还不明显, 但随着近几年后端技术疯了一般的快速发展,曾经那个只要会个UI啥的就能走遍天下的时代早已不在了,人才水平的分化也越来越明显。
竞争永远都是非常残酷的,毕竟成为一个架构师不是那么容易的,一个架构师的成长来自于机会,努力及天分 !在这个后浪奔腾的时代,不管是你是刚工作还是有几年开发了,我相信以上这份Andorid从底层基础到架构成长笔记你都需要阅读阅读,希望能够对你的职业发展有所帮助。 这些笔记和面试文档已经全部整理收录在我的Github上了,有需要的小伙伴点击这(这这这)来我的Github查看获取学习吧!
以上是关于学弟吐槽:太可怕!现在的Android面试官都是这样不给人“活路”吗?的主要内容,如果未能解决你的问题,请参考以下文章
211程序员面试快手,3个面试官都是清华毕业,看到面试题懵了