写点什么

技术编程人员成长的 9 个段位

  • 2020-03-02
  • 本文字数:2845 字

    阅读完需:约 9 分钟

技术编程人员成长的9个段位

很多人都问,技术人员如何成长,每个阶段又是怎样的,如何才能走出当前的迷茫,实现自我的突破。所以我结合我自己 10 多年的从业经验,总结了技术人员成长的 9 个段位,希望对大家的职业生涯,有所帮助。

第一段

刚接触编程的时候,会觉得这是个很神奇东西,平淡的英文字母,再加上标点符号,竟然可以有这么大魔力。会觉得编程是很有自豪感的事情,因为在我们看来,它就是在创造,用这些跳动的字符,创造我们想要的效果。


我当时第一次看到编程的时候,就是这种感觉,我也不知道它是什么,如何做到的,但是就是感觉这很神奇,是一种不懂但是觉得很酷的感觉,然后就会着迷,开始想学。

第二段

开始学编程的选择,是没有选择的,因为什么都不懂,可能最先从哪里看到的,就模仿学什么,然后就走上了编程之路。


我最先接触的语言是 Pascal 语言,当时我不知道它是什么,只知道它叫这个名字。这门语言是在高中的时候,计算机书本上的,我学了一些,与其说是学,还不如是记,因为我没有练过,没有运行过。

第三段

走上了编程之路后,学习得方式主要看语法,这个是为了入门,但是并不太知道为什么会这样,但是能用,能模仿,这时候算是入门了。


入门后,会迫不及待的,使用实验各种效果,而且这些结果可能都不是自己写出来的,因为入门了,环境可以搭建,会运行,就会从很多地方拷贝一些代码,运行试试,然后感受成功后的自豪感。


我真正做出来东西的语言是 VB,可以通过拖动生成界面,然后再填充需要的逻辑代码,就可以实现一些功能,比如 MP3 后缀名处理,HTML 转 TXT,那时候主要的目的,还是满足自己的需要,可以做一些酷的东西,并不是真的把它当成一门用于工作的技能系统的学习它,但是即使这样,已经够我在同学面前自豪了。

第四段

真正的在走向工作之前,这时候的学习,就开始系统性,毕竟要决定靠这个谋生了。这时候我们会看一些实战类的书籍,比如如何做网站,通过什么框架,用到哪些数据库、服务器等等,这时候基本上已经走向正路了。


但是这个时候,我们只是会用阶段,大部分人还不知道为什么,比如 Spring 框架,我们知道这么配置可以用,可以 IoC 反转,但是不知道怎么实现的,原理是什么。


这个时候最大的特点就是,给分配的工作都能做,不太会的,也可以通过 Google、百度解决,大不了拷贝别人的一份,改改即可。


不管怎么样,现在已经初步具备框架系统体系了,可以谋生了。

第五段

随着工作时间的加长,经验的增加,你会渐渐的发展,很多常用的知识,自己只会用,但是并不懂,比如内存的分配,类的加载顺序,IoC 的原理等等。


这时候大概是工作 2 年左右,如果快的话,可能会在工作第一年就意识到。这时候你会刻意的去买了一些讲解基础类的书籍,比如以前从来没有认真读完的《Thinking In Java》又开始重读了,并且读的很仔细,还会配合例子测试一下,俨然像一个刚入门的,但是你知道你很清楚你缺少的是什么,想从中学到什么。


然后你可能还会尝试买一些比较深入的书籍,比如讲解原理的,高级特性分析得等等,这时候你会逐步的在你现在的这门语言开始深入,要跨过不光会用,还要懂为什么的阶段,这个阶段是孤独的,因为大部分都是语言特性、原理的学习。


跨过去,就是鱼跃龙门,过不去,就是一个重复的螺丝钉。

第六段

恭喜你能来到这个阶段,你不光会用,还知道原理。这个时候可能你已经工作 3 年以上了,这时候你开始独立负责一些项目,设计都是你来做。这时候对你的考验不光是编程语言本身了,你还会考虑如何让你的项目具备更好的扩展性,如何提高性能,如何和数据库、服务器、缓存等配合,设计出更好的系统。


这时候你可能开始看设计模式,也会研究数据库的优化,可能还会对 Nginx 研究,以便更好的使用。


这时候的主要特征,就是抽象能力、复用能力、组件化、模块化的提升,同时可以和编程周边(数据库、服务器等)进行更好的协调和搭配,以完成自己的项目设计。


这就是成为高级工程师之路。

第七段

现在你来了第 7 段,这一段是资深工程师,是第 6 段的加强,并不会有质的突破。


在这个阶段,你会对抽象、架构的理解更深。开始积累更多的模块,形成一个 SDK 或者一个微服务,你开始深入研究安全,并发,监控。如果你是服务端,你可能会考虑服务双活甚至多活,考虑网关等等。


并且你可能已经开始跨多个端了解业务和架构设计,比如服务端和前端的分离,服务端和终端的协作,开始逐步的从全局(不限于自己的技术栈)思考问题、设计系统。


这个阶段,就是第 6 段的继续深入,积累,扩展,然后积累到可以突破到架构师。

第八段

现在你终于突破到架构师了,你的眼界不在局限在你的技术栈,其他的语言你可能不懂,但是你知道如何使用他们,甚至你自己开始学习另外一门语言。


你设计的系统,不会只考虑自己的技术栈,你可能会选择更合适的技术栈来实现。


你会跨语言、技术栈思考问题,并且可以提出好的方案,比如负责的一个项目,横跨服务端、Android、iOS 和前端,你会通盘考虑,兼顾各个技术栈,协调大家完成这个项目。


