聊聊IT技术人的知识体系
我在我的2020年终总结中提到技术人需要建立自己的知识体系,那么怎么建立自己的知识体系呢?技术人的知识体系又是什么样的呢?今天,和你一一分享。
1 关于我的12字方针
我在我的《2020年终回顾》一文中提到了一个12字方针,以应对IT技术人的中年危机,它是“抓主线、建体系、有侧重、多复盘”。

其中,“建体系”三个字最为重要。
那么,是建什么体系呢?
答曰:建立我们IT技术人的知识体系。
接下来,我们就来聊聊如何建立我们自己的知识体系。
2 刻意构筑 点-线-面
我们可以借助 点-线-面 的方法论来构筑知识体系,即我们在工作中用到的往往是一个知识面的某条主线的某个点,只有当你用了多个点之后才会将它们升维到某条主线,最终多条主线再次升维形成一个知识面。
这里我们以Redis为例来说说如何构筑Redis的点-线-面。

Redis应该是我们做后端开发的技术人大概率都会用到的一个中间件,不管你用到了哪种程度,只要你是做后端开发,那么你的知识体系中必然有它的位置。
这里我们借助某位老师总结的一个Redis的知识结构图来聊聊,如下图所示:

我们可以从上图中看到,该老师将Redis这个知识面分为了两大维度 和 三大主线,两大维度分别是 应用维度 和 系统维度,三大主线分别是 高性能主线、高可靠主线 和 高可扩展主线。
作为一个对自己有追求 又 渴望成长 的IT技术人来说,往往都是在工作中在了解和实践Redis的一个又一个零散的知识点,却很少将它们整理和归纳,使这些点能够串联起一条主线脉络在心中。比如,我们常常使用Redis做缓存,用了很多相关的get/set接口,也用了k/v、string、set等数据结构,有的还使用到了新增的SET接口实现了分布式锁去应对秒杀抢购的业务场景,但却很少将它们归纳分类提升维度,进而构筑知识体系,因此在面试中的回答往往不够完整(这也是我的经历,错失一些offer的感悟)。
如果我们都能有这样的整理和归纳,对每个知识面都有像上图一样的脉络在心中,是不是也会增加我们的自信程度,减少不必要的中年焦虑?
画外音:骚年,平日里多多归纳总结,刻意练习,必有收获。技术如此,业务知识也如此,心中有一条公司整体业务的主线 以及 自己项目团队所负责的业务线的详细脉络,就是一个合格的IT技术人,因为技术是为业务服务的,没有交付业务价值的技术也是不合格的。
那么,跳出Redis这个知识面,我们后端技术人的知识体系的全貌又是怎么样的?这里我整理了一棵树,它列出重要的知识面 和 主线,仅供参考。

当然,这还只是一棵较为粗糙的树,我会持续对它进行完善,因为我的技术认知和业务认知也在不断地更新,乐观接受新认知,勇于放弃旧认知,只要自己不断地在进步,就是值得高兴的事。
此外,金三银四已经到来,Edison也在整理一棵开发面试的知识体系,目前整理到了v0.5版本,关注EdisonTalk公众号的童鞋可以在后台回复“面试知识树”获取。这个pdf的全貌如下图所示:

在EdisonTalk交流群里(欢迎加群交流),很多童鞋都表达了自己的焦虑,认为自己多年所学的知识可能会在今后的日子越来越得不到市场。我承认,在国内的互联网和IT大环境市场下,面向职位和工资编程,.NET在互联网大厂的平均使用份额的确不高,但是也需要承认.NET在数字化转型、工业制造、3D游戏(Unity)、BIM设计、医疗信息化等行业领域还是占有一席之地(护城河)。此外,作为一个程序员,掌握两门及以上的开发语言也不是什么坏事儿,如果我们将自己的知识体系进行一个抽象和升维,你会发现.NET技术栈在你的知识体系中只是其中的一个面,其他的很多面其实都是后端开发通用的技术能力,你不必担心这些通用的技术能力在其他企业用不上。
画外音:讲到这里,细心的读者应该可以发现,抽象归纳和顶层设计的能力对于程序员来说,是个需要逐步练习的技能,可以帮助我们看到全局,而只有看到全局,你才能做到胸有全局脉络,又能聚焦局部重点。
3 其他想说的
关于硬技能和软技能
在职场中,硬技能是我们安身立命的基础,它是硬核的,即我们所掌握的开发语言、框架、中间件 和 项目经验。软技能是我们扩展边界的条件,它是加分项,可以在我们达到开发角色边界的时候帮助我们跨上一个新台阶,比如Team Leader或Project Manager等。

技术人职场打怪升级路线
在职场中,我们首先是做事,通过硬核技能写好代码做好服务,等到一定时机,我们有机会管事(比如Team Leader),再管人(比如Manager),最后管心(比如Director或CIO/CTO)。

为什么技术人越成长晋升,关注点都会慢慢聚焦到人和人心上面?
因为人心比系统复杂,架构师处理的是多个系统之间的连接关系,而管理者处理的其实是多个人心之间的连接关系。
我的一点成长经验
我在职场中也没有做到什么高级管理者的位置,但我现在逐步养成了拔高自己的视角去看待一些问题,我也有了一些自己的成长经验,我觉得以下几点对初入职场和初中级开发工程师都是有用的(如果你也认可)。

