我在我的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技术人的知识体系的概念,如何通过 点-线-面 理论来构建自己的知识体系,最后给出了一个后端技术人知识体系的示例,你可以根据自己的需求进行完善。

那么,你有没有开始计划去整理你的知识体系呢?欢迎留言,一起交流!

作者:周旭龙

出处:https://edisonchou.cnblogs.com

本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文链接。

聊聊IT技术人的知识体系的更多相关文章

  1. web服务器架构演化及所其技术知识体系(分布式的由来)

    文章标题是我自己取的,内容来着百度百科k5665219的一篇回答,觉得讲的很不错就转载过来了. 最开始,由于某些想法,于是在互联网上搭建了一个网站,这个时候甚至有可能主机都是租借的,但由于这篇文章我们 ...

  2. 终于有人把Android技术面试知识体系整理出来了,这些学习手册让你的面试稳如泰山

    前言 年年寒冬,年年也挡不住一个安卓程序员追求大厂的决心.想要进入大厂,我们需要掌握哪些知识点呢?这里,我为大家梳理了一个整体的知识架构.整体包括Java.Android.算法.计算机基础等等,相应的 ...

  3. 精简的言语讲述技术人,必须掌握基础性IT知识技能,第一篇

    前言 此系列将以精简的言语讲述技术人,必须掌握基础性IT知识技能,请持续关注,希望给大家都是一些精简的干货. 第一部分:必须掌握的设计模式的6大基本原则 23个设计模式,都是从这六大设计模式中演化而来 ...

  4. Linux运维学习笔记-网络技术知识体系总结

    传统网络知识体系 未来网络SND模型架构

  5. web前端知识体系总结

    1. 前言 大约在几个月之前,让我看完了<webkit技术内幕>这本书的时候,突然有了一个想法.想把整个web前端开发所需要的知识都之中在一个视图中,形成一个完整的web前端知识体系,目的 ...

  6. 自己总结的web前端知识体系大全【欢迎补充】

    1. 前言 大约在几个月之前,让我看完了<webkit技术内幕>这本书的时候,突然有了一个想法.想把整个web前端开发所需要的知识都之中在一个视图中,形成一个完整的web前端知识体系,目的 ...

  7. github上最全的资源教程-前端涉及的所有知识体系

    前面分享了前端入门资源汇总,今天分享下前端所有的知识体系. 个人站长对个人综合素质要求还是比较高的,要想打造多拉斯自媒体网站,不花点心血是很难成功的,学习前端是必不可少的一个环节, 当然你不一定要成为 ...

  8. web前端知识体系大全

    1. 前言 大约在几个月之前,让我看完了<webkit技术内幕>这本书的时候,突然有了一个想法.想把整个web前端开发所需要的知识都之中在一个视图中,形成一个完整的web前端知识体系,目的 ...

  9. web前端知识体系小结(转)

    1. 前言 大约在几个月之前,让我看完了<webkit技术内幕>这本书的时候,突然有了一个想法.想把整个web前端开发所需要的知识都之中在一个视图中,形成一个完整的web前端知识体系,目的 ...

随机推荐

  1. PowerShell随笔10---Module

    我们总不能把所有脚本文件零散的放着,就像创建一个项目一样,我们创建一个Module. 创建好之后如何让系统认识我们创建的Module呢,我们需要放在指定的位置. 那到底应该放在什么位置呢? 我们可以通 ...

  2. 2.hello rabbitmq

    作者 微信:tangy8080 电子邮箱:914661180@qq.com 更新时间:2019-07-22 22:49:50 星期一 欢迎您订阅和分享我的订阅号,订阅号内会不定期分享一些我自己学习过程 ...

  3. oslab oranges 一个操作系统的实现 实验四 认识保护模式(三):中断异常

    实验目的: 理解中断与异常机制的实现机理 对应章节:第三章3.4节,3.5节 实验内容: 1. 理解中断与异常的机制 2. 调试8259A的编程基本例程 3. 调试时钟中断例程 4. 建立IDT,实现 ...

  4. POJ 1742 Coins 【可行性背包】【非原创】

    People in Silverland use coins.They have coins of value A1,A2,A3...An Silverland dollar.One day Tony ...

  5. cobaltstrike的使用

    0x01 介绍 Cobalt Strike是一款渗透测试神器,常被业界人称为CS神器.Cobalt Strike已经不再使用MSF而是作为单独的平台使用,它分为客户端与服务端,服务端是一个,客户端可以 ...

  6. XCTF攻防世界web进阶练习—mfw

    XCTF攻防世界web进阶练习-mfw题目为mfw,没有任何提示.直接打开题目,是一个网站 大概浏览一下其中的内容,看到其中url变化其实只是get的参数的变化查看它的源码,看到有一个?page=fl ...

  7. Shell 编程快速上手

    Shell 编程快速上手 test.sh #!/bin/sh cd ~ mkdir shell_tut cd shell_tut for ((i=0; i<10; i++)); do touch ...

  8. Parcel all in one

    Parcel all in one Parcel https://parceljs.org/ # cli $ yarn global add parcel-bundler $ npm install ...

  9. infinite auto load more & infinite scroll & load more

    infinite auto load more & infinite scroll & load more https://codepen.io/xgqfrms/pen/NZVvGM ...

  10. 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 ...