Android 进阶难题:普通公司的程序员跟 BAT 大公司的技术差距在哪?该如何选择
Android 发展
也许并非如此。我深深的感觉,在 IT 行业,看起来风起云涌,浪潮迭起,但依然充满前途和光明,其主要原因在于:人们对基于互联网场景下的应用,需求从来就没有因为互联网技术的发展而有所降低,反而越来越细致,越来越具体,产生着越来越深远的影响。
例如,很多年前就说美国互联网泡沫破灭,但今天互联网经济反而越来越重要了;移动互联网也有人唱衰,“说 BAT 才掌握船票,已经垄断中国经济,其他公司几乎毫无机会”。却莫名其妙间,又多出了头条、美团、小米、滴滴、京东、拼多多等数不尽的优秀互联网公司。
再过十年 IT 产业会逐渐退潮么,IT 人才将会毫无施展才华的土壤么。不得而知,而且也不重要。重要的是,即便在互联网技术飞速发展的今天,中国依然对优秀的 IT 工程师非常稀缺。
即使是在某乎上天天可以看到这种:
这种
还有这种
当然了,还有这种
在这种情况下,高级 Android 开发工程师的薪资却不断走高
时至今日,软件实现过程并没有因为软件技术人才的增加而逐渐简化,反而依然非常复杂。我们其实都能看到,在 IT 行业,五年经验以下的开发者始终居于大多数,不管是十年前,还是今天,行业都几乎没有太大的变化。我们能指望现在的年轻开发者能够提前规避我们之前遇到过的那些问题么?
历史告诉我们:**人们走过的弯路,后人其实还是会再走一遍。**看似大爆炸的互联网,知识满地都是。其实,知识过载和知识过乏没有任何区别。所以,我们写过的那些垃圾代码,我们以前遇到过的那些 bug,依然有许多年轻人在沿着我们的步伐再走一遍。
那些隐藏在软件界面的冰山之下,难道 bug 突然减少了?究竟会不会在哪天突然爆发?客户提出的需求,程序员们究竟是如何实现的?
我始终认为,专业工程师依然非常匮乏,无论过去、今天,或未来。
专业工程师或许不一定是某个领域的专家,也许是某些具备优秀跨职能能力的开发者。
他们首先能够基于某些行业场景出发,以独特的视角发掘问题的本质,并快速的将业务问题转换为技术实现,还能抽丝剥茧,发现不同事物之间的关联关系,从而更好的将业务问题以软件的形式进行呈现,
他们也能灵活的发现不同技术之间的优缺点,并使用合适的技术问题来进行适配,使得问题能够以最快的速度进行解决。
他们还能从多个角度出发,而不仅仅是从【软件代码实现】这个维度出发来解决问题,他们所具备的良好的沟通能力和专业素养,使得客户/用户能够愿意倾听提出的建议,从而以最少的代价来解决问题。
成为专业工程师,与选
择“大厂”或选择“小厂”有非常明显的区别么?
大公司和小公司都有不同的发展轨迹,不同的人适合不同的发展方向。无论怎么选,其实都是“小样本”。
个体选择走【跨职能型人才路线】或走【专业人才】路线,对于偌大的中国来说,都其实不会对历史的车轮产生多大的影响,但我们的选择其实是在慢慢的改变我们的生活。
有时,小厂在能够填补我们对于经济上的匮乏,又有时,选择了大厂会让我们以为未来的发展无忧。
确实如此,有时一些小厂反而能够比大厂提供短期内更加诱人的薪资,这对一些经济条件不太好的人来说,犹如“久旱甘霖”;而大厂看似平滑的发展曲线,能够让我们只要沿着设定的方向走下去,肯定不会走错。
但真的小厂就意味着“朝不保夕”,大厂就一定是“高枕无忧”么?谁也说不准。
最重要的,也许依然是认清自己的定位,无论在大厂,还是小厂,使自己成为出色的“专业工程师”,更加全面的成长,或许更能让我们的职场立于不败之地。
技术更新不断,进阶之路不停
除了认清自己的定位以外,本质上真正能够让我立于中年而不败的是什么?
是技术!
你想要提升核心竞争力,最需要提升的是什么?
是技术!
不管你在大厂还是小厂,永远只有技术能够支撑得起你的薪资,而当你薪资虚高而技术水平不足的时候,我建议你马上着手提升,不然下一步很可能就是被迫转行了……
客户端开发的知识点就那么多,面试问来问去还是那么点东西。所以面试没有其他的诀窍,只看你对这些知识点准备的充分程度。so,出去面试时先看看自己复习到了哪个阶段就好。
所以需要梳理知识,提升储备
**架构师筑基必备技能:**深入 Java 泛型+注解深入浅出+并发编程+数据传输与序列化+Java 虚拟机原理+反射与类加载+动态代理+高效 IO
**Android 高级 UI 与 FrameWork 源码:**高级 UI 晋升+Framework 内核解析+Android 组件内核+数据持久化
**360°全方面性能调优:**设计思想与代码质量优化+程序性能优化+开发效率优化
**解读开源框架设计思想:**热修复设计+插件化框架解读+组件化框架设计+图片加载框架+网络访问框架设计+RXJava 响应式编程框架设计+IOC 架构设计+Android 架构组件 Jetpack
**NDK 模块开发:**NDK 基础知识体系+底层图片处理+音视频开发
**微信小程序:**小程序介绍+UI 开发+API 操作+微信对接
**Hybrid 开发与 Flutter:**Html5 项目实战+Flutter 进阶
知识梳理完之后,就需要进行查漏补缺,所以针对这些知识点,我手头上也准备了不少的电子书和笔记,这些笔记将各个知识点进行了完美的总结。
评论