毕玄大佬的分享以及给我的感悟

本贴最后更新于 1668 天前,其中的信息可能已经事过景迁

前两天看了内部的一个直播,主讲人花名是毕玄,我一看本名是林昊,就觉得很熟悉。因为我在大学时读过他的一本书,名字叫《分布式 Java 应用:基础与实践》,是这本书为我打开了 Java 世界的大门,我接受到的很多新奇有用的知识都来自于此。看到这个名字当然亲切。

毕玄,本名林昊,阿里巴巴 HSF 创始人,在淘宝的十余年里完成了电商架构的多次升级,现视频云团队负责人。著有《分布式 Java 应用:基础与实践》、《OSGi 原理与最佳实践》。

毕玄在这次的分享里,主要谈了技术人员的成长,包括职业程序员需要具备的素质、架构师面临的挑战以及技术 Leader 的方法论。

【职业程序员】

毕玄举了很多例子,比如因为程序没有控制入参长度,遇到特殊场景传入了超级长的字符串,结果吃爆内存。再比如历史上有次损失几亿美金的软件故障导致美国宇航局卫星发射失败,仅仅源于各国程序员对 kg 不同的理解,使用了自己认为的度量单位,导致计算出错。

专业性很重要,专业不强,基本在犯错。

【架构师】

淘宝架构,1.0 PHP,2.0 单体 Java,3.0 分布式 Java,4.0 异地多活。毕玄完成了 3.0 到 4.0 的升级,但这个名字却是在结束之后才强加上去的。

对于架构师,毕玄认为:架构师要在技术领域有很深的积累,同时要有比较广的知识体系。架构师不需要什么都懂,但要能搞清楚系统边界,能做好技术选型。知识面广,在做选型的时候不会出现太大的偏差。架构师的决策很重要,需要平衡很多东西,平衡业务,稳定性,风险,节奏。因此架构师很大的问题在于选择。达到一个目的有很多方案,关键是选哪个方案。

架构师也要有规划能力。一次架构升级,架构师要决定,分几年做完,几年的节奏是怎样的。有些事情不允许改,不允许错,必须提前做好准确的计划,比如机房的部署,一旦选定某个地方,就不能轻易改变。

架构师要了解技术领域在工程界的排名,不能自大。不怕落后,就怕不知道自己落后。技术所有的壁垒,是时间的壁垒。

架构师的底线,是要有个核心,核心的设计是整个系统最为重要的,所有子域系统的设计必须围绕这个核心展开。并且上线的系统是可以被论证的,能够符合设计原则。

技术可以有信仰,有立场,但不能东倒西歪,摇摆不定。

【技术 leader】

技术 leader 要求有很强的方向感,这种方向感其实是很难培养的。leader 要能对团队的方向有深入的思考,并且能比老板更专业。充分想清楚可以做什么,再和 leader 沟通。

不同级别的 leader 的区别在于解问题的范围不一样,有人解团队的问题,有人解 BU 的问题,像逍遥子就是在解社会的问题。

技术 leader 应当学会信任别人,学会放手。花更多的时间思考团队的方向,思考匹配这个方向的组织阵型,每个角色的成长空间,排兵布阵。

一切都是知易行难。

【其他观点】

兴趣很重要,兴趣能够保障好永远的热情。

什么是技术深?不仅仅是某个技术工具运用娴熟,对于业务开发而言,业务系统的复杂度,比如复杂的营销规则能够用几句话讲清楚,也算技术深。

【我的感悟】

听完毕玄大佬的直播分享,给我的整体感受就是,一路走下来的他,都是技术线和管理线阶梯式成长。从普通的程序员到职责不断扩大的架构师,再到参与未来规划和组织管理的技术 leader,踩过很多坑,犯过很多错,发生过很多有趣的故事,也取得过重量级的成功。很多时候,站在巨人的肩膀上做事情,虽然不会避开一些障碍,但能吸取前人经验快速跳过这些障碍。前辈们很多的做事风格以及考虑问题的思维值得学习。

  • 程序员

    程序员是从事程序开发、程序维护的专业人员。

    583 引用 • 3536 回帖
  • 架构

    我们平时所说的“架构”主要是指软件架构,这是有关软件整体结构与组件的抽象描述,用于指导软件系统各个方面的设计。另外还有“业务架构”、“网络架构”、“硬件架构”等细分领域。

    143 引用 • 442 回帖
  • 管理
    8 引用 • 32 回帖

相关帖子

欢迎来到这里!

我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。

注册 关于
请输入回帖内容 ...
huayonglun
微信搜一搜「蜗牛互联网」,关注我同我一起成长。 上海

