• 全能还是专精?关于技术通才与技术专家的思考


    在日新月异的 IT 行业中,每隔数年乃至数月,便会涌现出革新性的技术或前沿框架,引领行业潮流。

    比如前端开发,我刚开始工作时,大部分都是静态页面+JavaScript,页面上只有一些简单的交互。

    后来出现了Ajax技术和JQuery库,现在想起当年第一次使用JQuery时,真的觉得这就是前端库的终点。

    结果没过几年,就兴起了MVC/MVVM框架,随之而来的就是AngularJSEmberJS,这时,突然就觉得JQuery没有那么香了。

    AngularJSEmberJS还没闹明白,React又横空出世,紧接着就是Vue。。。

    再看后端开发,早期我主要使用.NET,或者用一些Java,不过那时候后端语言和框架不是那么被重视,

    更多的精力都是放在数据库上,尤其是 Oracle,项目上还有DBA的角色,专门负责处理数据库的问题,

    那时的应用基本都是单机的。

    后来,随着应用规模的扩大,性能问题逐渐显现,开始引入缓存技术(Memcached,Redis),

    同时,异步编程和多线程技术也开始被广泛应用。

    这时候,各种 Web 框架也如雨后春笋般不断崛起,知名的比如 Spring,Django,Rails 等等。

    再后来,互联网应用飞速发展,单机应用开始显得笨重且难以维护和扩展。

    云服务,微服务,Docker成为主流,持续集成和持续部署(CI/CD)流程也被广泛采用,

    数据安全和隐私保护的重要性也日益增加,后端开发在安全性和认证方面的要求也越来越高。

    其他 IT 领域也类似,随着硬件的发展和互联网累计的数据量到达一定规模之后,神经网络,深度学习和强化学习让机器学习领域飞速发展,AI 真正开始走向普通人的生活中。

    总之,我们一直处于技术迭代的循环中。

    1. 选择通才还是专家?

    像 IT 这样迭代如此之快的行业绝无仅有,那么,在技术的世界里,我们应该专注于一个领域还是尝试很多领域?

    也就是说,我们应该成为通才(拥有广泛的知识,无论有用与否)还是成为专家(致力于一个主题或一个特定的分支)呢?

    回答这个问题之前,首先了解一下通才和专家具体有什么不同。

    1.1. 通才

    通才指的是那些勇于尝试、对广泛领域保持探索精神的人。

    在技术的广阔天地里,他们不仅精通某一专业领域,更在多个领域内拥有深厚的知识积累。

    这类人往往不会局限于单一的职业路径,而是倾向于在其职业生涯中跨越不同的领域,不断寻求新的挑战与成长。

    这样的人能够改变世界。

    著名的通才包括像史蒂夫·乔布斯和埃隆·马斯克这样的天才,他们擅长创新新事物。

    通才不仅仅是在他们感兴趣的每一件事上都表现出色,他们还能够将解决一个问题时获得的知识,其应用于不同但相关的问题上。

    当他们学会了某个领域的基本知识后,就会把这个知识用在之后接触的每个新领域里。这就是首席技术官的工作范围能横跨多种技术和不同领域的原因。

    他们会用自己多年积累的见识和经验去应对每一个新挑战,同时还会不断学些新出现的技术。

    通才专注于解决问题,而不是某个具体的技术。

    1.2. 专家

    相反,专家则展现出高度的专注力。

    他们致力于深耕细作,在某一特定领域内稳步前行,犹如手持明灯的引路人。

    专家们热衷于全面掌握某一领域的所有知识,他们孜孜不倦地研究、实验与学习,以追求更高的专业造诣和更深的理解。

    绝大多数技术进展归功于那些在各自领域深耕细作的专家。

    他们专注于机器学习(ML)、网络技术(Web)、移动技术、基础设施、中间件以及其他各类技术领域的开发与优化,凭借多年累积的专业知识与经验,推动了这些领域的持续发展与创新。

    专家需系统掌握核心基础知识,并通过在特定领域内长期深耕,方能触及并精通该领域的高级课题。

    成就斐然的背后,是无可替代的辛勤努力与积累,无捷径可循,比如各种编程语言,框架的发明者,机器学习领域的各位先驱等等。

    各学科的重大发现与进步,很大程度上仰赖于这些领域专家的贡献与推进。

    软件专家长期以来运用一套稳定的技术栈,在自身领域内积累了深厚的知识,并对外部进展保持洞察。

    他们通过不断努力,成为了行业内的权威人士,同时积极寻求和实践创新的方法论。

    不过,软件专家并非要求个体局限于单一技术领域,他们也可以自由探索其他技术领域。

    2. 个人建议

    我自己的感觉是通才专家属于两个极端,作为一个普通人(包括我自己),我的选择是介于两者之间。

    如果对某个技术领域非常感兴趣,那么可以花时间去掌握该领域的各个方面,

    但不要限制自己,不要排斥接触其他相关领域。

    比如,在github,我们可以看到很多前端高手,前端的知识和经验已经非常丰富了,也会去学习Rust,然后用 Rust 来开发提高前端开发效率的工具。

    还有很多机器学习领域的高手,他们也会学习前端的技术,为自己的大模型制作交互界面,让更多的人能够使用大模型。

    选择学习什么技术的时候,有两个很重要的因素值得我们好好参考,就是兴趣经验

    兴趣虽然有助于我们缩小选择的技术领域,但最好是尝试不同的技术领域之后,再决定自己的真正的兴趣。

    比如,不要因为第一个工作接触的是前端,发现前端也挺有意思,就把自己的兴趣定在前端。

    决定兴趣之前,多接触几种不同的领域,尝试在不同的领域做一些小工具玩玩,不同担心学了没用或者浪费时间,

    想想通才,任何在其他领域中学到的技能都不会浪费。

    其次,经验是另一个帮助我们做决定的重要因素。

    要成为专家,需要花上好多年的时间去积累经验。如果你已经在某个领域里干了好些年,往专家方向发展通常是个不错的选择。

    但是,如果你刚起步或者工作中本来就横跨了几个领域,那么,选择成为通才也许更有意义。

    最后,有一个忠告,千万不要仅仅因为困难就放弃成为专家,转而成为通才。

    因为通才一点也不比专家简单,通才不是“万事通”,更像是多个领域的专家。

    总之,千万不要东搞搞西弄弄,一碰到难题就怂,然后又跑去折腾别的,并且自我安慰“我就是兴趣广泛,更适合做个通才!”。

  • 相关阅读:
    npm简单介绍
    华为交换机 S5735S-L24P4S-A光接口接入光无法设置指定速率如百兆
    洛谷 P1151 子数整数
    利用lvm扩大已有分区
    想理解Java的IO,不要从操作系统开始说起的都是耍流氓
    【Linux网络】ssh服务与配置,实现安全的密钥对免密登录
    如何用 GPT-4 帮你写游戏(以24点游戏举例)
    【无线传感器】WSN 查找两个节点之间的最短路径并发送数据(Matlab代码实现)
    网卡和智能网卡
    AIE双三唑桥联荧光环糊精分子/β-环糊精包覆肼二水杨腙聚集诱导发光微球的制备
  • 原文地址:https://www.cnblogs.com/wang_yb/p/18414129