0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

全栈工程师必须掌握这些技能

工程师人生 来源:简书网 作者:酷酷的IT 2019-12-27 11:43 次阅读

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

·Git/GitHub——你必须掌握如何使用Git来管理和分享你的代码。把Git作为关键技能的第一条,是因为它不仅仅是一个代码管理工具,更是一种推荐的工作方式。它使你能在任何地方进行开发,高效地管理任何大小的项目,通过Git你还能与其他团队成员进行分布式协作,大大提升工作效率。通过GitHub,还能将你与世界所有的开发者联系在一起。

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

·运用开发框架和第三方库——流行的开发语言,一般都伴有出色的开发框架,比如,Java的Spring、MyBatis、Hibernate,Python的Django,PHP的thinkphp、yin,nodeJs的express,等等。这些开发框架往往都遵循软件开发领域的一些最佳实践,并由非常优秀的开发人员创建。熟练使用这些开发框架或第三方库能够避免重复发明轮子,从而使你的工作事半功倍。更重要的是这些优秀框架或第三方库一般都得到持续的维护,是对你的产品或项目在质量与安全方面最有效的保障。

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

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

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

在掌握了这些核心技能之后,你可以根据自己的兴趣与发展方向,学习其他方面的技术。比如,如果你对数据处理感兴趣,那么你可以学习大数据方面的技术;如果你对移动互联网更感兴趣,那么你可以学习Swift,开发iOS应用。知识总是相通的,在有了良好的技术基础后,学习其他知识将会变得非常容易。

(2)附加技能(软实力)

稍大一些的项目,你总是需要与同事、干系人或是客户进行沟通。而成功的沟通往往是获得有效需求与建立团队树立信心的第一步。在项目进行的过程中,你更需要通过有效的沟通去确定方案,消除误解,与项目成员协同前进。良好的沟通能力将使你在团队中更具影响力,受到更多尊重和关注。

·问题解决能力——全栈工程师首先是一名工程师,他必须掌握用工程化的方法来解决遇到的各种问题。我在职业生涯中的几乎所有亮点,都与解决问题相关,大到提供整个项目的架构方案,小到以最快的速度解决生产问题,等等。其实,有很多提高问题解决能力的方法,但没有一种比实践更有效。我所见到的优秀工程师,往往能够凭借直觉以最短的时间给出正确的解决方案,但你没有看到的,是在这背后经过大量实践累积而来的经验。

·时间管理——作为全栈工程师,你可角色。你需要合理地分配时间,保证所有的工作能够按时交付。同样在你的业余时间,你还需要花时间阅读和学习,同时你还可能有自己的Side Project。因此,合理地进行时间分配,并对一些关键任务进行计划是很重要的。你或许会感到一些压力,但这反而会激发你的创造力,并能让一切都有条不紊地进行。

·好奇心——对任何工作都抱有好奇心,并愿意不断学习和改善是那些优秀工程师的共同特性。软件开发领域汇集了世界上最聪明的人,各种类型的技术、产品、框架更是日新月异,层出不穷。优秀的全栈工程师需要不断地学习来抓住这些变化,跟上计算机领域发展的脚步。时常有人会问我,做计算机这一行一直会有新的东西产生,要去不断地学习,是不是会很累。我要说的是,对于将持续学习作为一种生活习惯的人来说,学习新东西并不会成为一种负担,反而是一种乐趣。

·领导力——优秀的全栈工程师往往会被赋予技术Leader甚至项目管理者的角色。成为管理者并不是让你去支配其他人,或让其他人替你做事。管理者需要理解你的团队成员的长处与不足,并知道如何以服务的态度使团队获得最大化的产出。我见过一些非常优秀的工程师,当他们被安排去管理团队时,他们是排斥的,他们往往更愿意独自工作。但我想说,成为管理者将会使你更加睿智、可靠和值得他人信赖,也会对你未来的职业生涯带来极大的益处。因此,当机会到来时,请将它视为挑战,不要排斥它。

有经验的技术领导者在招聘时,往往会同时考察应聘者的技术能力与上述附加技能,而对于初级程序员的招聘来说,那些附加技能往往更被优秀的技术公司所看重。开发技能是你的硬实力,而附加技能则可以看作是你的软实力,只有同时具备这两方面技能,才能成为一名优秀的全栈工程师。

责任编辑:wv

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 工程师
    +关注

    关注

    59

    文章

    1553

    浏览量

    67486