推荐标签 标签

  • uTools

    uTools 是一个极简、插件化、跨平台的现代桌面软件。通过自由选配丰富的插件,打造你得心应手的工具集合。

    7 引用 • 27 回帖
  • 知乎

    知乎是网络问答社区,连接各行各业的用户。用户分享着彼此的知识、经验和见解,为中文互联网源源不断地提供多种多样的信息。

    10 引用 • 66 回帖
  • sts
    2 引用 • 2 回帖 • 216 关注
  • Redis

    Redis 是一个开源的使用 ANSI C 语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value 数据库,并提供多种语言的 API。从 2010 年 3 月 15 日起,Redis 的开发工作由 VMware 主持。从 2013 年 5 月开始,Redis 的开发由 Pivotal 赞助。

    286 引用 • 248 回帖 • 21 关注
  • JSON

    JSON (JavaScript Object Notation)是一种轻量级的数据交换格式。易于人类阅读和编写。同时也易于机器解析和生成。

    52 引用 • 190 回帖 • 2 关注
  • 旅游

    希望你我能在旅途中找到人生的下一站。

    93 引用 • 901 回帖 • 1 关注
  • 域名

    域名(Domain Name),简称域名、网域,是由一串用点分隔的名字组成的 Internet 上某一台计算机或计算机组的名称,用于在数据传输时标识计算机的电子方位(有时也指地理位置)。

    43 引用 • 208 回帖
  • WordPress

    WordPress 是一个使用 PHP 语言开发的博客平台,用户可以在支持 PHP 和 MySQL 数据库的服务器上架设自己的博客。也可以把 WordPress 当作一个内容管理系统(CMS)来使用。WordPress 是一个免费的开源项目,在 GNU 通用公共许可证(GPLv2)下授权发布。

    66 引用 • 114 回帖 • 203 关注
  • 书籍

    宋真宗赵恒曾经说过:“书中自有黄金屋,书中自有颜如玉。”

    76 引用 • 389 回帖
  • abitmean

    有点意思就行了

    31 关注
  • Gzip

    gzip (GNU zip)是 GNU 自由软件的文件压缩程序。我们在 Linux 中经常会用到后缀为 .gz 的文件,它们就是 Gzip 格式的。现今已经成为互联网上使用非常普遍的一种数据压缩格式,或者说一种文件格式。

    9 引用 • 12 回帖 • 170 关注
  • SOHO

    为成为自由职业者在家办公而努力吧!

    7 引用 • 55 回帖
  • webpack

    webpack 是一个用于前端开发的模块加载器和打包工具,它能把各种资源,例如 JS、CSS(less/sass)、图片等都作为模块来使用和处理。

    41 引用 • 130 回帖 • 250 关注
  • 禅道

    禅道是一款国产的开源项目管理软件,她的核心管理思想基于敏捷方法 scrum,内置了产品管理和项目管理,同时又根据国内研发现状补充了测试管理、计划管理、发布管理、文档管理、事务管理等功能,在一个软件中就可以将软件研发中的需求、任务、bug、用例、计划、发布等要素有序的跟踪管理起来,完整地覆盖了项目管理的核心流程。

    6 引用 • 15 回帖 • 54 关注
  • wolai

    我来 wolai:不仅仅是未来的云端笔记!

    2 引用 • 14 回帖
  • OkHttp

    OkHttp 是一款 HTTP & HTTP/2 客户端库,专为 Android 和 Java 应用打造。

    16 引用 • 6 回帖 • 83 关注
  • GraphQL

    GraphQL 是一个用于 API 的查询语言,是一个使用基于类型系统来执行查询的服务端运行时(类型系统由你的数据定义)。GraphQL 并没有和任何特定数据库或者存储引擎绑定,而是依靠你现有的代码和数据支撑。

    4 引用 • 3 回帖 • 4 关注
  • 招聘

    哪里都缺人,哪里都不缺人。

    188 引用 • 1057 回帖 • 1 关注
  • jsoup

    jsoup 是一款 Java 的 HTML 解析器,可直接解析某个 URL 地址、HTML 文本内容。它提供了一套非常省力的 API,可通过 DOM,CSS 以及类似于 jQuery 的操作方法来取出和操作数据。

    6 引用 • 1 回帖 • 491 关注
  • RabbitMQ

    RabbitMQ 是一个开源的 AMQP 实现,服务器端用 Erlang 语言编写,支持多种语言客户端,如:Python、Ruby、.NET、Java、C、PHP、ActionScript 等。用于在分布式系统中存储转发消息,在易用性、扩展性、高可用性等方面表现不俗。

    49 引用 • 60 回帖 • 355 关注
  • 强迫症

    强迫症(OCD)属于焦虑障碍的一种类型,是一组以强迫思维和强迫行为为主要临床表现的神经精神疾病,其特点为有意识的强迫和反强迫并存,一些毫无意义、甚至违背自己意愿的想法或冲动反反复复侵入患者的日常生活。

    15 引用 • 161 回帖
  • NetBeans

    NetBeans 是一个始于 1997 年的 Xelfi 计划,本身是捷克布拉格查理大学的数学及物理学院的学生计划。此计划延伸而成立了一家公司进而发展这个商用版本的 NetBeans IDE,直到 1999 年 Sun 买下此公司。Sun 于次年(2000 年)六月将 NetBeans IDE 开源,直到现在 NetBeans 的社群依然持续增长。

    78 引用 • 102 回帖 • 703 关注
  • SSL

    SSL(Secure Sockets Layer 安全套接层),及其继任者传输层安全(Transport Layer Security,TLS)是为网络通信提供安全及数据完整性的一种安全协议。TLS 与 SSL 在传输层对网络连接进行加密。

    70 引用 • 193 回帖 • 415 关注
  • 导航

    各种网址链接、内容导航。

    42 引用 • 177 回帖 • 2 关注
  • 七牛云

    七牛云是国内领先的企业级公有云服务商,致力于打造以数据为核心的场景化 PaaS 服务。围绕富媒体场景,七牛先后推出了对象存储,融合 CDN 加速,数据通用处理,内容反垃圾服务,以及直播云服务等。

    28 引用 • 226 回帖 • 139 关注
  • 职场

    找到自己的位置,萌新烦恼少。

    127 引用 • 1707 回帖
  • CAP

    CAP 指的是在一个分布式系统中, Consistency(一致性)、 Availability(可用性)、Partition tolerance(分区容错性),三者不可兼得。

    12 引用 • 5 回帖 • 629 关注