android基础入门教程!Jetpack-MVVM高频提问和解答,真香!

前言

最近看到很多人都在找工作, 而且很多人都感觉今年找工作比去年难很多, 竞争力也增加不少, 因此激发我整理这份资料, 希望能帮到正在找或者准备找工作的童鞋们.

首先我们能否获得一个面试机会, 那肯定是从简历开始, 简历需要做好功夫, 一份好的简历才足够吸引企业得到面试机会, 接着就是面试了, 面试前必须要先做好准备, 多看一下前辈们总结面试题, 有哪一方面不足的地方赶紧补充一下, 还有要了解一下你即将面试那家公司

为何现在Android应用开发这么难找到工作?

随着资本的冷却,整个互联网市场也逐渐的冷静下来.Android应用开发从一开始能说几个四大组件的名词,能随便写个监听事件,就能拿到高达上万的月薪,到现在两三年的开发经验投简历一个月石沉大海的局面,归根到底并不是工作难找了,而是Android应用开发工程师这个职位已经趋于正常,再也不是没什么技术也能拿高工资的香饽饽.

很多人说是因为前些年培训班的大量输出以及资本经济的衰弱,这确实也是一些原因,这些都是我们不可改变的,但是很多人明明要求不高,甚至技术也还行,不说懂底层会NDK,但是Android应用层的基本知识都是掌握的,为什么这部分小伙伴就是找不到工作甚至连面试的机会都没有呢?

就我个人所在的深圳,相比两年前我找工作的时候,是的,岗位确实少了一些,竞争更加激烈了,企业对职位的要求更高,但并不像大家说的那样,已经饱和的不行,基本上都没有面试的机会,更不要说成功拿到offer.
你拿不到offer,是你自身的问题.孔子说:吾日三省吾身,高否,帅否,富否?不好意思,打错了,是:你准备好了吗?你准备好了吗?你准备好了吗?

工作=面试+表现

要想成功拿到Offer,首先是得到面试的机会,然后在面试的时候表现过硬,即可成功拿下.说的虽然是废话,但是很多不明白这两点.

简历

最近在群里跟大家说了一下可能很多人的简历本身是不合格的,所以没有得到面试的机会,有几个小伙伴给我发了简历,问题真的是多多,关于简历怎么写,网上有非常多例子,我需要强调以下几个方面:

  • 不要写你获得了在校获得了什么奖项:大哥,你以为是校招吗?
  • 不要写你做了什么什么系统,老实说做了什么系统的都是培训班出来了,牛人做系统还需要找工作吗?
  • 做了什么项目,请按照格式:(标题,一句话介绍,职责,成绩)
    很多人直接就一个项目名称加介绍,你是做技术的,你做了什么HR完全不清楚
    还有就是很多人不写自己在项目里做了什么成绩,感觉没什么成绩可写.HR非常看重你在团队里做的贡献,所以你可以写你的APP下载量一个月突破多少,或者年收入多少,或者用户数多少.如果对自己的技术比较有信心,可以写技术相关的,例如流畅度行业内优秀范围,错误率0.5%以下,内存占用也是优秀的等等.
  • 简历以简洁干练为准,拒绝花俏.透露着你的强大自信.哪怕你做过很多项目,挑几个最出彩的,以两页为止.

简历的内容和你的面试是息息相关的,一般来说面试官甚至在面试你的那一刹那才开始看你的简历,让你自我介绍其实就是为了粗略的看一下你的简历.所以你写的东西,一定是要自己会的,哪怕你不会,你也要略知一二.如果有把握,用得多,你就写熟悉,不是很懂,只是看过网上的文章介绍,略知一二的原理,你就写了解.例如:

熟悉四大组件,
熟悉多线程编程.
了解数据结构以及常用算法

表现

简历写好了,面试的机会就来了,面试的表现是最重要的.好的面试等于:好的准备+好的简历+好的总结+运气

好的准备=技术准备+面试准备

机会永远都是留给有准备的人,不知道大家为了这次跳槽做了多久的准备呢,去年年底就有想法了吗?今年一开工就准备了吗?
本人为了今年的跳槽准备整整一年,去年我就一直想离职,所以看了比较多技术文档,资料,以及书籍,恶补自己不足.
除了补足自己技术上的不足,在求职的二十多天了,我每天在路上看大量的面试资料,以及一些长问的技术问题,感觉这大半个月所学,所了解的东西,比我过去学习几个月了解的东西还要多.当然这些可能只是一时的,如果你不深入去了解,面试完估计就忘了.

好的简历

前面说了,你的简历上写的东西,你自己都要会,你不会,你就去找资料,去了解.

  • 你说你熟悉TCP/IP,问你三次握手你不知道是什么,会了,问你四次挥手是什么,你又不知道.
  • 你说你内存优化了了以后,降低了35%,我问你怎么优化的,有什么套路,你居然说不出来,你说,我作为面试官我会信你吗?
  • 你说你会自定义View,我问你View的绘制过程是怎么样的你居然不知道?
    还不赶紧对这你简历的知识点一个个补.

