㈠ 你觉得一名高级前端工程师应该具备哪些方面的能力
Web前端工程师岗位所需要的技术知识库:
为网站上提供的产品和服务实现一流的Web界面,优化代码并保持良好兼容性;
Web前端表现层及与前后端交互的架构设计和开发;
JavaScript程序模块开发,通用类库、框架编写;
利用各种Web技术模拟开发产品原型;
配合后台开发人员实现产品界面和功能;
Web新技术调研和资讯整理;
精通HTML/XHTML、CSS,熟悉页面架构和布局,精通Ajax、JavaScript、DOM等前端技术,掌握面向对象编程思想;
熟悉一种以上后台开发语言(如PHP/Java以及一种数据库(如MySQL/Oracle)。
根据千锋武汉web前端学习的学员反馈来看:Web前端工程师是具备产品的界面开发、制作标准优化代码、懂增加交互动态功能、与后端工作人员做工作协调的技术管理人员。
㈡ 作为一名web前端工程师需要具备什么技能
1、HTML
HTML页面固定,标签不多,学起来比较容易,这也是很多零基础转行IT首选前端的主要原因。HTML是页面结构的基础组成部分,是网站的基础,编写HTML代码需遵循HTML代码规范,臃肿混乱的HTML代码不但会影响其本身的表现,而且与其对应的CSS和Java代码也会变得难以编写和维护。
2、CSS
CSS负责网页类容的表现,也是前端开发需要掌握的核心内容之一。CSS和HTML代码一样,没用复杂的逻辑,上手也比较容易,其主要难点在于如何合理利用CSS的组合和继承特性来编写简洁,维护性好的CSS代码。
3、Java
Java是一种基于对象和事件驱动的客户端脚本语言,是页面实时动态交互的技术基础。开发人员在熟悉Java基本语法和基本的编码规范之外,还应该了解并解决在不同浏览区中Java的兼容性问题。另外,目前流行的Web编程方式会有部分后端代码存在于前端页面中,和前端HTML、Java等混合在一起,如PHP、JSP、ASP.NET等,因此,前端开发工程师也有必要了解一些后端编程技术。
4、跨平台、跨浏览器
跨平台指移动设备(如智能手机和平板电脑)和PC端;
随着IE6,IE7市场占有率下降和众多浏览器标准的重视,目前流行的前端框架已经很好滴解决了浏览器兼容问题。尽管如此,还需熟悉常见的浏览器兼容问题,如IE7、IE8的兼容,HTML5中新特性的兼容等。
5、前端框架
前端框架的出现在很大程度上降低了前端开发的难度,框架统一了编码的方式,封装了浏览器兼容问题并添加了大量的扩展功能。目前比较常用的前端开源框架有很多,比如jQuery(Java库)、angular2、vue.js、react等。
6、调试工具
对于前端代码,在调试过程中需要查看HTML结构变化,CSS渲染效果,Java代码执行情况以及HTTP请求和返回的数据,并了解网站各部分的性能等。主流浏览器都有对应的浏览器插件来辅助完成这个工作,如IE中的IE
Dev Toolbar、Chrome中的Developer Tools、Firefox中的Firebug等。
7、实战经验
企业在招聘的过程中都想要选出上手即用的前端人才,这就需要求职者具备相应的开发经验、能够很快的接手工作。因此如果你想要学习Web前端,不仅要掌握理论知识,更要注重积累实战经验。
8、沟通表达能力
求职面试需要好的表达能力,在日常工作中前端人员也要具备好的沟通能力。Web前端是介于UI和后端逻辑开发之间的岗位,需要与UI设计师沟通确定效果,还需要和后端工程师沟通确定前后端交互,良好的沟通让你这些过程变得轻松许多。
㈢ 前端开发工程师需要具备哪些能力
作为前端工程师,掌握前端基础是最重要的,如果基础不扎实,一切应用技能就都是“浮云”。前端的基础是什么?HTML、CSS、JavaScript基本功,数学、算法、数据结构、操作系统、编译原理基本功。
另外必须要有自己擅长的领域,并且钻研得足够深入,同时要有眼界,能“跨界”。可以以前端作为职业,但千万不要把自己的技能限制在前端领域,因为有很多东西,只有站在前端之外,才能看得更清晰更透彻。
㈣ 怎样快速判断一个前端工程师的能力如何
对于考察人的技术等级,学界是有认真的研究的。参见:德雷福斯模型解说。
德雷福斯模型把人的技能水平,分成 5 级:新手、高级新手、胜任者、精通者、专家。
对不同技能等级的认定是这样的:
新手:依靠指令清单,必须按部就班。就是必须给出详细而具体的操作规则,才能工作。比如你做一道从未做过的菜,需要看菜谱的说明,第一步做什么,第二步做什么等等,直到最后烹饪结束。
高级新手:有限的情景洞察力,同等对待工作的各个方面。对全局性、体系性的东西没兴趣。这是小工的水平。比如他能跟着师傅干点活,打打下手。可以靠着反复检索搜索引擎、StackOverflow 解决具体的小问题。
胜任者:能够独立解决各种各样的领域内问题。这是一般的企业招聘,比较希望招到的等级,招进来稍作适应就能干活了,省心省力。
精通者:经验丰富,可以自我纠正、自我改进。这类等级的人,思考可以指向内在,通过反省、反馈改善技能。这种在企业可以算上高手、大拿了,培养不易。
专家:依靠直觉工作,不需要解释和理由。实际你让他解释,他可能也说不出个所以然,就是直觉给出答案,然后还是对的。专家人数稀少,需要很长时间训练、实践。通常的说法是 10 年出专家,10000 小时定律。
这个是理论上的研究,实践中比较缺乏操作性,难以迅速的判定应聘者的实际情况。不信你打开收进来的大把简历,刚毕业的学生,每个技能名词上面都是一堆堆的“精通” – 你相信么?但它可以当成一个职业技能等级判定的参照标准。
于是乎,各家企业开启了各种“笔试”、“机试”,多轮面试,并且严格要求学历以及出身院校,试图以此过滤掉不合意的应征者,留下合格的人选。它当然是可行的,但是效果一般,而且容易出错,错失有思想有水平的人。不然也不会催生出各类“推荐式”的招聘。
看重学历、学校当然也有其优点:它是快速过滤的手段,毕竟能考上好学校的人智商不会太差吧。但在大数字公司的一朋友说,公司里面还有初中毕业,一直精研安全领域的人,技术能力也是十分出色。如果严苛对待背景,这些人就会错过了。因为人的生活多种多样,有各种历史的背景因素影响经历。而部分人的经历,就是跟一些人不同的,可是不妨碍他们同样可以变得优秀。招聘,实际上是建立信任关系。如果有充足的信息证明,应聘者足够优秀,这就够了。条条框框只是辅助手段,并不是目的。
推荐式的招聘实际要靠谱的多,因为人很容易了解熟悉的人的水平。这是靠推荐者的信用背书。人平时沟通时说什么话,日常看什么书,关注哪些领域,琢磨过啥问题,哪些东西很熟,这个经常聊的熟人往往都知道。可是,这类招聘局限性也很大:面窄、靠机缘。靠推荐能招几个好手啊?好手往往是各家争抢的对象,窗口期有限,基本不会缺工作的。
说了一圈,还是要在技能水准判定上有更高效率的办法,招进合适的人来。
回到开头的德雷福斯模型,既然人的技能是分级的,那么对待不同的职位要求,也应该侧重不同的考察角度。如果千篇一律的走招聘流程,就容易出问题了。比如你明明要找的是“精通者”,可上来就让人一堆笔试、机试,这是不合适的。对方会十分的厌烦。体现高水平技术能力的并不在默写什么“字符串算法”那里。这反倒是刚毕业的人占便宜,因为才学过不久,印象深。不信你让工作 10 年的人跟计算机专业应届生比比写排序算法,真未必能赢。但是这并不重要 – 你干活不看手册不查文档吗?聪明人从不死记硬背。重要的地方在于对问题域的准确、深刻的理解,对各类技术优劣点、各种条件平衡的评判和把握。
对待初阶新人,应着重考察的是基本功是否扎实,专业成绩是否优秀。更重要的,是他对职业的热情,学习能力和研究精神。某类人要说起技术来,滔滔不绝,两眼放光,充满热情,对未知的、新生的各类概念、技术非常好奇,这种人想差都难。因为他会自我驱动,不用督促,自己就钻研前进。反之,觉得这个职业待遇高,只是想混饭吃的人,很少走得长远。这类初阶新人以毕业生、工作年限少者为多。测试考核,可以笔试查看其对基础概念的理解是否准确,知识领域的大致范围。甚至,布置一个有点挑战性的小任务,让他尝试解决,说明思路。
考察胜任、精通者的策略不一样。笔试做题没啥用,原因前面说了。这类招聘是重头戏,企业都喜欢找这样的,能干活。所以考核评估的地方也较多。我觉得可以分成几个方面去看。意识是否先进,是否会反省思考;是否善于解决问题,富有创造性;是否有比较深的积累和广阔的知识面。
业界的开发思想也是在不断变化,工具链一直在革新。聪明的人不用蛮力,而爱用工具提升效率,喜欢自动化操作解放人力。要查看人用什么开发工具链,用什么开发环境,解释下为什么?好的开发者会及时注意新出现的工具,挖掘它能解决什么问题,并尝试吸收,解决自己的需求。如果没有这个思想意识,工作效率就会打折扣了。因为你会落后行业发展水平。人善于自我反省,则会催动自我纠正,这正是精通者的特征。参考:优秀的开发者为什么要学习研究新的编程语言?
解决问题的能力是重头戏,也是企业招聘人的主因。人要善于解决实际问题,而且,要学会聪明的解决问题。解决问题要看思路,看手段,看是否有创造性,这是真正考验人能力的地方。好的开发者,会考虑很多可能选项,预估各种优劣,给出一个较优的方案。 遇到难题,会用各种方法尝试。经验丰富的人,常常会使用技术的组合手段来处理难题,而不是一个语言一个工具到处用。所以,要查看下过往的项目经历遇到的问题、困难,是如何解决的,思路如何。一些公司据说不招聘不会用谷歌的工程师。谷歌打不开?嘿嘿,这就是你要克服的困难啊。这你都解决不了,还做什么研发。谷歌是人类最全、最新知识的总索引,充分利用事半功倍。
考察知识的深度、广度,对重要领域的概念是否有深刻的理解和掌握,以及从各类工作经验中得到的认知。问问他看过什么书,研究过什么东西。说白了,知道的东西是否多。一些公司很喜欢用 CheckList 模式来考核,列一堆领域的知识点、概念,问人懂不懂,知道就是水平好,不懂就是水平差。实际情况并非如此。人的工作过程是独立的,一些事情如果没有工作机会去接触并解决,那么一些冷僻的问题就永远都碰不上。当然也就不知道。但你能说没做过就一定做不好么?
另外,人的技能树,其实也是“犬牙交错、参差不齐”的。什么意思?技术领域非常的广阔,你真的没办法每个领域都很精通,实际上是这个做的多,懂的多,那个用的少,知道的少。这个时候,应看具体知识领域,是哪一类。它是否需要复杂的、难度较高的背景。门槛高的技术,需要的配套技能多得多,比如 AI、机器学习。而一般产品应用领域则不然,了解核心概念、设计意图,看着手册、最佳实践,也就能上手了。这个暂时不会,实际无关紧要的,工作一段学的认真点就会了。但是门槛高的领域,就需要很长时间的学习了。这是本质的差别。
我曾看见某公司放出的职员技能树,包罗万象,几乎一切 IT 领域的知识技能都在里面了,还声称要求“全部精通”。我不知道它如何定义的“精通”,如果按德雷福斯模型的定义,能做到的那是神,不是人类。这个纯属吹牛皮,我压根就不信。如果真有这样的人,出来让我膜拜下。因为每个稍大点的领域,都足够让你钻研一辈子,因为它们也在迅速发展呀。业内流传“全栈工程师”的说法,鼓吹自己是全栈的人经常是前端工程师。而研究后端工作领域的技术高手经常鄙视这类人:真以为会点 Node.js 就能解决一堆后端的事务了么?我也懂一些前端,也能号称“全栈”,但在不同领域的专业性是什么水准,自己明白的很。前端要解决的事情也有很多复杂性。全栈实际是反专业化的,是人力资源稀缺时候的低成本选择。
更高一层,则是考察人本身了。人的视野够广阔么?其它领域的知识有了解吗?一些问题的解答并不在问题域本身,而是在外面的领域。所谓“功夫在诗外”。公司讲求团队协作,总要面临不同的分工合作问题。比如产品、运营的人提需求,可以换位思考吗?合作意识强么?谁也不想招个刺头进来吧?把团队的气氛和人际关系搞的一团糟,大家做事都不痛快、不顺心,又如何安心做好工作?最终只能让团队工作效率下降,甚至瓦解。
㈤ web前端开发需要具备哪些技能
现在的前端开发工程师,主要进行网站开发,优化,完善的工作。不过,现阶段的网站开发已经不同于早年的网页设计,当时主要是以图片和文字为主,用户使用网站的行为也以浏览为主,现在的网页更加美观,涉及多种元素,用户与页面的交互性更强,所以,对前端开发人员的技能要求也更高。
现在的前端开发,可能不仅仅要掌握三大基本技能,更多的是要熟悉各种开发工具的使用,Dreamweaver:,Sublime,HBuilder等都是比较热门的工具。
工具只能解决某个单一的问题,这时候就会解除到多种框架的运用:除了三大基本框架Angular、React、Vue,还有Bootstrap、 Fbootstrapp、BootMetro、Gumby、IVORY、Kube等都是要慢慢学习的。 另外,现在的前端开发可能还要学习网站性能优化和服务器端相关的基础知识。
前端开发工程师需要掌握的技能是相当丰富的,能够从事的范围也是相当广泛。前端开发的前景相当光明,只要学得好,一定能有所收获。
㈥ 一个优秀的前端工程师应具备哪些技能
1、熟练而全面的掌握web前端技术
优秀的web前端开发工程师要在知识体系上既要有广度和深度。如果你的html、css(包括现在的HTML5+CSS3)基础不会,或者不够扎实,或者JS很好,但布局基础不行……这些表现不仅和优秀的标准相差深远,甚至连合格的web前端都谈不上。一个优秀的web前端至少能实现视觉和交互功能,以及与后端服务器通信,完成业务逻辑。我理解的前端工程师的核心价值就是对用户体验的极致追求。
2、具备快速学习的悟性及本能
web发展的很快,甚至可以说这些技术几乎每天都在变化.如果没有快速学习能力,就跟不上web发展的步伐。优秀的前端工程师必须不断提升自己,不断学习新技术、新模式;仅仅依靠今天的知识无法适应未来。web的明天与今天必将有天壤之别,而前端工程师的工作就是要搞清楚如何通过自己的web应用程序来体现这种翻天覆地的变化。
3、培养良好的代码规范编写习惯
一名优秀的web前端从程序设计风格,即在编制程序时所表现的特点和思维逻辑就能展现出来。这就要求我们在设计程序中要使用结构合理、清晰,形成良好编程习惯,对程序的要求不仅是可以在机器上执行,也要给出正确的结果,便于程序调试和维护。
㈦ 作为前端开发,需要具备怎样的能力
一名优秀的Web前端工程师应该具备以下技能,看看你是否符合吧!
【必备】
PhotoShop/Fireworks Design
配合美工将草图形成具体的符合WebPage的设计
有快速制作分层高品质PSD、PNG的能力
能迅速将PSD、PNG的内容构思成div+css或者table等HTML代码
Flash Design
基本动画效果
复杂的交互体系设计,了解第三方swf辅助设计软件
复杂的交互体系设计以及较强的对各类外端口资源(PNG、JPG、MP3、WAV等)的整合能力。精通部分第三方辅助设计软件(AE、SwishMax、Swift3D等)
【必备】
XHTML/CSS
基本的layout实现
严格跨平台的layout实现以
优雅的HTML code,尽可能符合标准并有SEO的考虑因素。在任何平台、浏览器下基本保持一致。不要求了解各种CSS的hacks,但要求知道遇到问题应该如何查阅资料以在第一时间内解决。能够为JavaScript开发人员提供最好操作的DOM结构,让JS开发人员在开发的时候认为”一切都已经准备就绪了”,而不是”捉襟见肘”。
JavaScript/Ajax/DOM
基本的DOM操作,了解AJAX,可以实现数据通信
基本的DOM操作,能写高效率的OOP代码,以降低维护成本
基于需求,进行不同的开发,选择合适的框架,做到代码效率最高,用户体验最好,代码下载量最小,并且可以在单独甚至更多产品线中最大限度重用代码
Flash Developement
基于Timeline的ActionScript操作,能实现简单交互
掌握a外,能实现数据层通信(与服务器以及本地SharedObject)
精通AS1-3,能根据需求进行各类RIA开发。无论是要求支持FlashPlayer8的,还是FlashPlayer9的,都能做到开发效率最高、灵活性最大(比如对HTML层的接口设计,等等)。
【必备】
Apollo
产品级的封装,基本技术了解(如何打包、如何加入HTML和JavaScript等)
掌握a的同时,能利用Apollo的API独立设计、开发OS的文件I/O功能。
掌握基本技能的同时,对”3D概念体系”有所认知。这里”3D”即:Design(设计)、Development(开发)、Deploy(产品部署)。能用Apollo
Windows Presentation Foundation、WPF/E(Silverlight)
等等(这只是部分)
总结:可以不了解技术细节,但应该知道原理,最好能掌握一两套设计思想(毕竟数据逻辑都在这里走,光看HTML和JavaScript,对人的见识还是有局限的,这种局限限制了我自己很久的时间),那将是一比宝贵的财富。
㈧ Web前端开发的五大核心技能有哪些
开发语言
HTML发展历史有二十多年,历经多次版本更新,HTML5和CSS3的出现又是一次革新,有些人认为前端开发要掌握的技能简单,不就是制作网页嘛,其实不然,Web前端需要掌握的核心语言xHTML+CSS+Java,Java作为最难的语言之一,许多编程高手也不敢妄自菲薄自封精通。由于Java与html的差异性,以及静动态分开处理的一些好处。在大公司编写静态效果和动态效果往往是分开由不同的人完成的。浏览器兼容性
互联网目前主流浏览器有IE6789,Firefox,Chrome,Opera,Safari,遨游,包括国内主流的搜狗,腾讯 TT,360,the World等等;从内核上讲主要有IE的,遨游版IE,safari,firefox以及opera的,这些都是大家常见的,每种内核对代码的解析是不完全一样的,即使同样内核也可能存在很大差异,如IE和遨游版的IE。不说非主流的浏览器,就主流的浏览器要做到完全兼容,也并非易事,需要长时间的积累和测试,需要前端开发工程师对前端开发的热爱和激情。hack技术
由于不同的浏览器对CSS的解析认识不一样,因此会导致生成的页面效果不一样,这个时候就需要针对不同的浏览器写不同的CSS,这个过程叫CSS hack。虽然我们写代码都要求按照标准,不写hack代码,但实际工作中为了兼容主流浏览器,hack代码是免不了的,所以这也应该是每个前端开发人员 必备的技能。业内标准
目前Web前端开发中提到最多的就是W3C标准,这是一系列标准的集合,代表了互联网发展的方向,也代表了前端开发的一种信仰。写的代码都要100%通过标准验证,为通过标准验证而感到自豪,会有效推动互联网的快速发展。开发工具
目前比较流行的是Dreamweaver, 其曾经风靡一时,到现在也没有退出历史舞台,证明DW还是有很大优势的,尤其是针对初学者,其强大的提示功能可以帮助我们很快的熟悉并掌握网页布局,但现 在更提倡的是纯手写代码,既体现技能方面的卓越,也可有效避免使用DW等工具产生的冗余代码。
㈨ 前端工程师需要拥有哪些技能
1.开发语言
HTML发展历史有二十多年,历经多次版本更新,HTML5和CSS3的出现又是一次革新。有些人认为前端开发要掌握的技能简单,不就是制作网页 嘛,其实不然,web前端需要掌握的核心语言xHTML+CSS+JavaScript,JavaScript作为最难的语言之一,许多编程高手也不敢妄 自菲薄自封精通。由于JavaScript与html的差异性,以及静动态分开处理的一些好处。在大公司编写静态效果和动态效果往往是分开由不同的人完成的。小公司因为需要压缩成本,就要求每个人会得越多越好,如果您想往项目经理发展,能懂一两门后台语言,绝对是锦上添花!
2.浏览器兼容性
互联网目前主流浏览器有IE6789,Firefox,Chrome,Opera,Safari,遨游,包括国内主流的搜狗,腾讯 TT,360,the World等等;从内核上讲主要有IE的,遨游版IE,safari,firefox以及opera的,这些都是大家常见的,如果你身边有老网虫喜欢收藏 浏览器,你翻翻他的硬盘,相信几十款肯定是有的。每种内核对代码的解析是不完全一样的,即使同样内核也可能存在很大差异,如IE和遨游版的IE。不说非主流的浏览器,就主流的浏览器要做到完全兼容,也并非易事,需要长时间的积累和测试,需要前端开发工程师对前端开发的热爱和激情。
目前移动互联网的发展趋势也不容小觑,将慢慢占据互联网的主要份额。移动互联网最突出的好处是方便和及时,试想一下,走在某地风景很好,拍下来后自 动分享给各路好友,因此手机上的浏览器兼容也看刻不容缓,现在手机上的浏览器也是纷繁复杂,主流的UCWEB,safari,IE,3G门户的,以及 symbian低端机的“残缺儿童”,包括国外流行手机我们不知道的一些浏览器,更糟糕的是这些浏览器解析因为手机硬件的不同,每个浏览器得到的结果都是 完全不同的。
3.hack技术
由于不同的浏览器对CSS的解析认识不一样,因此会导致生成的页面效果不一样,这个时候就需要针对不同的浏览器写不同的CSS,这个过程叫CSS hack。虽然我们写代码都要求按照标准,不写hack代码,但实际工作中为了兼容主流浏览器,hack代码是免不了的,所以这也应该是每个前端开发人员 必备的技能。
4.业内标准
目前Web前端开发中提到最多的就是W3C标准,这是一系列标准的集合,代表了互联网发展的方向,也代表了前端开发的一种信仰。写的代码都要100%通过标准验证,为通过标准验证而感到自豪,会有效推动互联网的快速发展。
5.开发工具
目前比较流行的是Dreamweaver, 其曾经风靡一时,到现在也没有退出历史舞台,证明DW还是有很大优势的,尤其是针对初学者,其强大的提示功能可以帮助我们很快的熟悉并掌握网页布局,但现 在更提倡的是纯手写代码,既体现技能方面的卓越,也可有效避免使用DW等工具产生的冗余代码。此外再掌握一些photoshop技能,即使没有美工,也能 简单处理一些图像。
小结,掌握以上技能,可以说你是一个合格的前端开发人员,能够参与到一个大的项目中,或者自己独立写出一个网页。虽然这看起来和网页制作设计差不多,从效果上来看,都是制作网页的,但实际上,技术上所超出的已经是好几个档次的东西了。
㈩ 前端人员具备的基本能力有哪些
前端人员对事情的把控拿捏能力要很强,随时随地解决身边不管是工作还是生活上的问题,遇事沉着冷静,善于从多种角度思考问题,树立完成宏远目标的理想。