全栈工程师要掌握的技术要点

关键开发技能(硬实力):

  • Git / GitHub —— 你必须掌握如何使用Git来管理和分享你的代码。把Git做为关键技能的第一条,是由于它不单单是一个代码管理工具,更是一种推荐的工做方式。它使你能在任何地方进行开发,高效地管理任何大小的项目,经过Git你还能与其余团队成员进行分布式协做,大大提高工做效率。经过GitHub,还能将你与世界全部的开发者联系在一块儿。php

  • 至少一门编程语言 —— 你须要精通至少一门编程语言,JAVA 、PHP、C#、Python、Ruby、Perl 等,由于你的大多数核心业务处理都须要用这门语言来写。你既要掌握这门语言的语法,又须要很是熟悉如何基于这门语言进行项目的架构、设计、实现以及测试。若是你选择的是JAVA,那么你就须要掌握面向对象的设计和开发,设计模式的应用,基于J2EE各个组件的开发 等等。前端

  • 运用开发框架和第三方库 —— 流行的开发语言,通常都伴有出色的开发框架,好比JAVA的Spring、MyBatis、Hibernate,Python的Django,PHP的 thinkphp、yin,nodeJs的 express 等等。这些开发框架每每都遵循软件开发领域的一些最佳实践,并由很是优秀的开发人员建立。熟练使用这些开发框架或第三方库可以避免重复发明轮子,使你的工做事半功倍。更重要的是这些优秀框架或第三方库的通常都获得持续的维护,是对你的产品或项目在质量与安全方便的最有效的保障。node

  • 前端技术 —— 之因此将前端技术独立出来,做为一项关键技术,是由于它在今天的项目和产品的研发过程当中正变得愈来愈重要。一个产品除了实现所需的功能以外,是否好用(用户体验)也正在成为评判一个产品是否成功的重要标准。而这都依赖于前端技术的实现,你至少须要掌握 HTML五、CSS三、JavaScript 等基本前端技术,同时进一步学习 JQuery、LESS、SASS、AngularJS或REACT等前端框架或第三方库。thinkphp

  • 数据库与缓存 —— 任何产品或项目都须要一个数据库来存储数据。做为全栈工程师,你也须要至少掌握一到两个数据库,并知道怎样与数据库进行交互。目前流行的数据库主要有MySQL、MongoDB、Redis、Oracle、SQLServer等。MongoDB做为文档型数据库,在互联网产品中正被愈来愈多地使用,对于规模稍大一些的项目,我仍推荐使用MySQL或商用的Oracle做为后端数据库。而Redis这样的内存数据库则能够用于缓存,以提高系统的性能。数据库

  • 基本设计能力 —— 大部分关于全栈工程师的文章或讨论中,都不会将设计能力作为全栈工程师的关键技能,但我却认为这项技能很是重要。我曾被邀请评估一些软件工程师本身开发的产品,这些产品都有不错的创意,功能实现也很到位,但一看就不是一个好的产品,用户根本没有使用欲望,缘由是这些产品的设计太差了,而每每那些开发者彻底没有意识到问题的存在,好比色彩的不一致,排版的凌乱,不恰当的图标 等等。我所建议的基本设计能力,并不要求你像专业设计师那样可以P出神图、制做奇妙的视觉效果等,但你须要掌握最基本的UI设计原则,如 色彩的搭配,基本的排版,并具有良好的审美能力,和一些基本UI设计能力,这样你作的产品就不会太差了。express



文/技匠(简书签约做者) 原文连接:http://www.jianshu.com/p/f0d134ed7fd0 著做权归做者全部,转载请联系做者得到受权,并标注“简书签约做者”。
相关文章
相关标签/搜索