从0到1

2018-08-27  本文已影响17人  Andy23

1、系统性、针对性学习;

2、知识积累:对知识的理解需要靠不断地实践来巩固;

3、复盘:看到问题后的逻辑和思考,灵活运用,举一反三;

4、能力 = 知识 + 逻辑(实践+复盘);

5、知识效率/工程效率;通用知识/业务知识;

第一阶段:大学毕业 3 到 5 年

1、基础的 Java 知识:你会开始看《Java 编程思想》、《Effective Java》;

2、高质量代码进阶知识:你会开始看《重构:改善既有代码的设计》、《代码大全》、《编程珠玑》;

3、常用的主流框架:比如 SSH 相关的《Spring 实战》、《Spring Boot 实战》、《Hibernate 实战 ( 第 2 版 )》、

线上资源: Apache 官网、Spring 官网、Hibernate 官 网、StackOverflow;

4、系统设计与算法知识:《系统分析与设计方法》、《设计模式》、《需求分析与系统 设计》、《面向对象分析与设计》、《UML 用户指南》、《算法导论》;

5、其他知识:比如数据库调优、缓存框架、NoSQL 数据库、日志框架等等;

第二阶段:大学毕业 5 到 10 年

1、能对所负责领域的业务特点、发展趋势、友商竞争分析有很好的洞察?能知道 这个业务领域的客户是谁?他们的需求是什么?他们的痛点是什么?

这 个 TL 应该需要学习《咨询的奥秘》、《探索需求》、《系统化思维导论》

对于技术型的 TL,还应该了解《成为技术领导者:掌握全面解决问题的方法》

2、服务于特定领域的客户,我们需要能了解我们的客户企业架构、业务知识。要 了解清楚规划的产品、服务,什么才是客户所需要的。那么,从理论上,我们 是否应该学习一些 TOGAF、NGOSS、ITIL 等业务理论以及业务知识;

3、作为 TL,是否有必要能将自己对于市场的洞察转换成业务规划,并能向自己的 老板(或者投资人)说清楚、讲明白?

学习《金字塔原理》,并能 非常清晰、有逻辑性地进行表达与沟通;《博弈论》、《影响力》;

4、业务进一步深入分析,需要学习《领域驱动设计 : 软件核心复杂性 应对之道》、《实现领域驱动设计》、《企业应用架构模式》、《恰如其分的软件架构》;

5、技术方案设计、接口设计以及编码实现:《PMBOK 指 南》、《敏捷软件开发》、《人月神话》、《程序开发心理学》;

6、英语与锻炼;

知识(寻找线索、建立联系、分类、追本溯源)

能力(编程能力、架构能力、工程能力)

书籍推荐:

《Effective Software Testing》

《程序员修炼之道 - 从小工到专家》

《设计模式之禅》

《Spoken Language Processing: A Guide to Theory, Algorithm and System Development》

《机器学习导论》

《Reinforcement Learning: An Introduction》《强化学习在阿里的技术演进与业务创新》

《Programming Rust》

《Machine Learning: A Probabilistic Perspective》

《Architecture of a Database System》

《从优秀到卓越》

《为什么精英都是时间控》

《创新者的窘境》

《魔鬼经济学》

《孙子兵法》

《创造自然》

《浮生六记》

上一篇下一篇

猜你喜欢

热点阅读