昨天天知乎发了一篇文章之后;十投九挂,现在Android面试太难了…

私信收到了一个小伙伴经历很奇葩;

“在现在这个公司都工作了3年了,9K薪资,一毛钱工资都没有涨过…”
“最奇葩恶心的是,老板嫌我工资高,把我优化了! 然后因为疫情,现在都还没有找到合适的工作,想起每个月的房贷就脑壳痛”

我听了后倒也算是长见识了。开公司的人多了后确实什么奇葩都有。裁员还能接受,但是非得找这种奇葩的理由。工作3年拿9K的工资还算高么?

今年年初因为疫情的影响,明显感觉到整个行业都焦虑得多了。比如平时一些读者朋友私信我吐槽;

“刚找到一个工作,这工资还没我现在的高,但是个创业公司,跟我说做起来还能分到期权。我挺心动的就是怕被画饼...”

“怀疑自己干这个技术没有出路啊,我该怎么搞,换行业吗,还是去找副业好点?”

“2019年技术方面毫无提升,我今年想强迫自己体系化学习提升一下,能帮忙给点指导和建议不?(疯狂暗示;给我发了一个小红包嘿嘿)?”

至少半数Android开发的朋友都对自己的职业和未来感觉迷茫。

说白了,就是技术水平和发展方向的问题。实力不够强,也没啥方向和规划,不迷茫才怪。

道理很简单,但是实行起来困难却很大。如果想逼着自己去读源码,学习一些主流的技术。但是受到小公司的技术栈和视野格局的束缚,根本不知道应该学什么!或者不知道学了有啥用。

更多情况是这样子;
CV就完事了,为什么要花那么多时间精力去读源码弄懂原理?
组件化开发,NDK开发,插件化等,我们公司又用不到,学了也用不上

站在第三方视角,你是不是看明白了为什么大多数Android开发只能待在小公司上不去了呢?

Android开发者该如何提升自己?

说说我的两点建议:

1、横向发展:(适合有自己专精技术的人)

在自己擅长领域深入钻研的同时,会Hybrid开发(Flutter,RN,H5)之外,会web开发、微信小程序等,再过5年你也完全不用担心找工作。但是,这确实比较难,全栈容易发展成全菜,就是啥都知道,啥都不精!

2、纵向发展:(适合大多数人)

如果做应用开发,就往应用架构方向发展;如果做系统层开发,就钻研底层驱动。

可以从以下这些方面进行学习:

移动架构

架构展示层:MVC、MVP、MVVM、Android Architecture Components;

架构层:模块化->组件化->插件化->沙盒/双开技术;

基础进阶:

比如高级自定义View、Android Framework层原理, App 管理机制等等;

JNI 和 NDK 开发也是比较常见,5G来了,招聘单位都在给自己公司规划小视频功能,然而我们却连NDK都不懂;

学习开发语言:

比如Kotlin,做底层C/C++是必不可少的,还有一个最容易忽略的 Java语言本身的高级面向对象思想;

源码:

看懂并且熟悉源码,熟悉其实现原理,争取做到能自己二次封装三方库。

学习方向很容易规划,但是如果只通过碎片化的学习,对自己的提升是很慢的。

Android进阶需要学习哪些技术?

我搜集整理过这几年阿里,以及腾讯,字节跳动,华为,小米等公司的面试题,把面试的要求和技术点梳理成一份大而全的“ Android架构师”面试 Xmind(实际上比预期多花了不少精力),包含知识脉络 + 分支细节。

Java语言与原理;

高级UI;

性能调优;

NDK开发;

前沿技术;

从我搜集整理中了解的信息,这些技术熟练掌握的开发者,国内任何一个大城市到手薪资都在40W以上。

而对于在职阿里,腾讯这种巨头公司,除了技术过关,还具备管理能力,并且职称不低的(比如阿里P7),年薪更是在百万以上!

网上学习 Android的资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。建议你先制定学习计划,根据学习计划把知识点关联起来,形成一个系统化的知识体系。

我在搭建这些技术框架的时候,还整理了系统的高级进阶教程,会比自己碎片化学习效果强太多,石墨文档可见;《Android架构视频+学习笔记》

搭建知识框架很重要

我们在学技术的时候,如果没有注重搭建知识框架的话,学到后期的话你就会遇到一个问题,就是会感觉到自己之前学习的知识很乱,不成系统,再加上行业技术更新很快,越往后自己学习的知识会越来越多,而之前的学习又是零散的自己没有整理的,你就会感觉自己所掌握的这些知识是散乱的。

就好像很多点,线可能已经连接成了,但是就是组不成一个面。当我们做一个大一点的项目,需要熟练用到很多相关技术面,甚至会用到组件化技术。如果你长期只使用一些常用的技术点,那么你可能还有很长一段时间要待在小公司搬运代码了。

怎么样搭建知识框架呢?

这里分享的方式是看视频教程来搭建知识框架,很多技术大佬总结出来的非常好的方式。

这是个通用的方式,可能更加适合那些技术处于初级到中高级阶段的朋友,当然,这里我说一点,我发现在很多看视频学习的朋友经常会犯这样的一个错误,就是对视频教程的欲望很强导致的松鼠病,什么意思呢?就是很多朋友到处找视频教程,然后各种囤积,顶多是这个看看,那个看看,感觉这个也好那个也好,于是这个也想看,那个也想看,导致的最终结果就是,视频教程倒是收集了不少,可是没有一个真正的看完过,你说,你是不是就是这样的?

