本文收集整理了各大厂常见面试题N道,你想要的这里都有内容涵盖:Java 相关、Android 基础、Android Framework、三方源码、算法与数据结构、等技术栈,希望大家都能找到适合自己的公司,开开心心的撸代码。
我普通本科毕业,在长沙待了四年,其中只换过两家公司。去年这个时候,公司业绩不好要裁人。主管平时跟我关系比较好,说我本来也在被裁的考率名额中的,他帮我跟领导说了一堆好话才没事。我请主管吃了一顿火锅。
但是我无法像以前那么心安理得混日子了。因为我去年首付买了房。原本想着每个月稳定税后拿个8k的工资。挺满足的(8k在长沙算中高水平了)
想不到我要求这么低还差点被淘汰了??
原来我根本没有资格安于现状。认真的反省之后,我开始想着如何学习提高自我的价值和竞争力。
首先是寻找自己身上的问题,我上知乎看了那些大佬的建议,对于我们这种初级的Android开发真的是一针见血戳到痛点;
那些大佬们的建议大致都一样;先搭建知识框架。然后深入学习,包括底层源码都要去理解和掌握。
我们在学技术的时候,如果没有注重搭建知识框架的话,学到后期的话你就会遇到一个问题,就是会感觉到自己之前学习的知识很乱,不成系统,再加上行业技术更新很快,越往后自己学习的知识会越来越多,而之前的学习又是零散的自己没有整理的,你就会感觉自己所掌握的这些知识是散乱的。
就好像很多点,线可能已经连接成了,但是就是组不成一个面。当我们做一个大一点的项目,需要熟练用到很多相关技术面,甚至会用到组件化技术。如果你长期只使用一些常用的技术点,那么你可能还有很长一段时间要待在小公司搬运代码了。
很多技术大佬总结出来的搭建知识框架的方式;
1.看视频教程
2.搜索相关知识或路径,自我组织知识框架
我选的是第一种相对简单容易实行的方式。于是在多番对比和寻找后,买了一套腾讯课堂的腾讯T3级别的Android高级进阶视频教程学习。工作仍然继续,用来学习的时间都是下班挤出来的。
这一年很长,经常加班加点赶项目,下班了在地铁上就打开手机看直播课学习。大多时候是很晚回去后对着录播视频自己去敲一遍,不过有源码和课件提供而且一直有老师在线答疑,倒是没怎么落下。正常八个月学完的整个系统进阶课程,我用来差不多一年的时间。
今年下半年感觉自我水平有了质的提升,开始准备跳槽的事情,但是长沙没有什么大厂,我的眼光已经不在这些小地方了。
然后联系了技术交流群里平时经常交流的一个上海的朋友,去他那边暂时落脚,然后上海找工作。
九月出裸辞掉后,坐飞机到上海。一个月面试经历,本月中旬拿到了爱奇艺的高级工程师offer。25k,13薪,加年终奖等福利,年薪大概在30W。
刚刚拿到offer的时候真的那种开心带着自豪。我以前根本没想过我能走到这种高度
但是没几天就平静下来了。上海跟长沙不一样,魔都的竞争和生活水平让我很快就不敢再飘了,25k在这也只是普通水平而已,并且我没啥背景,之后要走的路不会轻松的,所以一刻也不能懈怠啊。
下一个目标是,十年内在上海买一套房。
有人可能会想给我泼冷水,上海房价那么贵,买不起怎么办?
买不起就回长沙养老呗哈哈哈
作者2013年从java开发,转做Android开发,在小厂待过,也去过华为,OPPO等大厂待过,18年四月份进了阿里一直到现在。
参与过不少面试,也当面试官 面试过很多人。深知大多数初中级Android工程师,想要提升技能,往往是自己摸索成长,不成体系的学习效果低效漫长,而且极易碰到天花板技术停滞不前!
我整理了一份阿里P7级别的最系统的Android开发主流技术,特别适合有3-5年以上经验的小伙伴深入学习提升。
主要包括阿里,以及字节跳动,腾讯,华为,小米,等一线互联网公司主流架构技术。如果你想深入系统学习Android开发,成为一名合格的高级工程师,可以收藏一下这些Android进阶技术选型
我搜集整理过这几年阿里,以及腾讯,字节跳动,华为,小米等公司的面试题,把面试的要求和技术点梳理成一份大而全的“ Android架构师”面试 Xmind(实际上比预期多花了不少精力),包含知识脉络 + 分支细节。
Java语言与原理;
大厂,小厂。Android面试先看你熟不熟悉Java语言
高级UI与自定义view;
自定义view,Android开发的基本功。
性能调优;
数据结构算法,设计模式。都是这里面的关键基础和重点需要熟练的。
NDK开发;
未来的方向,高薪必会。
前沿技术;
组件化,热升级,热修复,框架设计
网上学习 Android的资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。希望这份系统化的技术体系对大家有一个方向参考。
我在搭建这些技术框架的时候,还整理了系统的高级进阶教程,会比自己碎片化学习效果强太多,GitHub可见;《Android架构视频+学习笔记》
当然,想要深入学习并掌握这些能力,并不简单。关于如何学习,做程序员这一行什么工作强度大家都懂,但是不管工作多忙,每周也要雷打不动的抽出 2 小时用来学习。
81.md)**
当然,想要深入学习并掌握这些能力,并不简单。关于如何学习,做程序员这一行什么工作强度大家都懂,但是不管工作多忙,每周也要雷打不动的抽出 2 小时用来学习。
不出半年,你就能看出变化!