网站首页 > 技术文章 正文
目前虽然招前端的地方的很多,很多互联网公司在前端领域都非常缺人,但也怕招到不靠谱的人来创造负价值。如何让公司觉得是一个靠谱的前端工程师呢?可能需要以下几个方面:
1.懂得现代前端的一些新技术
比如:
- 前端自动化工具(Gulp/Grunt等) 
- 模块化(CommonJS,AMD/CMD模块加载器,各种Bundler,ES2015 Modules等) 
- 前端 MV* 框架(Backbone,Angular等) 
- 编译到 CSS 和 JS 的一些语言(Less/Sass/CoffeeScript等) 
- 前端自动化测试工具(Karma,Mocha,Web Driver等) 
- 其他 
2.懂得Web标准和浏览器开发维护的流程,并且关注新发布的标准和主流浏览器新实现的特性
在回答兼容性或Web标准这类问题上,最好清楚:
- HTML、CSS、DOM,ECMAScript 和一些泛 HTML5 的标准是如何制定的 
- W3C 和 WHATWG 的区别 
- 各种标准的不同版本和提交状态 
- 标准和实现的差别 
- ECMAScript 和 JavaScript 的区别 
- 浏览器的一些常见做法(比如给 CSS 特性加前缀)的缘由 
3.多看书,多关注技术资讯
技术资讯的来源包括RSS、邮件订阅、比较重要的邮件列表、或者follow Twitter和微博上一些比较有影响力的开发者。
4.不仅懂得如何写,更要懂得如何不要这么写
Web 标准大多不是严格向后兼容的,很多几年前常用的写法,现在已经不被建议这么做了。有很多特性也随着时间的流逝被打上了 deprecated 的标签,如果不幸拿着一本比较老的书籍试图入门,那么很有可能就会被误导。类似的问题还有:
- JavaScript 里数量众多的的过时的hack 
- 一些在经验丰富的前端看来属于常识的东西(比如:为什么 CSS 大多放在 head,JavaScript 多放在 body 底端?) 
- 划分各种模块、文件,添加模板的正确方式 
- 解决一些老问题的新的best/better practice 
5.不依赖某个特定的框架或者库
比如离开了jQuery就不会写前端的人。如果高度依赖某个框架或者某个库的话,通常意味着更换一个框架/库的学习成本会比深刻理解前端原理的人高,因为这通常还是对前端不入门的表现。
6.了解一些设计的知识
懂得基础的视觉传达/色彩构成/平面构成的知识。毕竟前端是和设计师联系比较密切的,虽然前端要做的事不仅仅包括 UI/UX,但是 UI/UX 却都主要依赖前端来实现。
7.懂得一些后端的知识
前端工程师肯定要了解一些计算机网络和 HTTP 等协议的知识,有了这些知识去学一些后端知识是水到渠成的事情。即使只想专注于前端,但前端有一些领域(比如 JS 跨域,WebSocket,SSE,WebGL 的素材获取)都需要懂得架设简单的后端才能去实践。
8.在前端上投入足够的时间
最后,还需要投入足够多的时间才能取得一些成果,不然就很可能就是纸上谈兵了,最后也达不到期望的结果。如果不是真的对前端感兴趣并且投入足够多的时间,与其仅仅为了“好找工作”或“找个薪水高的工作”而投前端,不如换一个自己从心底里喜欢的方向。
陈童的博客(http://www.everyinch.net/)专注于用户体验研究的IT类网站。发表用户体验研究与度量方面的知识,分享前端与三维网站技术,总结人机交互、集体智慧算法的研究心得,推荐国外相关资源。
猜你喜欢
- 2024-10-23 ECMAScript 6的历史和未来前景展望
- 2024-10-23 JavaScript 引擎基本原理:Shapes 和 Inline Caches
- 2024-10-23 Vue进阶(四十二):var、let、const三者的区别
- 2024-10-23 JavaScript编程基础2(javascript编程工具)
- 2024-10-23 什么是ESLint?(什么是血糖)
- 2024-10-23 前端三剑客:HTML、CSS 和 JavaScript
- 2024-10-23 JavaScript 后端开发者必须跨的 10 道门槛
- 2024-10-23 ECMAScript 2023 新特性解读,附代码示例
- 2024-10-23 带你走进JavaScript世界系列——window对象和全局作用域
- 2024-10-23 前端基础:ECMAScript 6(前端基础笔试题及答案)
- 最近发表
- 
- 聊一下 gRPC 的 C++ 异步编程_grpc 异步流模式
- [原创首发]安全日志管理中心实战(3)——开源NIDS之suricata部署
- 超详细手把手搭建在ubuntu系统的FFmpeg环境
- Nginx运维之路(Docker多段构建新版本并增加第三方模
- 92.1K小星星,一款开源免费的远程桌面,让你告别付费远程控制!
- Go 人脸识别教程_piwigo人脸识别
- 安卓手机安装Termux——搭建移动服务器
- ubuntu 安装开发环境(c/c++ 15)_ubuntu安装c++编译器
- Rust开发环境搭建指南:从安装到镜像配置的零坑实践
- Windows系统安装VirtualBox构造本地Linux开发环境
 
- 标签列表
- 
- cmd/c (90)
- c++中::是什么意思 (84)
- 标签用于 (71)
- 主键只能有一个吗 (77)
- c#console.writeline不显示 (95)
- pythoncase语句 (88)
- es6includes (74)
- sqlset (76)
- apt-getinstall-y (100)
- node_modules怎么生成 (87)
- chromepost (71)
- flexdirection (73)
- c++int转char (80)
- mysqlany_value (79)
- static函数和普通函数 (84)
- el-date-picker开始日期早于结束日期 (76)
- js判断是否是json字符串 (75)
- c语言min函数头文件 (77)
- asynccallback (87)
- localstorage.removeitem (77)
- vector线程安全吗 (73)
- java (73)
- js数组插入 (83)
- mac安装java (72)
- 无效的列索引 (74)
 