第一点,积极主动做事。职场中积极主动做事的人,运气都不会太差,机会一定都是会留给积极做事有准备的人。
第二点,努力扩展边界。任何成长阶段都有自己的边界,而渴望成长的人总是希望在几年或多年的时间里上一个新台阶。
第三点,及时总结复盘。当你努力踏上一个新的台阶时,你总是不习惯或者不适应的,你会踩很多很多的坑,这时你需要及时对踩过的坑进行总结复盘,避免下次再犯。
这三点其实是有一个顺序关系的,你只有积极主动做事,才会在大概率的情况下得到拓展边界(踏上新的成长台阶)的机会,而当你踏上新台阶时,一定会碰到各种各样的问题(因为要处理问题的复杂度提升了)进而踩很多坑,这时你就需要及时总结复盘,避免多次犯同样的错误。如此,这就是一轮成长的闭环,而技术人的职场进阶路线就是一个又一个这样的闭环。
4 小结
本文介绍了IT技术人的知识体系的概念,如何通过 点-线-面 理论来构建自己的知识体系,最后给出了一个后端技术人知识体系的示例,你可以根据自己的需求进行完善。
那么,你有没有开始计划去整理你的知识体系呢?欢迎留言,一起交流!

聊聊IT技术人的知识体系的更多相关文章
- web服务器架构演化及所其技术知识体系(分布式的由来)
文章标题是我自己取的,内容来着百度百科k5665219的一篇回答,觉得讲的很不错就转载过来了. 最开始,由于某些想法,于是在互联网上搭建了一个网站,这个时候甚至有可能主机都是租借的,但由于这篇文章我们 ...
- 终于有人把Android技术面试知识体系整理出来了,这些学习手册让你的面试稳如泰山
前言 年年寒冬,年年也挡不住一个安卓程序员追求大厂的决心.想要进入大厂,我们需要掌握哪些知识点呢?这里,我为大家梳理了一个整体的知识架构.整体包括Java.Android.算法.计算机基础等等,相应的 ...
- 精简的言语讲述技术人,必须掌握基础性IT知识技能,第一篇
前言 此系列将以精简的言语讲述技术人,必须掌握基础性IT知识技能,请持续关注,希望给大家都是一些精简的干货. 第一部分:必须掌握的设计模式的6大基本原则 23个设计模式,都是从这六大设计模式中演化而来 ...
- Linux运维学习笔记-网络技术知识体系总结
传统网络知识体系 未来网络SND模型架构
- web前端知识体系总结
1. 前言 大约在几个月之前,让我看完了<webkit技术内幕>这本书的时候,突然有了一个想法.想把整个web前端开发所需要的知识都之中在一个视图中,形成一个完整的web前端知识体系,目的 ...
- 自己总结的web前端知识体系大全【欢迎补充】
1. 前言 大约在几个月之前,让我看完了<webkit技术内幕>这本书的时候,突然有了一个想法.想把整个web前端开发所需要的知识都之中在一个视图中,形成一个完整的web前端知识体系,目的 ...
- github上最全的资源教程-前端涉及的所有知识体系
前面分享了前端入门资源汇总,今天分享下前端所有的知识体系. 个人站长对个人综合素质要求还是比较高的,要想打造多拉斯自媒体网站,不花点心血是很难成功的,学习前端是必不可少的一个环节, 当然你不一定要成为 ...
- web前端知识体系大全
1. 前言 大约在几个月之前,让我看完了<webkit技术内幕>这本书的时候,突然有了一个想法.想把整个web前端开发所需要的知识都之中在一个视图中,形成一个完整的web前端知识体系,目的 ...
- web前端知识体系小结(转)
1. 前言 大约在几个月之前,让我看完了<webkit技术内幕>这本书的时候,突然有了一个想法.想把整个web前端开发所需要的知识都之中在一个视图中,形成一个完整的web前端知识体系,目的 ...
随机推荐
- PowerShell随笔10---Module
我们总不能把所有脚本文件零散的放着,就像创建一个项目一样,我们创建一个Module. 创建好之后如何让系统认识我们创建的Module呢,我们需要放在指定的位置. 那到底应该放在什么位置呢? 我们可以通 ...
- 2.hello rabbitmq
作者 微信:tangy8080 电子邮箱:914661180@qq.com 更新时间:2019-07-22 22:49:50 星期一 欢迎您订阅和分享我的订阅号,订阅号内会不定期分享一些我自己学习过程 ...
- oslab oranges 一个操作系统的实现 实验四 认识保护模式(三):中断异常
实验目的: 理解中断与异常机制的实现机理 对应章节:第三章3.4节,3.5节 实验内容: 1. 理解中断与异常的机制 2. 调试8259A的编程基本例程 3. 调试时钟中断例程 4. 建立IDT,实现 ...
- POJ 1742 Coins 【可行性背包】【非原创】
People in Silverland use coins.They have coins of value A1,A2,A3...An Silverland dollar.One day Tony ...
- cobaltstrike的使用
0x01 介绍 Cobalt Strike是一款渗透测试神器,常被业界人称为CS神器.Cobalt Strike已经不再使用MSF而是作为单独的平台使用,它分为客户端与服务端,服务端是一个,客户端可以 ...
- XCTF攻防世界web进阶练习—mfw
XCTF攻防世界web进阶练习-mfw题目为mfw,没有任何提示.直接打开题目,是一个网站 大概浏览一下其中的内容,看到其中url变化其实只是get的参数的变化查看它的源码,看到有一个?page=fl ...
- Shell 编程快速上手
Shell 编程快速上手 test.sh #!/bin/sh cd ~ mkdir shell_tut cd shell_tut for ((i=0; i<10; i++)); do touch ...
- Parcel all in one
Parcel all in one Parcel https://parceljs.org/ # cli $ yarn global add parcel-bundler $ npm install ...
- infinite auto load more & infinite scroll & load more
infinite auto load more & infinite scroll & load more https://codepen.io/xgqfrms/pen/NZVvGM ...
- post upload file & application/x-www-form-urlencoded & multipart/form-data
post upload file application/x-www-form-urlencoded & multipart/form-data https://stackoverflow.c ...