06 | 如何才能拥有技术领导力?
陈皓,杨爽
该思维导图由 AI 生成,仅供参考
你好,我是陈皓,网名左耳朵耗子。
通过上节课,相信你现在已经理解了“什么才是技术领导力”。今天,我就要跟你继续聊聊,怎样才能拥有技术领导力。
第一,你要吃透基础技术。基础技术是各种上层技术共同的基础。吃透基础技术是为了更好地理解程序的运行原理,并基于这些基础技术进化出更优化的产品。吃透基础技术,有很多好处,具体来说,有如下几点。
万丈高楼平地起。一栋楼能盖多高,一座大桥能造多长,重要的是它们的地基。同样对于技术人员来说,基础知识越扎实,走得就会越远。
计算机技术太多了,但是仔细分析你会发现,只是表现形式很多,而基础技术并不多。学好基础技术,能让你一通百通,更快地使用各种新技术,从而可以更轻松地与时代同行。
很多分布式系统架构,以及高可用、高性能、高并发的解决方案基本都可以在基础技术上找到它们的身影。所以,学习基础技术能让你更好地掌握更高维度的技术。
那么,哪些才是基础技术呢?我在下面罗列了一些。老实说,这些技术你学起来可能会感到枯燥无味,但是,我还是鼓励你能够克服人性的弱点,努力啃完。
具体来说,可以分成两个部分:编程和系统。
编程部分
C 语言:相对于很多其他高级语言来说,C 语言更接近底层。在具备跨平台能力的前提下,它可以比较容易地被人工翻译成相应的汇编代码。它的内存管理更为直接,可以让我们直接和内存地址打交道。
学习好 C 语言的好处是能掌握程序的运行情况,并能进行应用程序和操作系统编程(操作系统一般是汇编和 C 语言)。要学好 C 语言,你可以阅读 C 语言的经典书籍《C 程序设计语言(第 2 版)》,同时,肯定也要多写程序,多读一些优秀开源项目的源代码。
除了让你更为了解操作系统之外,学习 C 语言还能让你更清楚地知道程序是怎么精细控制底层资源的,比如内存管理、文件操作、网络通信……
这里需要说明的是,我们还是需要学习汇编语言的。因为如果你想更深入地了解计算机是怎么运作的,那么你是需要了解汇编语言的。虽然我们几乎不再用汇编语言编程了,但是如果你需要写一些如 lock free 之类高并发的东西,那么了解汇编语言,就能有助于你更好地理解和思考。
编程范式:各种编程语言都有它们各自的编程范式,用于解决各种问题。比如面向对象编程(C++、Java)、泛型编程(C++、Go、C#)、函数式编程(JavaScript、 Python、Lisp、Haskell、Erlang)等。
学好编程范式,有助于培养你的抽象思维,同时也可以提高编程效率,提高程序的结构合理性、可读性和可维护性,降低代码的冗余度,进而提高代码的运行效率。要学习编程范式,你还可以多了解各种程序设计语言的功能特性。
算法和数据结构:算法(及其相应的数据结构)是程序设计的有力支撑。适当地应用算法,可以有效地抽象问题,提高程序的合理性和执行效率。算法是编程中最最重要的东西,也是计算机科学中最重要的基础。
任何有技术含量的软件中一定有高级的算法和数据结构。比如 epoll 中使用了红黑树,数据库索引使用了 B+ 树……而就算是你的业务系统中,也一定使用各种排序、过滤和查找算法。学习算法不仅是为了写出运转更为高效的代码,而且更是为了能够写出可以覆盖更多场景的正确代码。
公开
同步至部落
取消
完成
0/2000
荧光笔
直线
曲线
笔记
复制
AI
- 深入了解
- 翻译
- 解释
- 总结
拥有技术领导力并非易事,但通过掌握基础技术,可以为此奠定坚实基础。学习基础技术的好处包括建立坚实的技术基础、更快地掌握新技术、以及掌握更高维度的技术。基础技术主要包括编程、系统、网络和数据库等多个方面。深入学习基础技术是拥有技术领导力的关键,它不仅能够提高个人技术水平,还能够为团队和产品的发展提供坚实支持。此外,提高学习能力和坚持做正确的事也是至关重要的。通过与高手交流、举一反三的思考、不怕困难的态度以及开放的心态,可以提升学习能力。而坚持做正确的事包括提高效率、自动化操作以及掌握前沿技术等方面。这些都是成为技术领导者所必备的素质和能力。作为一名合格的技术领导者,还需要有解决问题的各种软技能。比如,良好的沟通能力、组织能力、驱动力、团队协作能力等等。《技术领导之路》《卓有成效的管理者》等多本经典图书中均有细致的讲解,这里不展开讲述,我后面内容也会有涉及。 文章总结:本文强调了拥有技术领导力的重要性,指出通过掌握基础技术可以奠定坚实基础,并提出了学习基础技术的好处和关键技能。此外,还强调了提高学习能力和坚持做正确的事的重要性,以及成为技术领导者所需具备的软技能。文章内容涵盖了技术领导力的多个方面,对于想要成为技术领导者的读者具有指导意义。
仅可试看部分内容,如需阅读全部内容,请付费购买文章所属专栏
《左耳听风》,新⼈⾸单¥98
《左耳听风》,新⼈⾸单¥98
立即购买
© 版权归极客邦科技所有,未经许可不得传播售卖。 页面已增加防盗追踪,如有侵权极客邦将依法追究其法律责任。
登录 后留言
全部留言(150)
- 最新
- 精选
- 野马皓叔,我是一个非科班出身的程序员,像我这样的编程人员在技术上需要学习哪些方面的基础知识呢?算法,数据结构,编程语言,计算机系统,网络?
作者回复: 我写在了程序员练级攻略中
2018-06-1422 - 夏洛克的救赎了解编程范式是不是得学习编译原理
作者回复: 不一定。大多数情况下不用
2018-06-0813 - Gamehu大佬 算法和结构有推介的书么?
作者回复: 看后面的练级攻略
2018-07-249 - ydp指明了努力方向,虽然实现较难,感谢分享!
作者回复: 参看AWS的SWF
2018-05-105 - 溺水的鱼Go算范型编程?
作者回复: 目前不算,2.0版可能会算
2018-03-273 - 阴明很多人在阶段性的技术领先下获得了一定的管理权限后,很快就会开始转行管理。而国内的激励机制里,仍然对业务进展、财务进展的激励优于技术进展。 这使得很多技术高手后期以管理为重,渐渐失去了技术的领导力。2017-10-238247
- 池建强学习好编程范式,有助于培养编程的抽象思维,提高编程效率,提高程序的结构合理性、可读性和可维护性,降低代码的冗余度,提高代码的运行效率。要学习编程范式,可以多了解各种程序设计语言的功能特性。 这段写的真好,好的程序员没有只掌握一门编程语言的2017-10-19153
- 夏洛克的救赎这么说吧,如果今天使用中文搜索就可以满足你的知识需求,那么你就远远落后于这个时代了。如果用英文搜索才能找到你想要的知识,那么你才能算得上跟上这个时代。而如果你连用英文搜索都找不到,只能到社区里去找作者或是和大众交流,那么可以说你已真正和时代靠近了。 涨姿势了 认知升级2018-06-08670
- 蓓岑2015看完了这篇文章,即恐惧又兴奋。2018-11-07442
- 陈俊耗哥这个专栏是真好,这篇文章尤其好!既有系统地阐述和分析,也有具体的操作建议。真是让我有醍醐灌顶的感觉。结合这几年的工作经验,基本上我认同耗哥的指导,感谢分享!2017-10-2439
收起评论