程序员,一个特殊的群体,我们不知道为什么加入这个行业,也不知道这个行业还能做多久,不同人有着不同的故事、有着不同的迷茫。
有的开发者起点太低,比如专科或者高中毕业,他们也在做IT。很多在我们眼里很一般的公司,他们却连面试机会都得不到,他们很苦恼很迷茫,甚至有很多人甚至开始放弃程序员这个职业。
天空依旧很大
互联网行业一直是社会发展的一个趋势,这个毫无质疑。特别是移动互联网行业,这几年快速发展起来。而且像BAT这些大型的互联网企业的用户也是主要以移动端用户为主,目前市场做互联网开发的人或多或少都会接触些移动开发的东西,包括Java,C/C++,前端,Python等等。iOS开发和Android开发就不用说了本身就属于移动开发。所以程序员毋庸置疑依旧是目前热门的行业。
却不知该往哪飞
虽然互联网行业是一种趋势,但还是有很多程序员找不到满意的工作,高不成低不就,想必这是很多程序员面临的一种烦恼。从而开始判定行业不行了,要准备转行了。
就拿我前段时间在CSDN里面看到的一篇文章《关于Android程序员最近的状况》。是《Android开发艺术探索》书籍作者任玉刚老师所写。想必很多做Android开发的人都认识任老师。这篇文章就有介绍:目前移动互联网慢慢开始回归平淡,由于APP创业风口已过,大批创业公司死亡,导致了Android岗位减少。一些公司并不需要一个Native的APP,他们只需要在APP中嵌入一个网页。RN.Weex对Native概念的冲击。导致近期Android开发者近期不太好找工作,但Android开发高级工程师目前短缺。在这个时候,你需要提高自己的技术。Android程序员失业的事情大家不用担心,若干年内都不会出现。
如何提升技术
技术提升,是一个复杂的问题,也是一个简单的问题。技术提升只有一条路,那就是大量的时间投入 + 良好的知识梳理能力。但凡一门技术,你都要投入大量时间,去全面系统的学习,并在学习的过程中自我梳理和总结,任何投机取巧的学习方式都是不可取的。
如果知识是一棵树,那么你需要建立一个树状的知识网,每个树干和树枝构成了这张网络,网络内部四通八达、互相连接。这个时候,每个知识点都位于一个个的网格之中,你还需要去熟悉大部分常用的网格,达到这种状态,这门技术才算理解的透彻。同时,技术提升分为两个方面:一是,目前工作所用到的技术。(比如MVP架构设计等)二是,目前工作可能用不到,但社会比较前沿的技术(比如NDK音视频解码,Open GL,Open CV,AR等等)