我从事软件开发十多年了。我学到的一件事是:您不需要在晚上或周末加班来保持技术领先。我很少在课后加班或熬夜。
我从事软件开发十多年了。我学到的一件事是:
您不需要在晚上或周末加班来保持技术领先。
我很少在课后加班或熬夜。然而,我却一直在工作中学习新的工具、技术栈和系统。
在工作中学习并不是为了寻找额外的时间,而是为了以不同的方式利用现有的时间。
以下是我在日常工作中学习新技术的 8 种实用方法,无需加班:
1. 自愿从事舒适区以外的工作
如果会议上提到了一项新技术,那么我很可能会在下次会议之前在其中运行"Hello World" 。
我主要用 Java 写代码,需要有人帮我研究一下遗留的 Python 服务吗?我愿意。
想用新的 AI 工具搭建 PoC,或者测试新的数据库引擎?我愿意。
将"我不知道"改为"我会弄清楚的"。
每个专家都是从初学者开始的。缩小差距的唯一方法就是在你准备好之前就迈出第一步。
2.随时准备构建快速 PoC
有一种思维方式总是让我受益匪浅:边做边学。
我从来不会因为还没有"完全"理解一个新框架而放弃尝试它。
如果有人提到某个工具或库,我就会尝试一下。我快速构建了一个概念验证——非常简单——只是为了看看它是如何工作的。
不久前,我们正在处理 Node.js 服务中残酷的冷启动问题。
有人随口建议道:"如果我们在 Lambda 上尝试 Rust 会怎么样?"我之前从未写过 Rust,但我想:为什么不呢?
同一天,我编写了一个基本的 Rust Lambda 来复制我们的一个 API 端点。
结果如何?冷启动时间从约 800 毫秒下降到 100 毫秒以下。
这个小实验引发了更大的讨论。
我们将延迟敏感功能移至 Rust — — 这一切都因为我们从简单的"让我们尝试一下"的心态开始。
3. 记录并分享你的学习成果
学习某件事的最佳方法之一就是解释它——在文档、Slack 甚至团队讨论中。
我总是用简短的总结来记录我的学习成果,以便日后参考。这有助于我整理思路。
我还创建了一个感兴趣的开发人员小组,我们在那里互相分享学习成果。
这些知识共享会议通常会引发项目内部的一些实际用例。
4. 会议期间跟进未知技术
当有人提到我不知道的新工具、库或框架时,我不会忽略它,而是会记下来。
然后,当我有空闲时间时(例如在部署期间或运行测试用例时),我会花 10-15 分钟来探索该技术。
我不会详细探究一切,但其中的很多内容我都记得清清楚楚。
随着时间的推移,这帮助我建立了现代工具的坚实的思维导图。
这种快速跟进的习惯常常帮助我在以后以意想不到的方式增加价值。
5. 将产品改进作为学习工具
引入新技术最被低估的方法之一是通过有意识的改进。
我经常会扫描系统。我会问一些简单的问题:这个系统能跑得更快吗?它能更好地扩展吗?它易于维护吗?现代工具会有帮助吗?
如果答案是肯定的,我就会推销它。
这不仅仅是重写,而且是具有实际产品价值的明确的、有范围的改进。
这给了我探索新工具和改进产品的空间。
6. 不要害怕未知的领域
当你工作了几十年,你可能会忍不住固守自己熟悉的东西。一定要抵制这种诱惑。
我职业生涯中一些最大的飞跃都来自于说一句"好的,我会去看看"——即使我当时没有任何经验。它可能是新的基础设施、一个云工具,或者一个我从未接触过的领域。
我曾经参与过一个严重依赖 Kafka 事件驱动系统的项目。
我之前从未使用过 Kafka — — 甚至没有安装过它。
但我没有逃避,而是主动承担起建立基本管道的首要任务。
我在本地搭建了它,发送了一些测试事件,使用了它们,破坏了一些功能,并了解了它的工作原理。不到一周,我就向团队演示了一个可以运行的原型。
适应不适是每个高级工程师都需要的元技能。
7. 结对、影子、提问
一旦你有了经验,学习就不会停止。
仅通过与队友结对或跟踪调试会议,我就学到了很多东西。
当我们推出 Kubernetes 时,我没有参加课程。
我参加了一些操作同步,提出了问题,并观察了人们的工作。
随着时间的推移,我吸收了足够的知识来理解这个系统,甚至提出改进建议。
通常只要表现出好奇心就足够了。
与普遍的看法相反,您实际上并不需要熬夜加班来让自己了解最新的技术。
对正确的任务说"是"。坚持到底。这才是真正的学习。
学习最快的人不会加班,而是边工作边学习。
这是一项值得掌握的技能。
您已经使用过其中哪一个?接下来您会尝试哪一个?
留下您的答案或分享您自己的学习技巧。
好了,就到这里!如果你读到这里,就说明你喜欢这篇文章。如果是这样,请点赞。
没有评论:
发表评论