其实这就是学习技术的一大禁忌,它会严重的欺骗你,让你觉得自己学的很多,实则不仅学的很少,而且还拖慢了你的提升的进度!我告诉你啊,关于视频教程,找一套差不多的就行,就这市面上流传的一些培训班的视频教程,其实都大差不差,只要不是年久失修的那种都行,要知道这就是培训班的啊,所以用来搭建知识框架很合适,找一套就行了,多了没任何好处,现在听我的,看看你收藏的资料里面是不是有好几套同类型的视频教程,听我的,留一套,其他的都删除吧!

记住,只留一套用来搭建知识框架,只留一套,一套,就一套(如果你没有的话,就用我上面分享你的那一套很不错)

然后你就靠这套视频教程来搭建知识框架,那么有了这么一套视频教程之后,又该如何去做呢?

这个你要知道,一般这些视频教程都是按照知识点的从前到后,从浅到深的按阶段讲解的,所以你完全可以按照这个视频教程里讲解的顺序去搭建这个知识框架,在搭建知识框架这块,我看到很多人使用思维导图来搭建,我上面也是这种方式,把各个知识点都整理到思维导图上。

找到配套的学习教程,把每个技术点都填上,效率就会特别高。这样你的知识框架才算真正的搭建完成!至此,你向高级工程师迈出了最重要的一步。

最后

回到开头的事情;
“三十年河东,三十年河西。等我技术能力上去了,那个傻x老板加薪我也不会回去了!”

“那个时候,你也看不上那么小的公司了吧?”

“Android开发3年老板嫌我工资高,把我辞了…”相关推荐

  1. “Android开发3年老板嫌我工资高,把我辞了

    移动架构: 架构展示层:MVC.MVP.MVVM.Android Architecture Components: 架构层:模块化->组件化->插件化->沙盒/双开技术: 基础进阶: ...

  2. Android开发笔记(一百六十三)高仿京东的沉浸式状态栏

    前面的文章介绍了如何实现广告轮播的Banner效果,本想可以告一段落.然而某天产品经理心血来潮,拿着苹果手机,要求像iOS那样把广告图顶到状态栏这儿.刚接到这需求,不禁倒吸一口冷气,又要安卓开发去实现 ...

  3. Android开发到底做什么?

    android开发时下很流行,且工资高需求量大.随便大街上看一堆人手里都是拿着android手机,屌丝嘛我也是用android手机的,便宜嘛,不好用了不好看了换个. android手机类等移动产品数不 ...

  4. Android初级第一讲---Android开发环境的配置

    博客出自:http://blog.csdn.net/liuxian13183,转载注明出处! All Rights Reserved ! 目录 简介. 4 JDK的安装. 5 Eclipse的安装. ...

  5. android工程师饱和,Android开发是否饱和了?你所不了解的Android开发

    原标题:Android开发是否饱和了?你所不了解的Android开发 Android开发是否饱和了?是很多人关心的问题,对于想要从事Android开发的人更是头等大事.如今,就业难成横亘在求职者面前的 ...

  6. Android开发笔记(序)写在前面的目录

    知识点分类 一方面写写自己走过的弯路掉进去的坑,避免以后再犯:另一方面希望通过分享自己的经验教训,与网友互相切磋,从而去芜存菁进一步提升自己的水平.因此博主就想,入门的东西咱就不写了,人不能老停留在入 ...

  7. Android开发笔记(序)

    本开发笔记,借鉴与其他开发者整理的文章范例与心得体会.在这里作为开发过程中的一个总结与笔记式记录. 如有侵犯作者权益,请及时联系告知删除.俗话说:集百家成一言,去粕成金. ************** ...

  8. Android开发笔记(序)写在前面的目录大全

    转自  湖前琴亭 的博客https://blog.csdn.net/aqi00/article/details/50012511 知识点分类 一方面写写自己走过的弯路掉进去的坑,避免以后再犯:另一方面 ...

  9. 移动App 市场已经趋近饱和,那么 Android 开发何去何从?

    到了2016年年底时,市场上Android的招聘需求大量减少,当然这时候有一批相应的创业公司已经衰退,对应培训市场上已经不再把Android开发作为热门核心的培训科目,到现在创业也不用一开始就做一个A ...

最新文章

  1. java8中的时间处理6 - 格式化
  2. 如何从文件内容创建Java字符串?
  3. ifconfig 命令介绍
  4. java反射创建对象_java8反射创建对象
  5. Linux中常用文件的含义
  6. 前端学习(3142):react-hello-react之父组件render
  7. 基克的聚合 机器人_重做秒变神器!基克的聚合成辅助标配
  8. GDT蜘蛛侠 - 元搜索采集: 集成 百度,谷歌,搜搜,搜狗,有道 5大搜索引擎,其它可定制...
  9. Node.js 把抓取到的电影节目列表单发或者群发到QQ邮箱
  10. java监听文件改名字_java监听文件目录的改变
  11. 基于ZigBee设计的天气监测系统
  12. CSS——文字溢出省略成点点点
  13. php+js扫码枪实现签到的功能
  14. 百度Apollo自动驾驶_百度车载小程序
  15. 索引的数据结构--MySQL
  16. Rsutdio安装REmap包出现错误及解决办法
  17. 文件上传、切片上传、秒传等
  18. CLDS(劳动力动态调查)2012-2016数据
  19. 对Shortcut使用的理解
  20. Asp.net Core 6.0 使用EF DB First 连接mysql

热门文章

  1. 6JS库-前端框架(库)-jQuery选择器
  2. linux 命令行修改mac,Linux下修改MAC地址
  3. 大数定理与中心极限定理
  4. Wormhole for mac(在Mac上控制iOS和Android设备)
  5. 在Ubuntu下登录qq的时候显示“您已登录xxxxx,不能重复登录”
  6. 58同城android客户端手机号码解密方法
  7. win10实现debug
  8. quartz简单配置
  9. MySQL 获取所有库名、表名、字段名
  10. springSecurity 中不能抛出异常UserNameNotFoundException 解析