一般来说技术团队的金字塔顶尖往往是技术最牛的人做底层架构师(或高级工程师)。所以底层架构师在广大码农中的占比大概平均不到 20%。

然而80%码农干上许多年都是重复以下内容,所以做不了架构师,正在辛苦工作的程序员们,你有没有下面几种感觉?

①我的工作就是按时完成领导交给我的任务,至于代码写的怎样,知道有改进空间,但没时间去改进,关键是领导也不给时间啊。

②我发现我的水平总是跟不上技术的进步,有太多想学的东西要学,Swoft用的人最近比较多啊,听说最近Swoole比较火,还有微服务,听说PHP又更新了……

③我发现虽然我工作5年了,除了不停的Coding写业务代码,Ctrl+C和Ctrl+V更熟练了,但编码水平并没有提高,还是一个普通程序员,但有人已经做到架构师了。

④工作好几年了,想跳槽换个高薪工作,结果面试的考官都问了一些什么数据结构,什么垃圾回收,什么并发架构、协程编程之类的东西,虽然看过,但是平时用不着,看了也忘记了,回答不上来,结果面试官说我基础太差……

如果有以上问题,那么你绝对进入学习误区走了弯路;如果我们要成为架构师,我们自己要面临的三大问题:找准定位:我是谁、我在哪里?怎样做好架构师:我要做什么?如何搭建架构师知识体系:我该怎么做?

如果你想要往工程师或底层架构师的方向发展的话,那或许你可以看一下我分享给你的这份进阶路线图,主要针对1到5年及以上的C/C++开发人员,这些也是目前中大型互联网企业比较常用的技术,那么来详细看看

一:切实掌握好C语言基础能力
学习C/C++编程,首先应该掌握好的就是C语言,C语言不仅仅是编程的基础,在我们进阶的过程中也是有着相当大的作用,有些程序员开始学习的Java或者Python直接入门的,这样的学习过程在后期进阶的过程中会有一定的影响,影响程度视情况而定。

二:算法与数据结构
数据结构与算法的重要性相信大家也是非常清楚的,当你是码农的时候这个东西有需要有一定的掌握,那么你想要进阶的话,它们你是必须要更好的提升的一项!

三:C++编程知识
任何脱离细节的C/C++工程师都是耍流氓,向上能运筹帷幄,向下能解决一线开发问题,C/C++工程师需要切实掌握好基础语法,s/linux编程、QT开发等企业项目开发能力并熟练运用。

能掌握以上知识这些人必然具备在技术上独当一面的能力并且清楚自己未来的发展方向,从一个Coder逐步走向CTO或是底层架构师,成为项目组中不可或缺的人物。