技术领导者的知识储备

2024-01-30 20:30
文章标签 技术 知识 领导者 储备

本文主要是介绍技术领导者的知识储备,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

陆游有诗云:书到用时方恨少,事非经过不知难。我们常常在需要用到某些知识的时候,才发现自己没有储备,只好来一句“我读书少,您不要骗我”。做事也一样,虽然我们可以预估它的难度,但这种预估往往会偏离实际,甚至没有经历过的人,本来挺难的事情也会认为很简单,口头禅是“这事情也就毛毛雨啦”,可谓无知者无畏。

这两句诗反映的现象,在每个人的生活中都应该是一种常态,不得不佩服陆诗人善于观察善于提炼的能力。佩服完了,我们还是希望这种现象更少一些,简单来说,就是要多进行知识储备,多做事情来历练。

闲扯完毕,进入正题:作为一个技术领导者,如何做好你的知识储备呢?虽然我早前在拙作《漫谈中小企业研发技术栈》中有类似内容,但没过瘾,在这里还想再谈一谈。

在我看来,作为一个技术领导者,应该是个多面手,而且最好还要在某一方面相对精深。在自己不精深的领域,了解整个概貌也许就可以了,但在需要的时候,具有随时深入领域细节的能力。而这种随时深入细节的能力,是你之前就已经在某个领域精深过,通过举一反三,可以知道如何深入到另外的领域知识里面。从这个角度来看,要融会贯通,首先需要渊博,要可以随时深入某个陌生领域的细节,首先要具有曾经深入过其它一些领域细节的经历。

技术领导者因为精力分配的原因,往往不再是某方面的技术专家,但已有的经验可能让他具有更好的嗅觉,知道应该往哪个方向走,哪个方向坑少一些。这样的话,就需要他了解各个前进方向上,沿途大概都是怎样的风景。也就是说,他需要对各种技术方案带来怎样的效应有一定的洞见能力,这种洞见能力离不开他对技术本身的理解,离不开他已有的踩坑经验。

以我自己的经历来说,我的技术栈相对比较丰富,但也有点杂而不精的意思,很多技术都是用了段时间就换别的了,因此也难以继续深入。我在Windows上开发程序有五年的时间,从应用层到驱动层,之后转到云计算方向后,基本在用Linux系统,也花了不少时间学习Linux内核知识,阅读并调试相关内核代码。之后,又转到应用层开发,直到现在。编程语言用过C++/C#,Python, Java,PHP,JavaScript等,早些年比较深入学习编程语言,后面基本就只当作工具来看待,只学到能用来实现功能,并懂得遵守最佳实践避免一些陷阱的程度。这些东西现在都成为了我的储备知识,招聘时候,各种技术岗位都可以随便问相应的问题,而不需要再提前做功课。

即便已经在不断地学习新知识,扩宽知识面,我还是觉得自己的知识储备远不够。比如人工智能时代的到来,机器学习变得火热起来,当然这种火热应该结合具体的业务场景,否则我们也没有必要追随新技术。我之前只是了解了解过机器学习领域的相关概念和基本算法,但目前来看,我认为自己还需要稍微再深入一些。首先我会找到机器学习方向比好的资料,然后看这里面需要哪些前提知识,再去学习或者复习这些知识,比如大学里上过的线性代数课程。已经有人把机器学习方向所需要的线性代数内容做了整理,对于我这样没有那么多时间从头去学习线性代数的人来说,选择机器学习方向常用到的线性代数内容来复习就够了。对概念和算法基本了解之后,我还会去了解使用各种编程语言进行这方面开发大概是怎样的。比如Python人工智能方向编程,有一个库叫scikit-learn,那么我要去了解这个库是怎样被使用的,提供了哪些接口,需要怎样的知识储备才能使用这些接口来完成常见的一些任务。了解这些库一般是抽象、封装到什么程度,一般来说,封装得越多,使用者使用起来更容易,需要学习的底层知识就越少。这样之后,我就可以对这方面开发的工作量以及工作难度有一个更靠谱的评估,同时作为招聘方的话,也更懂得如何去衡量一个面试者这方面的技术水平,以免被忽悠。

对于小公司来说,技术领导者往往也扮演架构师的角色,先不管他实际上是否达到架构师的水准,反正硬上就是了。这时候技术领导者应该是个系统架构师,而不是业界常说的Java架构师、C++架构师。我认为不同语言不同开发生态选择使用的组件有不同,设计模式也会有些不同,但架构思维是相通的,一个在Java方面能够做好架构,在公司选择使用别的编程语言时无法进行架构设计的人,严格意义上不能算一个真正的架构师,只是一个Java方向的熟练工罢了。作为系统架构师的技术领导者,也就需要具备各方面的知识,比如开发、测试、运维和软件工程相关知识。

