左耳听风 - 程序员修炼之道「读书打卡 day 07」
你好!我是 Java 工程师蔡姬,此蔡姬非彼菜鸡!很高兴和大家一起共读陈皓老师的《左耳听风》一书,并在这里分享自己的感悟。
我的读书打卡将会分为两部分——笔记 + 打卡。
笔记部分,我会整理在读书过程中感悟比较深的内容,和你一起分享。
打卡部分,我会就一个点阐述个人的思考。
话不多说,让我们开始吧!
笔记
准程序员应该知道的
对学生群体的建议:
不要乱买书,不要乱追新技术、新名词。基础知识需要长时间去积累,因为它们至少在未来 10 年内仍然通用。
回顾历史,厘清技术发展的时间线,才能预测技术发展的方向。
一定要动手实践,即使例子很简单,也要自己动手编写一遍,并确保理解了其中的细节。
学会思考,思考为什么要这样做,而不是那样做,还要能够举一反三。
有一个程序员的样子
学习一门脚本语言
掌握一种主流编辑器(非 IDE)和一系列基本工具
熟悉 UNIX/Linux Shell 和常见的命令行
学习 Web 基础(HTML/CSS/JavaScript)和服务器端技术(LAMP)
绕不开的硬核技术
C 语言和操作系统调用
Java 语言
Web 安全与架构
关系数据库
开发工具
编程知识图谱
C++/Java 语言和面向对象
加强对系统的了解
系统架构
程序员升级“里程碑”
20 岁到 30 岁时决定程序员未来的重要阶段,这个阶段的首要任务就是提升学习能力和解决难题的能力。
在工作的第 5 到第 7 年,你首先需要拥有高效的学习能力。这意味着你掌握了扎实的基础知识,能触类旁通,读英文文档毫不费力,也说明你有寻找前沿知识的能力,能够看到问题和技术的本质,善于思辨和独立思考。在此基础上,如果你见过很多场景,犯过或是处理过很多错误,能够做到“防火”而不是只会“救火”,那么你就拥有了解决问题的能力。
拥有这两项能力的人在团队中会表现出与众不同的特质。比如,当周围的大多数人都不知道该怎么办时,他总是能够站出来指明方向;当团队在做重要决定时,通常会先询问他的意见。这种特质就是领导力。一旦你在 30 岁左右具备了领导力,你的工作就会进入正向循环:由于学习能力强,你将有更多机会解决难题,从而学到更多技术,变得更强大。几年后,你人生的可能性将会大大增加。
培养领导力必须先找到自己的长处和适合自己的环境。
具备领导力的程序员可以追求三个职业发展的目标:
在职场中奋斗(职场)
去经历有意义、有价值的事情(经历)
追求自由的生活(自由)
程序员职业发展目标之一:职场
去顶尖公司
去顶尖公司的一个目标是扩大领导力的辐射范围。
在顶尖公司掌握的技能和拥有的眼界,是在普通公司难以企及的。
去真正的创业公司
部分技术能力强的人才在大公司可能会被埋没。
成熟的公司更重视系统的稳定,整体思路趋于保守,不利于技术创新和个人能力的尽情施展。
职业生涯的发展阶段
有一个不争的事实,整个社会都会将最重要的工作交给 30 岁左右的人。如果你具备领导力,公司和领导会将重要的团队和工作交给你。因此,30 岁到 40 岁是不折不扣的事业上升期。为了抓住机遇,你需要具备如下的软技能:
带来业务人员的能力。
推行自己喜欢的文化的能力。
项目管理的能力——在时间紧、任务重的情况下保证交付。
沟通和说服他人的能力。
解决冲突的能力。
管理团队和激励团队的能力。
解决突发事件的应急能力。
你需要开始关心并处理复杂的人事问题。尤其在大公司中,利益关系错综复杂,有些人的行动是由各个利益驱动的,大多数人的目标不一致,且每个人都有自己的想法。因此,你需要花费大量的时间观察和揣摩其他人,在他们之间周旋,而且这的确会占用个人创造价值的时间。“Talk is cheap, show me the code” 已渐渐远去,“Code is cheap, talk is the matter” 将成为你的日常。
高层之所以抽不出时间关注细节,正是因为他们需要协调整个组织和系统的运转,需要为了争取资源和发展空间而进行各种博弈。
技术人员在职场中要么成为真正的技术公司的专家,要么成为职业经理人。
程序员职业发展目标之二:经历
不管是打工还是创业,在国内还是在国外,程序员真正应该拥有的精神内核是,你是否愿意和有想法的人一起追逐前沿技术。
程序员职业发展目标之三:自由
第一层自由——工作自由。不用面对失业危机。面对工作机会时既可以拥有选择权,也可以选择随时辞职去做自己想做的事情。
第二层自由——技能自由。工作自由的局限性在于,自己仍然需要靠别人提供工作机会。而技能自由则是指可以通过技能养活自己,不再需要公司。
第三层自由——物质自由。物质自由本质上离不开投资。但可用来投资的不一定是金钱,时间和青春也是本金。投资是有风险的,然而不敢冒险可能才是最大的风险。
一个人追求自由的门槛并不低,不仅要拥有领导力和创造力,能走在大多数人前面,能指导大多数人,还要懂得投资,知道应该将时间、精力和机会投放在哪里。
打卡:程序员在升级打怪过程中,哪些内容可以看作是里程碑?
在我看来,程序员在不同的成长阶段有不同的里程碑。
初出茅庐:独立完成线上代码改动,测试,部署上线流程。
渐入佳境:独立完成需求沟通,方案设计,线上验证流程。
再上层楼:主导复杂任务的设计,经过深入调研并输出完善的技术方案,最终落地实施。
持续进阶:指导他人完成复杂任务的设计,给出指导性的建议并得到大家认可,赢得信任。
勇攀高峰:洞察并定义业务问题,模糊问题具体建模,最终以技术赋能业务。
每一步都需要日积月累,厚积薄发。缺乏持续成长能力,很容易在某个层次停滞。值得一提的是,不断追求在当前层级更加熟练是很难突破到下一层级的,跨层级的成长需要的不仅仅是技术上的积累,更是思维上的突破。和大家共勉之。
以上便是今日份的笔记和打卡内容。欢迎你在评论区留言,我们一起探讨,共同进步。
我是 Java 工程师蔡姬,期待和伙伴们有更多交流和思维碰撞,明天见!
版权声明: 本文为 InfoQ 作者【Java 工程师蔡姬】的原创文章。
原文链接:【http://xie.infoq.cn/article/6cf3ba0fab568d3bf0c67aa71】。文章转载请联系作者。
评论