好的总结

你面试的时候,面试官让你写一个单例,你不会,问你java的锁有几种,你不会...
不会你记下来,一个个总结,然后回来赶紧找资料,了解一下原理,使用方式等等,面试多了,自然就知道自己的不足,通过大量的总结,你就会越来越强.

运气

面试的时候运气也很重要的,我面试的时候遇到过一个面试官,一直问我java的问题,而且一直问HTTP,Socket,线程的知识,而网络这块自己确实懂的不多,再加上面试官本身也描述的不是很清楚,很多时候不知道他问什么.直接导致我会的很多东西他还没问出来就挂掉了.甚至遇到过一个面试官问我一个控件占用多少K内存的,还是BAT的...

所以有时候面试官也很重要.遇到不好的面试官只能怪自己运气不好,毕竟一个人技术上不可能样样都懂.

面试套路

  • 去面试之前,可以先跟打电话来的人事问清楚,你们招的是应用还是底层,大概是做什么,是做APP开发,还是做车载,TV.Android开发大概是多少人等等一些基本信息,免得浪费彼此的时间.

  • 面试之前一定要看多点面试题,多手写代码,千万不要觉得自己经常写代码很溜,那是你用IDE写的.

  • 要想出一个自己最擅长的地方,哪怕你说画界面,写xml布局,你也要翻出花来,你为什么能画的比比别人好,好在那里,只有确定你跟普通应聘者的优势,面试官才觉得你是一个优秀的人

  • 要表现出自己是一个上进的人,有职业规划的人

  • 面试的时候先去小公司试试水,知道自己的不足.一开始就去你心仪的大公司,很可能因为你准备不足而直接错过了.

  • 面试的回答问题时,一定不能跟面试官对着干,哪怕他说的可能是错的.

  • 获取好感:人都喜欢被赞同.所以你回答问题的时候,要多肯定,引用对方说的话,或者对方的公司.比如:

面试官:Android的机型种类繁多,你是怎么适配的?
回答:就像您刚才所说的那样,因为Android的机型特别多,所以我们在APP的开发过程中...

多引用对方的话其实就是对他的一种赞同,因为面试官说了这些话,说明他心中的观点是这样的,你附和他,他就觉得你的回答有道理.

  • 回答要具有条理.使用:第一种方法,第二种方法,第三种方法...
    或者:首先,接着,然后,最后...

  • 面试官说问题的时候,你要说:是的,您说的对.但是这写词不可频繁出现,而且要紧跟着你自己的理解,不然会被看成是奉承

文末

初级工程师拿到需求会直接开始做,然后做着做着发现有问题了,要么技术实现不了,要么逻辑有问题。

而高级工程师拿到需求会考虑很多,技术的可行性?对现有业务有没有帮助?对现有技术架构的影响?扩展性如何?等等...之后才会再进行设计编码阶段。

而现在随着跨平台开发,混合式开发,前端开发之类的热门,Android开发者需要学习和掌握的技术也在不断的增加。

通过和一些行业里的朋友交流讨论,以及参考现在大厂面试的要求。我们花了差不多一个月时间整理出了这份Android高级工程师需要掌握的所有知识体系。你可以看下掌握了多少。

混合式开发,微信小程序。都是得学会并且熟练的

android基础入门教程!Jetpack-MVVM高频提问和解答,真香!

这些是Android相关技术的内核,还有Java进阶

android基础入门教程!Jetpack-MVVM高频提问和解答,真香!

高级进阶必备的一些技术。像移动开发架构项目实战等

android基础入门教程!Jetpack-MVVM高频提问和解答,真香!

Android前沿技术;包括了组件化,热升级和热修复,以及各种架构跟框架的详细技术体系

android基础入门教程!Jetpack-MVVM高频提问和解答,真香!

以上即是我们整理的Android高级工程师需要掌握的技术体系了。可能很多朋友觉得很多技术自己都会了,只是一些新的技术不清楚而已。应该没什么太大的问题。

而这恰恰是问题所在!为什么别人高级工程师能年限突破30万,而你只有十几万呢?

就因为你只需补充你自己认为需要的,但并不知道企业需要的。这个就特别容易造成差距。因为你的技术体系并不系统,是零碎的,散乱的。那么你凭什么突破30万年薪呢?

我这些话比较直接,可能会戳到一些人的玻璃心,但是我知道肯定会对一些人起到点醒的效果的。而但凡只要有人因为我的这份高级系统大纲以及这些话找到了方向,并且付出行动去提升自我,为了成功变得更加努力。那么我做的这些就都有了意义。

喜欢的话请帮忙转发点赞一下能让更多有需要的人看到吧。谢谢!

以上系统大纲里包含的所有技术资料,我这里都有的。可以免费分享给有需要的朋友!

资料领取方式:点击我的GitHub

上一篇:节流与防抖


下一篇:关于 TabControl 获取 被鼠标右键的 TabPage 而编写的函数...