总之,技术领导者应该经常拓宽并更新自己的知识储备,以致于在这个技术更新换代异常频繁的时代里,不会稍不留神就落伍了。你看看我,一个工作了十年以上的老鸟,现在又学起线性代数来了,压力固然有,但我只想跟这不争气的发际线说一句:您能别老往后移了吗?

 

欢迎关注公众号:



转载于:https://www.cnblogs.com/woshiweige/p/11301523.html

这篇关于技术领导者的知识储备的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/661452

相关文章

Java架构师知识体认识

源码分析 常用设计模式 Proxy代理模式Factory工厂模式Singleton单例模式Delegate委派模式Strategy策略模式Prototype原型模式Template模板模式 Spring5 beans 接口实例化代理Bean操作 Context Ioc容器设计原理及高级特性Aop设计原理Factorybean与Beanfactory Transaction 声明式事物

sqlite3 相关知识

WAL 模式 VS 回滚模式 特性WAL 模式回滚模式(Rollback Journal)定义使用写前日志来记录变更。使用回滚日志来记录事务的所有修改。特点更高的并发性和性能;支持多读者和单写者。支持安全的事务回滚,但并发性较低。性能写入性能更好,尤其是读多写少的场景。写操作会造成较大的性能开销,尤其是在事务开始时。写入流程数据首先写入 WAL 文件,然后才从 WAL 刷新到主数据库。数据在开始

【专题】2024飞行汽车技术全景报告合集PDF分享(附原数据表)

原文链接: https://tecdat.cn/?p=37628 6月16日,小鹏汇天旅航者X2在北京大兴国际机场临空经济区完成首飞,这也是小鹏汇天的产品在京津冀地区进行的首次飞行。小鹏汇天方面还表示,公司准备量产,并计划今年四季度开启预售小鹏汇天分体式飞行汽车,探索分体式飞行汽车城际通勤。阅读原文,获取专题报告合集全文,解锁文末271份飞行汽车相关行业研究报告。 据悉,业内人士对飞行汽车行业

金融业开源技术 术语

金融业开源技术  术语 1  范围 本文件界定了金融业开源技术的常用术语。 本文件适用于金融业中涉及开源技术的相关标准及规范性文件制定和信息沟通等活动。

系统架构师考试学习笔记第三篇——架构设计高级知识(20)通信系统架构设计理论与实践

本章知识考点:         第20课时主要学习通信系统架构设计的理论和工作中的实践。根据新版考试大纲,本课时知识点会涉及案例分析题(25分),而在历年考试中,案例题对该部分内容的考查并不多,虽在综合知识选择题目中经常考查,但分值也不高。本课时内容侧重于对知识点的记忆和理解,按照以往的出题规律,通信系统架构设计基础知识点多来源于教材内的基础网络设备、网络架构和教材外最新时事热点技术。本课时知识

AI(文生语音)-TTS 技术线路探索学习:从拼接式参数化方法到Tacotron端到端输出

AI(文生语音)-TTS 技术线路探索学习:从拼接式参数化方法到Tacotron端到端输出 在数字化时代,文本到语音(Text-to-Speech, TTS)技术已成为人机交互的关键桥梁,无论是为视障人士提供辅助阅读,还是为智能助手注入声音的灵魂,TTS 技术都扮演着至关重要的角色。从最初的拼接式方法到参数化技术,再到现今的深度学习解决方案,TTS 技术经历了一段长足的进步。这篇文章将带您穿越时

系统架构设计师: 信息安全技术

简简单单 Online zuozuo: 简简单单 Online zuozuo 简简单单 Online zuozuo 简简单单 Online zuozuo 简简单单 Online zuozuo :本心、输入输出、结果 简简单单 Online zuozuo : 文章目录 系统架构设计师: 信息安全技术前言信息安全的基本要素:信息安全的范围:安全措施的目标:访问控制技术要素:访问控制包括:等保

前端技术(七)——less 教程

一、less简介 1. less是什么? less是一种动态样式语言,属于css预处理器的范畴,它扩展了CSS语言,增加了变量、Mixin、函数等特性,使CSS 更易维护和扩展LESS 既可以在 客户端 上运行 ,也可以借助Node.js在服务端运行。 less的中文官网:https://lesscss.cn/ 2. less编译工具 koala 官网 http://koala-app.

Spring的设计⽬标——《Spring技术内幕》

读《Spring技术内幕》第二版,计文柯著。 如果我们要简要地描述Spring的设计⽬标,可以这么说,Spring为开发者提供的是⼀个⼀站式的轻量级应⽤开发框架(平台)。 作为平台,Spring抽象了我们在 许多应⽤开发中遇到的共性问题;同时,作为⼀个轻量级的应⽤开发框架,Spring和传统的J2EE开发相⽐,有其⾃⾝的特点。 通过这些⾃⾝的特点,Spring充分体现了它的设计理念:在

java线程深度解析(六)——线程池技术

http://blog.csdn.net/Daybreak1209/article/details/51382604 一种最为简单的线程创建和回收的方法: [html]  view plain copy new Thread(new Runnable(){                @Override               public voi