找工作一周,面了5家,面试的过程中发现了自己很多问题,结合之前实习生活,给大家分享下经验。
原生js很重要
虽然现在前端框架百花齐放,用起来比原生js要方便很多,但是作为一个程序员不能过分依赖框架,独立的思维和解决问题的能力很重要。归根结底,这些框架还是原生js写出来的。对于好的框架,应该学习框架的设计思想,它的优雅的地方,不足之处,思考它解决了什么问题,还存在什么问题。单纯的做一个API使用者,最后也不过是一名熟练工,而不是高级高级工程师。
不要一味的追求新框架
贪多嚼不烂。虽然很多业界大牛经常在各种社交网站上发表新框架的体验,虽然这些框架很火,github星星过万,但是作为新人,并不具备这种快速学习的经验和能力,刚刚学的框架,还没体会到它的精华,就换目标了。
前端框架实际上更新的很快,不要什么火,就去学什么。存在即合理,有些人觉得jQuery落伍了,但是还是被大量使用,试试打开调试板输入$,简书还是用到jQuery了。
→_→此经验不适用于已经领会编程精髓的高手新人。
前端需要大量实践积累经验
用户体验,数据交互,有些东西,自己亲自做过才知道坑在哪!自己搭建一个网站可以很好的了解整个web运行的过程。建站的教程很多,我就不多说了。
对工作的态度
对刚刚毕业的年轻人来讲,前几年需要的是踏实的学习、不断地积累经验,对于工资的要求不用特别高,能不能学到东西才是关键,IT也算是高薪的一个行业了,基本温饱是可以满足的。要有吃苦耐劳的精神,这里不是鼓励加班,是建议每天抽点时间学习和思考。多看看源码,fork点自己感兴趣的项目。能力强了,工作也会变得得心应手。
情商很重要
如果你智商已经高到可以无视情商的地步了,那恭喜啦,任性点也没关系。刚刚步入职场,年轻气盛,容易浮躁,好高骛远,让人觉得不靠谱,领导不会放心把重要的事交给不靠谱的人办的。不要好高骛远,有目标有追求是好事,但是在对自己认识不够清晰的时候,要选择更坚实的基础。对待同事,真诚即可,不用太热情也千万不要随便冒犯前辈,职场不是学校,无所顾忌可能会碰壁。
一口气说了怎么多鸡汤,来点干货吧。
面试题
不定宽高的垂直居中,清浮动,css画图(三角形之类的)
DOM操作
hack技巧
排序算法
H5和CSS3的新属性,特别是H5
原型,闭包,继承,面向对象
网站性能优化
跨域
手写AJAX
jQuery 源码 on(),bind(),delegate()的区别,jQuery有那些局限性,实现一个简单版的选择器功能
简绍一下你熟悉的MVC框架(会针对性追问比如,为什么要这样设计)
模块化 sea.js require.js的区别,实现一个模块加载器
编程题:实现一个商品做活动的倒计时函数。编写对Cookie操作的函数(保存修改等)。
推荐几本js书
《JavaScript高级程序设计》
《JavaScript语言精粹》
《编写可维护JavaScript》
最后说点实际点的,面试的时候和技术谈应该态度踏实点,不要拿自己一知半解的东西逞强(比如设计模式),面试官经验比你丰富,分分钟钟问的你卡住。对人事要谨慎,什么按效绩发季度奖,半年一次加薪,上市后发股权,都是画大饼,真的进去了,加薪比测试阶段无bug难,季度奖可能不存在,实打实的基本工资才是王道。
有空再补面试题答案