摘抄分享:陈皓的技术 20 年
最近陈皓大佬来公司做了一次分享:《我这技术 20 年 —— 一个中年程序员的经历》,毫无疑问这位前辈许多经验是值得学习和借鉴的。因此将公司整理的分享内容摘抄在此,已被查阅。
同时这里把个人介绍部分隐去,仅就具备泛用性的经验总结做记录。
成长中的一些心得
- 黄金学习期(20-30岁)
- 这是努力学习的时间段,你一定要把时间花在解决问题的技能上。
- 一定要练就成的技能是:你能解决大多数人不能解决的问题。
- 使蛮力埋头加班苦干,当一个搬砖老黄牛的是肯定没有前途的。
- 黄金事业成长期(30-40岁)
- 整个社会是会把最重要的工作交给30岁左右的这群人的。
- 30岁-35岁左右这群人是这个社会的做事的中坚力量。
- 如果你赶上了,事业会发展的很好。赶不上就要中年危机了
- 两个重要的能力
- 高效的学习能力:
- 这意味着——你要高效的学习能力、见过很多的场景、犯过或是处理很多错误,有实战经验,能够防火而不是救火。 解决难题的能力
- 这意味着——基础知识扎实、触类旁通、读英文文档不费劲、有寻找前沿知识的能力、能够看到问题和技术的本质、善于思辩、 能独立思考
- 解决难题的能力
- 这意味着——你要高效的学习能力、见过很多的场景、犯过或是处理很多错误,有实战经验,能够防火而不是救火。
- 两个重要的标志
- 帮人解问题:
- 团队或身边中大多数人都在问: “这问题怎么办?”,而总是你能站出来告诉大家这事该怎么办?
- 被人所依赖
- 团队或身边中大多数人在做比较关键的决定时,都会来找你咨询你的意见和想法。
- 三条路
- 职场:顶尖技术公司 (视野,层级,发展) ;上升期创业公司 (空间,成长,回报)
- 经历:与众不同的经历;最前沿最刺激的经历
- 自由:工作自由;技能自由 ;物质自由
- 认识世界和自己
- 世界需要什么样的技术人员
- 技工:能使用的操作技术并能按时出活,做得越快越多
- 工程师:了解原理能解决难题,自动化和规模化,降低工程成本提升效率
- 专家:有探路能力;贡献更好更优的方法;能够创新和简化;能够提高标准;标准化和抽象
- 领导者:创造价值和利润;吸引人才和资源;组织并带动团队;提升整体效率;感知变化和潮流;抓重点,洞悉本质
- Google 评分卡
Google评分卡可以分为四档:02是一档;35是二挡;68是三档;910是四挡。- 对于相关的技术领域还不熟悉;
- 可以读懂这个领域的基础知识;
- 可以实现一些小的改动,清楚基本的原理,并能够在简单的指导下自己找到更多的细节。
- 基本精通这个技术领域,完全不需要别人的帮助
- 对这个技术领域非常的熟悉和舒适,可以应对和完成所有的日常工作
- 对于软件领域:有能力开发中等规模的程序,能够熟练和掌握并使用所有的语言特性,而不是需要翻书,并且能够找到所有的冷知识;
- 对于系统领域:掌握网络和系统管理的很多基础知识,并能够掌握一些内核知识以运维一个小型的网络系统,包括恢复、调试和能解决一些不常见的故障。
- 对于该技术领域有非常底层的了解和深入的技能。
- 能够从零开发大规模的程序和系统,掌握底层和内在原理,能够设计和部署大规模的分布式系统架构。
- 理解并能利用高级技术,以及相关的内在原理,并可以从根本上自动化大量的系统管理和运维工作。
- 对于一些边角和晦涩的技术、协议和系统工作原理有很深入的理解和经验。能够设计、部署并负责非常关键以及规模很大的基础设施,并能够构建相应的自动化设施。
- 能够在该技术领域出一本经典的书,并和标准委员会的人一起工作制定相关的技术标准和方法。
- 在该领域写过一本书,被业内尊为专家,并是该技术的发明人。
- 找到自己的优势
- 特长:找到自己的特长和天赋;找到自己可以干成的事;找到别人会来请教你的事。
- 兴趣:找到自己非常着迷的事;找到有多困难都不放弃的事
- 方法:有时间观念、会做计划,不磨蹭,懂统筹规划;对做过的事,犯过的错会总结归纳,有举一反三的习惯;喜欢自己找答案,自己探究事物的因果关系
- 环境:找到一个适合的环境,有不错的硬件条件,有上进的队友,有高手带你
- 勤奋:注定是个比较劳累的人,只要能勤奋那还是能立足
领导力模型
- 所谓领导力不是职位,不是头衔,更不是称号。而是——
- 别人有问题会来请你帮助听你建议的一种现象。
- 别人由心里愿意跟随你,愿意听你指教的一种现象。
- 别人学习你、参照你、模仿你的一种现象
- 领导力模型
- 标准高:坚持高标准,不妥协;有工匠精神,对事物有品味;总是能够找到地方不断优化
- 解难题:分析的拆解问题的能力;能够比较并找到普适的方案;能够把方案执行落地
- 方法:不使蛮力,喜欢使用科学的方法;善于归纳和总结最佳实践和方法;热爱学习、动手和实践,喜欢简法和自动化
- 创新:对很多东西都不能忍,善于思辨和反思,有好奇心,喜欢尝试和折腾
学习模型
- 学习的目的
学习不是找答案,而是找到通往答案的方法
学习是为了认识原理和本质,一通百通
学习是为了打开认知,知道自己不知道 - 学习的金字塔模型
讨论、实践、教授给他人属于主动学习,所以我写blog、教别人、做分享等等。 - 能力转换模型
- 我的体会
- 挑选知识和信息源——第一手资料非常重要(英文非常重要)
- 注意基础和原理——可以忘了形式,但是可以徒手打造出来
- 使用知识图系统的学习——通过知识关联可以进行“顺藤摸瓜”
- 举一反三——用不同的方法学同一个东西;学一个东西时把周边的也学了
- 总结和归纳;形成框架、套路和方法论
- 实践和坚持——实践才能把知识变成技能,坚持才能有沉淀
- 如何面对枯燥和硬核的知识——找到应用场景和牛人;补充基础知识;咬牙使劲啃
- 其它小技巧——不要记忆;把信息压缩;经常犯错;坚持分享;它山之石可以攻玉
- Knowledge Sources 知识源
- Feed Site
- Reddit/Programming https://reddit.com/r/programming/
- Hacker News https://news.ycombinator.com/
- Papers l 2 Minute Papers https://www.youtube.com/user/keeroyz
- The Morning Paper https://blog.acolyer.org/
- Best Paper Awards in Computer Science http://jeffhuang.com/best_paper_awards.html
- Google Research https://research.google/pubs/
- Microsoft Research http://research.microsoft.com/apps/catalog/default.aspx?t=publications l Facebook Research:https://research.fb.com/publications/
- MIT’s Distributed System’s Reading Group http://dsrg.pdos.csail.mit.edu/
- arXivPaper Repository https://arxiv.org/list/cs/recent
- Papers We Love https://github.com/papers-we-love/papers-we-love
- Engineering Blogs
- Cloudflare Blog https://blog.cloudflare.com/
- Netflix Blog https://netflixtechblog.com/
- Uber Engineering https://eng.uber.com/
- AWS CTO -All Things Distributed https://www.allthingsdistributed.com/
- Microsoft -Cloud Design Pattern https://docs.microsoft.com/en-us/azure/architecture/patterns/
- AWS Blog https://aws.amazon.com/cn/blogs/aws/
- High Scalability http://highscalability.com/
- RedHat Blog https://www.redhat.com/en/blog
- Splunk Blog https://www.splunk.com/en_us/blog
- Data Bricks Blog https://databricks.com/blog/category/engineering
- Martin Fowler https://martinfowler.com/
- Hacker Noon https://hackernoon.com/
- Brendan D. Gregg http://www.brendangregg.com/
思维模型
- 思考的过程
- 近几年的思维模型
- 最后几句话
如果你和大多数人一样思考行事,你的结局必然和大多数人一样
人生就是一个翘翘板! 你不可能得到所有的东西,要知道自己要什么
无论你做什么选择,你都会有得有失! 多关注自己得到的,而不是失去的!
The world is not a fine place but it’s still worth of fighting for
坚持做事的高标准,坚持对技术严谨和敬畏的态度,不要妥协!