你不光可能完成分配的任务,还能对现有的系统提出更多有建设性的建议,进行优化,改进,甚至提前积累我们业务需要的技术、平台、知识,为我们未来的使用和扩展做准备。


你还会熟悉业务,可能比其他更多的人对业务更熟悉,因为只有这样,才能设计出更适合业务的架构。


你会借助技术负责人的能力,帮你推动协调事情,让你的想法更好的开展和实现。


你的考虑角度,永远都是整个技术部门,而不是再局限在某个项目,某个组,某个技术栈。


那么恭喜你,现在你是一个合格的架构师了。

第九段

现在,到了第 9 段,现在可能你已经做了 10 年了,你发现,所有的一切技术,都是实现业务的工具。业务才是根本,技术是为业务服务的,如果买个系统就能达到目的,那么是不需要自己开发的。


这时候,你具备了再一次横向扩展的能力,可以横向到产品、市场、运营、设计、测试、运维等,这时候,你就不是一个单单的技术人了。


如果有一个称呼的话,可以是技术总监、技术 VP 等等。

总结

以上 9 段,是我结合自己 10 多年的从业经验,总结的技术人员成长的 9 段位,其中第 5 段是比较重要的,也是一个槛,第 6,7 段是一个积累的阶段,也是培养抽象、架构能力的阶段,这两个阶段,决定了你是否可以到第 8 段的架构师,所以第 8 段也是一个槛。


有些人,可能 5 年多就可以到第 8 段,但是可能需要 10 年才能到第 9 段,这是一个非常困难的过程,需要长期的积累,思想的蜕变,才能成长到第 9 段。


从第 6 段开始,你就不能只顾自己了,要更多的考虑协调、协作、体系、多角度。只有做的事情是让整个团队受益的,才能逐渐的突破第 7 段,进入第 8 段的架构师。


每一步,都踩实,多思考、多学习,在每个段位,都做一些超出这个段位的事情,很自然的就进入了下一个段位。

作者介绍

飞雪无情,随手记技术 VP,目前负责随手记的研发管理。10 余年从业经验,2011 年加入随手记,负责研发的团队管理和研发流程体系建设,支撑了随手记从 10 万到 3 亿规模用户的发展。著有《Android Gradle 权威指南》一书,微信公众号 flysnow_org,博客 www.flysnow.org,欢迎关注沟通交流。


2020-03-02 14:263105

评论 2 条评论

发布
用户头像
没啥营养价值
2021-08-30 18:29
回复
用户头像
吹水文
2020-03-04 11:28
回复
没有更多了
发现更多内容

SpringBoot与Thymeleaf模板入门整合篇

Java-fenn

Java

【JavaWeb】JDBC快速入门时间

Java-fenn

Java

Java之面向对象3(终结篇)

喜羊羊

java; 9月月更

vite 3.0 都发布了,经常初始化 vite 项目,却不知 create-vite 原理?揭秘!

若川

JavaScript vue.js 前端 nodejs vite

【云原生】Nacos中的事件发布与订阅--观察者模式

石臻臻的杂货铺

云原生 nacos 9月月更

数据结构与算法(四)——栈和队列

Java-fenn

Java

【云原生 | 从零开始学Docker】三、Docker实战之安装Nginx和Tomcat

泡泡

Docker 云计算 容器 云原生 9月月更

MySQL必知必会-检索数据

阿柠xn

MySQL sql 数据检索 9月月更

数据湖与数据仓库

CnosDB

IoT 时序数据库 开源社区 CnosDB infra

OpenFeign引起的HTTP Status 400与Tomcat吞没数据

Java-fenn

Java

架构师的十八般武艺:测试保障

agnostic

测试

Flutter - Google 开源的移动 UI 框架

陈橘又青

谷歌 flutter 调试工具 9月月更

高项-第一章 信息化和信息系统(2)

索隆

项目管理 软考

css实现模糊镜效果及渐变字体和text-shadow冲突解决方案

Java-fenn

Java

还在用开发者工具上传小程序? 快来试试 miniprogram-ci 提效摸鱼

若川

JavaScript 小程序 前端 小程序开发

高级前端二面面试题

夏天的味道123

JavaScript 前端

万字长文带你吃透SpringCloudGateway工作原理+动态路由+源码解析

Java快了!

一文带你深入掌握ES6 Proxy数据代理

海底烧烤店ai

JavaScript node.js 全栈开发 9月月更

物理层基本概念

StackOverflow

编程 计算机网络 9月月更

我的设计模式之旅 ⑦ 观察者模式

Java-fenn

Java

观察|数字经济新业态:云安全与生物医药CDMO合作成新趋势

Java-fenn

java;

百度前端二面常见面试题合集

bb_xiaxia1998

JavaScript 前端

经常用 vant-weapp 开发小程序,却不知道如何开发一个组件?

若川

JavaScript 小程序 前端 前端开发 小程序开发

力扣142 - 环形链表||【二重双指针+哈希表】

Fire_Shield

链表 LeetCode 9月月更

生成 UUID 的三种方式及测速对比!

掘金安东尼

前端 9月月更

java之面向对象2

喜羊羊

java; 9月月更

自动化测试中对多断言的思考和实践

Java-fenn

Java

阿里前端高频面试题

beifeng1996

JavaScript 前端

字节前端高频面试题

helloworld1024fd

JavaScript 前端

java之面向对象1

喜羊羊

java; 9月月更

Java基础(一)| Java概述与基础语法案例

timerring

Java core 9月月更

技术编程人员成长的9个段位_架构_飞雪无情_InfoQ精选文章