收藏 人收藏

    评论

    相关推荐

    嵌入式工程师需要掌握哪些技术?

    嵌入式工程师需要掌握哪些技术? 嵌入式系统是当今科技领域中的重要组成部分,它们存在于我们生活的方方面面,从智能手机到汽车控制系统,从家电到医疗设备。因此,对于那些想要进入嵌入式行业的人来说,掌握
    发表于 03-04 16:38

    企业老工程师和高校老师有啥区别

    电子工程师硬件
    电子发烧友网官方
    发布于 :2024年02月28日 17:50:00

    优秀电源工程师需要哪些必备技能

    就带大家细数一下优秀电源工程师具备的那些技能。一、新手必备课程成为一名电源高手需要扎实的理论基础,涉及电路原理、语言编程和控制理论等多个学科领域。为了帮助大家更好地掌握电源开发相关的关键知识点,我们整理
    发表于 01-29 11:29

    优秀电源工程师的必备技能大揭秘!

    就带大家细数一下优秀电源工程师具备的那些技能。新手必备课程成为一名电源高手需要扎实的理论基础,涉及电路原理、语言编程和控制理论等多个学科领域。为了帮助大家更好地掌握
    的头像 发表于 12-19 08:23 717次阅读
    优秀电源<b class='flag-5'>工程师</b>的必备<b class='flag-5'>技能</b>大揭秘!

    自动化工程师必须掌握的六大知识面

    对于电气工程师来讲,图纸是相当重要的,所以制图软件是必须掌握的,这是毫无疑问的。而且电路设计和电气识图这两个知识点是相互关联的,会画电气图肯定看得懂电气图,电气图看多了,也能设计电气图。这个地方需要根据项目的实际经验来学,多看
    的头像 发表于 12-07 09:31 338次阅读
    自动化<b class='flag-5'>工程师</b><b class='flag-5'>必须</b><b class='flag-5'>掌握</b>的六大知识面

    FPGA工程师需要具备哪些技能

    的状态机以及高级逻辑电路。 FPGA工程师需要熟练掌握HDL语言,并能够根据需要灵活使用这些语言。他们需要知道如何将各种逻辑电路和存储器组合在一起,以实现所需的功能。同时,FPGA工程师
    发表于 11-09 11:03

    如何成为一名优秀的嵌入式工程师

    利用指针直接操作内存,这有助于你更高效地使用内存。 3.熟悉数据结构:C语言提供了许多基本的数据结构,如数组、链表、、队列等。作为嵌入式工程师,你需要熟悉并掌握这些数据结构的特点和用
    发表于 11-07 15:36

    FPGA工程师所需要掌握的基本技能

    的支持的。可以看出FPGA这个行业在现在还是很热门的。并且这个行业的人才缺口也很大,欢迎各位加入FPGA这个大家庭! ■■■■ FPGA的结构 想成为一名FPGA工程师,对FPGA的结构是必须掌握
    发表于 11-03 10:32

    电子工程师需要掌握的20个模拟电路的详细分析

    电子工程师需要掌握的20个模拟电路的详细分析
    发表于 09-28 06:22

    电子工程师必须掌握的20个模拟电路详细分析

    本文档的主要内容详细介绍的是硬件工程师必须掌握的20个重要模拟电路的概述和参考答案以及详细分析
    发表于 09-27 08:22

    《电子工程师必备——电路板技能速成宝典》读后感

    理论知识,又能充分联系实际,贴近实际电子工程师工作的专业技术书籍。直到看了《电子工程师必备—电路板技能速成宝典》这本书,我终于找到了梦寐以求的那本书。 该书一共十三章,几乎涵盖了电子工程师
    发表于 09-16 08:16

    热门推荐:硬件工程师必备工具

    工程师在使用华秋DFM软件时,有哪些实用技能可以轻松掌握。 下图主要介绍在华秋DFM软件中,硬件工程师有哪些业务板块是适用的。 四、给硬件工程师
    发表于 06-21 10:15

    【别找了在这】硬件工程师经典笔试题集锦

    【别找了在这】硬件工程师经典笔试题集锦
    发表于 06-09 22:45

    【书籍评测活动NO.15】电子工程师必备丛书系列——电路板技能速成宝典

    内,提交不少于一篇试读报告,要求300字以上,图文并茂。4、试读报告发表在电子发烧友论坛>> 电路设计论坛,标题名称必须包含《电子工程师必备——电路板技能速成宝典》+自拟标题
    发表于 06-07 16:21