秋招上岸字节跳动后,朋友追着面试心法一直问...

不 忘 初 心,方 得 始 终

〇、秋招经历

说起我的秋招,简直可以用一个词概括,就是“逆袭”。七月份离职后就开始准备秋招面试互联网大厂,一开始,华为一面没过,三七互娱笔试没过被捞起来后一面又挂,面的信心受挫后,中间没有再继续投递。而是沉下心准备复习,当身边朋友陆续拿到offer后,我也挺纠结要不要选个小厂安安分分的上班。

但是不甘心的我还是选择沉心复习,终于在十月底,赶在秋招的尾巴,投了四五家网审还没截止的互联网大厂,没想到,面试一路过,最后成功上岸字节,结束秋招。

我的情况

毕业于南方某不知名211的我已经在Android圈混迹了三年,三年来的打工生活让我明白了生活的艰辛和不容易。为了选择更好的生活,我明白我得努力,我要去更高级的工厂,我要当更高级的打工人。

在准备面试和参加面试的过程中,总结了一些个人进阶的经验和心得,梳理一下,希望对准备面试的人有些帮助,尤其是不懂面试知识怎么复习沉淀的朋友。这里不谈及具体的面试题目,而是一些通用的方法论。

一、抛开面试,系统学习

在一切之前,应该系统地去学习Android基础和进阶知识。 对Android开发而言,这些基础包括计算机基础、Java、JVM、Android四大组件、View、多线程、Handler消息机制、适配、Recyclerview等等(不一一举例)进阶包括APK打包优化知识点、MVc/p/vm架构知识点、jetpack、NDK、framework等等,应该先抛开面试的目的去学习这些知识,建立自己的Android知识体系,然后再结合面试题,运用掌握的知识去理解并解决面试题。

然而,很多人为了应付面试,Android技能掌握不扎实,就拿着面试题死记硬背,结果在面试中被面试官问了几句就说不下去了。(提醒:不要本末倒置,千万不要以为背面试题就是树立自己的知识体系。)

这里,推荐一些Android开发面试前系统学习的途径和方法。

Android核心知识进阶文档

总共330页的Android核心知识进阶文档是每个Android开发必备之良品,是很权威很齐全的Android开发进阶文档。Android开发者可以在建立自己的Android知识体系时使用,可以查询到每个Android知识点的概念、方法、对技术知识点的解释还有一定的深度。

注:如果没有这份Android核心知识进阶文档的朋友,可以【在此处免费打包获取】

官方文档

一些框架和工具的学习,一定要充分利用官方文档,一般都会有快速上手的教程。因为这些版本更新很快,有些书籍跟文章的部分内容已经不适用了。建议从官方文档入手,不懂的地方也可以结合Android核心知识进阶文档一起学习。

博客文章

把博客放在最后,是因为它不适合系统学习,更适合单点强化,此时你应该拥有自己Android知识体系后,并且清楚文章内容的知识点。Android开发者比较聚集的两个博客平台是简书和掘金。

在建立起自己的Android知识体系以后,在准备第二点

二、精准出击,逐个击破面试题考点

面试本质也是考试,面试题就起到很好的考纲作用。想要取得优秀的面试成绩,刷面试题是必须的,除非你样样精通。

网上有很多面试题的收集文章,在简书上就能找到,比如关于自定义 View ,99% 的面试官都爱问这些问题(附答案解析)。另外。这篇文章字节跳动Android Framework高频面试题总结之( AMS )罗列了framework的一些重要考点的好文,也是很好的备面资料。

在看面试题的时候,应该从面试题发现考点,然后深入学习考点相关的知识,千万不要陷入背题的误区。毕竟题目是多变的,但考点相对固定。

兼听则明,偏听则暗。对于网上看到的各种面试题答案,应该思考是否正确可行,是否还有改进的地方。大部分博客对知识点的总结无法做到完全全面。所以,我对很多考点,我都会 Google 一下,结合多篇文章,然后总结出自己的答案。

三、面试是一种输出

很多人刷了很多面试题,看了很多面经,知识储备充分,但面试的时候,即使是自己熟悉的考点,也很难令面试官满意。其关键原因在于,学习是一种输入,但面试是一种输出。

面试需要的不是你懂,而是要让面试官知道你懂,你必须有能力将考点中的要点联系起来,连贯的说出来,这并不是看过一次就能达到的。但不少人以为看过这类文章,知道这个点,就可以了。事实上,只是“知道”远远不够。

这种问题,根本上,是对技术点的不够深入,不够熟悉,没有形成自己的理解。我也经历过这一过程,你知道这些概念,自己也能分清,但难以向别人讲明白。

为了解决这个问题,你应该知道以下几点:

  • 首先,学习过程注重理解而不是记忆。

  • 第二,一个知识点,需要通过多篇文章学习,重复学习,加深理解,总结出自己的答案和看法。

  • 第三,刻意练习。如果你有朋友,可以相互提问。如果没有,也可以自问自答。

四、注重表达逻辑

如果上一点是说能正确回答问题,这点则是能更好的回答问题。一个逻辑清晰的回答,能让面试官感受到,面前的小伙子不仅熟悉这个问题,还有比较优秀的语言能力和逻辑能力。

五、扬长避短,但尽量争取

对于那些每个应聘者必备的技能,必须要熟悉再熟悉,不要让基础成为自己的短板,切合上一条注重基础。而对于其它技能,深入学习其中的几个,然后想办法引导面试官提问这些方面的问题。最有效最常见的引导方式是简历引导。

后话

对于面试,说几句个人观点;

面试,说到底是一种考试。正如我们一直批判应试教育脱离教育的本质,为了面试学习技术也脱离了技术的初心。但考试对于人才选拔的有效性是毋庸置疑的,几千年来一直如此。除非你有实力向公司证明你足够优秀,否则,还是得乖乖准备面试。这也并不妨碍你在通过面试之后按自己的方式学习。

其实在面试准备阶段,个人的收获是很大的,我也认为这是一种不错的学习方式。首先,面试问题大部分基础而且深入,这些是平时工作的基础。就好像我们之前一直不明白学习语文的意义,但它的意义就在每天的谈话间。

所谓面试造火箭,工作拧螺丝。面试往往有更高的要求,也迫使我们更专心更深入地去学习一些知识,也何尝不是一种好事。

PS:需要文章上方所提到的Android核心知识进阶文档的朋友,可以【在此处免费打包获取】

猜你喜欢

转载自blog.csdn.net/qq_39477770/article/details/110138347