初次得知全栈工程师是在知乎上看到如何成为全栈工程师 这个问题的时候。在排名最高的答案中,对于全栈工程师给出了这样一个定义
一个真正的 Full Stack Engineer ,他从生活中发现问题,洞察需求,他设计解决方案,并开发出初始版本的产品。为了达到目标,他愿意去学习任何领域的技能和知识。同时他不追求一个人完成所有工作,如果有人可以比他在某方面做得更出色,便会十分热情的邀请他们加入。他们学习技能和知识,不是为了成为某个领域的专家;而是因为那些 是完成自己目标所需要的。
而在另外一个答案里有这么一句话
我觉得任何一方面的具体经验都不重要,重要的是思维方式和学习能力。
当时我对这两段话并没有什么深入的理解,只是觉得他们说的很对但又不知道对在哪里。毕竟当时我还在写hello world,没有什么经验。过了快一年,当我完成了一些小项目,又读到《web全栈工程师的自我修养》这本书时。感觉对于从前两句话,对于全栈,对于工程师有了新的认知。
何为全栈工程师
在书中第一章便提到了应该从能力和思维方式两方面,来判定一个人是否是一个合格的全栈工程师。一个全栈工程师首先要”一专多长”,这点很容易理解,工程师首先要有一个专精的方向,在这个方向上足够精通之后,以此为突破点去学习更多的知识。如果没有在某些方向上的深入理解,囫囵吞枣般的去学习其他知识,反而会影响学习的深度,最后恐怕会成为一个看上去什么都会,其实什么都不理解的的程序员。全栈工程师的另外一个特点就是学会解决问题,而不是醉心于技术,技术总是在快速的变化,而全栈工程师存在的意义是解决问题。当碰到问题时,不应该只想到如何利用现有的技术去实现,而是要想如何用最好的技术去实现,不会的话,就马上制定计划去学。
如何成为全栈工程师
- 先精后广,一精多长
- 围绕商业目标
- 关注用户体验
工程师之路
积累作品集
理解编程语言
软件设计方法
- 设计模式
- 架构模式
- 设计原则
高效工程师
学习设计
管理与沟通
明天有空来写