编程语言应用

注册

 

发新话题 回复该主题

26自学转行前端写给和1年前一样迷茫的 [复制链接]

1#
北京哪个医院皮肤科好 http://pf.39.net/bdfyy/xwdt/

转行前端有哪些疑虑?

在人生的抉择处,寻求一些别人的经验和总结,无可厚非,但是决定了就一定要坚定的走下去,谨慎是为了更好的坚持,而不是放弃的理由。

写在前面:这里前后端指的是web开发的前后端。

1、前端岗位需求如何?前景如何?薪资如何?(这是对将转行业的必要考量)

2、是自学好?还是培训好?(抱歉,我是自学的,对于培训,下文不发表任何观点)

3、如何高效学习,多久能找到工作?

4、非科班会不会没发展?年龄大会不会被淘汰?

5、前端和后端哪个好?上手?发展前景?

以上这些问题,有些是1年前我想知道的,有些是1年前我所看到的文章里提到的,也顺便一起总结,我将用很长的篇幅从自己的亲身实践及各阶段的心路历程来论述。

关于我

先来看看我们是不是一类人吧,或者有多少相同点。

本人一般本科-电子信息专业,大学唯一学过与前端有一丢丢关系的课程,算是C语言吧(if、for这些语法和js接近)毕业后从事了近3年环保方面的工作,17年开始自学并转行,是一个不折不扣的非科班大龄零基础程序猿,不仅离开了自学的天堂(学校),而且已婚已育,常言道进入社会工作了就学不进去了,别说还有了家庭和孩子,对此我有一些不同的看法:

这就提到了一个关于兴趣和压力的问题。

1、兴趣:从小到大,总是被问你的理想是什么?我依然记得这些声音:我要当科学家、我要当发明家......我只能说当时教育的价值观和崇拜都是正确的,可是这虚无缥缈的理想是个啥?

兴趣远比理想更能发挥积极作用,更贴近实际生活

这就是命啊!记得当时是我弟弟去问他上海的舅舅,学点什么能有个一技之长,因为他是做互联网这块的大牛,自然推荐我弟弟了一些js方面的知识,说只要肯学,上手了薪资很高。

说句实话,一开始就是被薪资高这三个字吸引了,连前端是什么都搞不清楚状态,就这么糊里糊涂的开始了,靠着一点c语言基础,学起了javaSE,看看概念做做小例子,无比畅快,相见恨晚,后来才知道java和js完全不是一个概念。

2、压力:从小到大,就没主动看过书,上学完全是被逼出来的,而有了兴趣之后,再给你来点压力,即使是这样的我,还是坚持看了好几本书的(具体过程后面详细讲)

综上所述:对于一个无兴趣无压力的我,再多的时间也是浪费,而当你有了努力的理由,就别怕来不及,我把这个看作是开窍了,存在即是合理,之前的经历都是铺垫,不后悔!

是自学好?还是培训好?

我是自学了差不多4个月才找到工作的,说实话有点艰难。前端是什么?要学什么?能做什么?怎么去做?这些问题都要你自己一点点去寻找答案,所以入门推荐视频学习,有的老师还是很优秀的,讲起来幽默风趣,总会带一点自己的理解,不像书本那么晦涩难懂(有了一定基础绝对要去看书、看书、看书,书是人类进步的阶梯,一点没错)。培训就是你花钱有人带着你咯,就像你回到了学生时代(具体效果,去问培训出来的人吧)。这里有必要强调一下上文提到的兴趣和压力,如果没有这两点,你自学肯定不会成功,培训就不一定了,就像我不爱学习也考了个本科一样(是不是有点自吹的嫌疑?)当时我选择自学主要有两点:一、时间和家庭不允许培训,一大把年纪了还跑去花钱远离家庭培训4个月,有点作;二、如果没有自学的能力,即使培训出来也是废柴一枚,不如直接搬砖去了,干嘛换个地方培个训再搬砖,多此一举。

这里先插播几个例子,有时候真感觉自学*和培训*无故就成了两派

1、我有个同学也是毕业后工作差不多1年,培训转行的,培训到入职顺风顺水,我在决定转行时也与他交流过,他作为一个成功的培训*,自然推荐培训的,而且他说他们经理的意思是偏向培训的,至少培训出来的人一定能做些基础的活,而自学的就不保证了。

2、在我工作半年之际,有幸代表公司面试了几个前端(社会可能对此有误解,姑且用着这个名称),我就按照公司工作的要求和一些基础知识聊聊咯,因为我们公司嘛招的都算是新人,所以这里面肯定是泾渭分明。

A同学是自学的,我问及一些基本工作要求和基础时,他很自信地说:没问题,很简单。毕竟大家都是自学转行的,何苦为难人家呢,那就多聊聊吧?言语间,他说他经常逛各大博客、张鑫旭老师的网站、看慕课网(噢哟,不错哦,感觉自学能力很强),还说他目前在研究vue、react等框架(我问他那你觉得用这些框架有难度么),他说我觉得很简单,人家都给你封装好了,你就拿过来看着文档用就好了,前端的东西没什么难度,我还想学点后端的东西(这里我不得不吐槽他了,你TM啥都不会呢就拽成这样了,要不招你来当销售?)然后聊了那么久,最后我还是给他机会了,我和他说基础很重要,你面试的是前端,给你个PSD图,做个静态来看看先(结果你们肯定想不到。。。

我估计我这辈子都忘不了这货了)过了2天,按道理这时间很慢了,他发我一个网站,还备注了一大堆内容:说我这个导航是用的浮动布局的,轮播用的插件,悬浮的那个横幅我以为是固定在banner图上的,后来才知道是悬浮的,反正很简单就fixed就好了,就没做,下面的内容嘛全是选项卡,我就不做了(敢情我给你两天时间让你来给我指点迷津了?这里要骂人了啊兄弟们自己脑补,这种人千万不能学的,这就叫好高骛远、纸上谈兵)。

B同学是培训出来的,还有过工作经验,照理说能满足公司需求了,奈何她的观点又雷到我了。她培训出来做了2年切片,静态应该毫无问题,问及一些css知识却不会(是什么限制了你的能力),那再问问js吧,虽然这里用不到太多,姑且问问。来了,来了,大神开讲啦。她说js我基本没用过,反正现在cms模板里就集成了js插件,而且像阿里、腾讯、百度这些大公司都有自己的框架,前端的技术已经非常成熟了,我们没必要去学这些东西,只要用他们的就好了(你真的会用么?)

也难怪了前端经常被吐槽(包括我依然不能算合格的前端工程师),我当时看到了一片文章《写给那些转行做前端的人》,很明显他是招聘前端的大神,虽然文章开头有些极端的劝阻转行的人,可以说是非常痛心疾首,但是后文的分析和给出的意见还是很中肯的,我觉得兴趣也好,压力也罢,即使是高薪诱惑,能激励你前行的动力都可以,但是千万不要误解。只有菜鸟才分前后端,那是为了高效开发,分工合作,当水平到达一定境界后必然是全栈,不同的只是出身,所以不要认为会了皮毛就能月薪上万,高薪后端说不定样式写的比你好!

结论:不管你自学还是培训,最重要的是基础和不断自学的能力,把培训当敲门砖方得始终!

前端岗位需求如何?多久能找到工作?前景如何?薪资如何?

1、需求

1年前我也是网上查来查去,居然都说前端缺口很大,找工作很简单,这里补充一点我是无锡人(不能代表上海、深圳的实际情况)很显然我信了,在查阅这些问题的同时,我也寻求着学习方法,入门还是推荐视频学习,我看的第一套视频是51自学网(纯粹分享,后来接触多了觉得妙味课堂和慕课网更好一点)上的H5教程,里面涵盖了html、css、js大部分基础知识,还有实战,质量还是可以的,唯一不足的是老师说学完这套视频运气好可以找份左右的工作,我居然又信了(这里除了求职者,可能还有用人公司的问题,后文写到求职经历时再行说明)

我是个比较纠结的人,之后还看了很多html和css的基础视频,几乎都是讲解属性作用的,当然还有编码规范,我觉得不能相信一家之词,所以看了很多相同的视频,甚至还刷了一遍W3C的html、css、js,这里我可以很负责任地告诉你们,三人行必有我师,我们要站在巨人的肩膀上前行而不是看风景,当你集众人之所长的同时,潜移默化中扎实了你的基础(基础很重要,大公司重基础,小公司重实践,这是普遍现象,也是对于转行的人最残酷的地方,你会发现两者你都没有)一边面试,一边学习,我终于醒了,恍然大悟。

前端岗位缺乏的是中级以上的前端工程师,而不是入门级的,所以想光凭会一点html、css是找不到工作的,就算你背的滚瓜烂熟也没用,实践和理论不是一个概念,于是很多人会推荐新人,你直接去学bootstrap、vue、jq等等框架,这种急于求成也是要不得的,首先在基础不扎实的情况下你很难掌握,即使硬着头皮掌握了,开始了愉快的工作,你很容易迷失在自我感觉良好的幻境中,框架解决了大部分问题,疑难杂症问领导,而在中国估计一个小公司决定了框架后够你用一辈子,那你可算是真的完了。。。你的前端梦止步于此。

公司不可能养一个无法完成基本工作的人超过1星期的,所以你得把前端最基础的东西做熟练,才能找到一个公司慢慢进阶。我觉得首先把图切出来,然后做成静态页面,你别管怎么获取动态数据怎么放到服务器给别人看,你就疯狂做你的静态页面(一开始没有PSD就百度找点图片还省得切了),零碎的知识点总是容易理解的,有针对性的小demo毫无压力,当你真正开始化零为整的时候,css感性的一面就会暴露出来,各种属性相互影响,你要把这些问题完美解决,不能等到工作让你布个局你还百度怎么清除浮动,兼容性另说了(随着时代发展,大部分只兼容到IE8,可以说减轻了很多负担)这里为什么说是完美解决?因为css不像传统语言那么理性,同样的布局你可以有很多的实现方法,这里再强调一遍基础很重要,想做前端就一定要尊重前端,别人云亦云说css很简单。正因为它的简单,导致了它的不简单。

砖头式编程就是定宽定高,浮动,更有甚者直接绝对定位的,当你刚学会理论没有实践的时候也许你就会这么做,所以多练多总结才能配合使用好css的各个属性,做出一个合格的布局,好多后端就是被这种简单蒙蔽的双眼(吐槽时间:如果你去应聘一个公司,他觉得前端很简单随便找个人都能做,而且后端可以兼职,只是最近忙想找个前端做做样式的,千万不要去!!!

分析:会样式的后端到处都是,做的比前端还好的凤毛麟角,基本p8以上了,这样的公司你去了得不到尊重不说,让你改他们后端写的样式就要了你亲命了)目前我所遇到的后端通常学会个浮动就觉得拥有了全世界,有问题直接绝对定位,哈哈,你影响我?我飞到天上看你怎么影响我,什么这边怎么间隙小了,来个margin吧,怎么又大了?改个负值(我可真聪明,有些菜鸟前端都不知道可以用负值吧)文字居中直接center,文字滚动就marquee,还写样式,还用插件,都是傻瓜,这么好用的标签不用。

(因为这是写给转行同学看的,想来你遇到的不会比我强太多,如果不是这样,我只能两行老泪带着羡慕恭喜你)所以入门级的你看到这些布局和弃用标签怕不怕,就问你怕不怕,维护起来比登天还难,好不容易找到了修改了,你发现全是内联,没有类名,最多给个id,有多少就改几遍,抱怨?BB?要不你重写,本来样式就不归我后端管(能抱怨还是好事,我怕你被他们同化,这样的话你也可以努力一把偷师,从后端入手,不过老板可能要说你了哦,这些东西我们后端都会,你作为前端还改乱了,要你何用)

结论:说了这么多,无非还是告诉你们基础很重要,虽然实际需求的不是我们,但我们扎实了基础,假以时日我们就是需求对象。做前端就要尊重前端,中国目前还是后端地位高一些,主要发展早,对于客户而言,功能总是排在界面之前,你不能给人家一个赏心悦目却不能用的产品吧?早期程序员都是全栈的,既然现在随着发展分离出来,肯定是有他自身的存在价值和体系,技术体系日益庞大,即使站在巨人的肩膀上短时间未必能消化,才有了前后分工,正确理解他存在的意义,别自己限制住自己,不想当全栈的程序猿不是好猴子!!!

2、多久能找到工作

听到过很多这样的说法,前端很简单,自学1星期就能做网页,这其实也不错(只要有公司要你,出问题时,给你足够的时间去解决,或者有人给你顶着,和你合作的人不嫌弃你的代码质量就行)本着对自己和公司负责的态度来说,你至少静态页面要做的很6,像我上面提到的,做一个静态页面基本不会出现布局问题,也不用百度就合格了,具体时间看个人,我是用了4个月,主要当时很迷茫,完全和别的文章推荐的模式一样,面试要求这个了,我就去学这个,要求那个了,我就去学那个,当时我也以为自己css很牛逼了呢。

插播一下我的经历吧

(1)上文也提到,我刷了很多遍html、css基础,还看了《DOM编程艺术》成就感十足,做了几个静态网页,以为很牛逼了,就去面试了,结果人家问jq会不会用啊,轮播、放大镜、选项卡这些基本组件会不会啊?我是一脸懵逼。

(2)这次刷了《锋利的jquery》完全颠覆了《DOM编程艺术》这本书(当然看还是建议看的),取值赋值那叫一个6啊,开心,还用起了小插件,感觉自己做的网站有了动态效果(该不会这就是网上说的动态网页技术吧?哈哈)又去面试了,啪啪啪,上来先把自己会的展示一下,面试官问:bootstrap会吗?现在可都要响应式的。

(3)继续回去补响应式开发咯,学一学bootstrap,然后又遇到问vue会吗?react会吗?此处就长话短说了,还有问混合式app开发会吗?于是我还去学了基于mui的app开发,最气的就是被面试官喷前端是搬砖的,不懂后端做什么程序员之类的,那时候我很谦卑,还回去学mysql了,这个事情,后文总结的时候,我要拿出来吐槽一下某些用人单位的。

(4)最后我很感谢聘用我的第一家公司,但是我还是进去做网站的,刚进公司时,我还经常挑灯夜战,因为代码可维护性差呀,所以说基础很重要(强调了那么多遍基础,可能也不太好理解何为基础,例如:js里事件的冒泡与捕获,闭包,原型链机制,布局当中的BFC,垂直居中等一系列实践的问题),迷茫的我被牵着鼻子学了那么多暂时用不到的东西(不后悔啊,永远不后悔自己的任何经历,事实也证明存在即合理,在公司需求app的时候,我和同事用mui完成了跨平台的混合app并成功发布)

总结:集中精力去扎实基础,争取2个月找到一家做网站的公司,别没学好基础就随波逐流去搞各种框架,先了解,缘分到了自然会了,引用一下自己创建博客园时的签名所谓境界,像宇宙般虚无缥缈,却又像宇宙般在岁月的长河中积累、沉淀,无声无息地壮大自己。有些事非一朝而能明了,有些理非一夕而能透彻。带着自信坚持下去,书读百遍,其义自见,境界到了,万物皆虚,万事皆允!

大公司重基础也对学历和年龄讲究,小公司重实践经验,如果占其一,你还可以选择选择,既然两者都没有,那就没什么好考虑的了呀,破罐子破摔啊,反正转行找工作就是艰难,个人建议注重基础,未来才走得更远,然后拿出你态度去海投,没必要去迎合那些乱七八糟的公司需求,有些公司需求一大堆,又写着经验不限,恨不得你啥都会,记住真正有技术需求的,你那仅是了解的状态一眼就被看穿,而随大流随便写需求的公司往往都不和你谈技术的,所以会就会,不会就不会,正是应聘者和用人单位的这种不坦诚导致了现在的前端乱象(用人单位嫌弃简历上写的天花乱坠,什么都会,一问三不知的,应聘者也恶心那种后端为主,只是知道前端有哪些技术栈就直接罗列一下的公司)

吐槽时间:中国至少无锡,好多公司领导都是销售,就算技术经理也是后端多,如果到达这个位置还对前端一无所知,我觉得有必要喷一喷,你那么看不起前端,你招什么前端,让保洁阿姨兼职好了,我去应聘的web前端,你问我java会不会?别告诉你的java指的是javascript而不是java,我说我会js可以考虑学一下nodejs往后端发展一下,领导发话了啊,js只是运行在浏览器的一个脚本而已,你会这个有什么用,不知这位自称搞了10年技术的大佬断网了多少年,

这绝对真实,他应该不是技术大佬而是大忽悠,否则公司危矣,面试遇到这样的,你就直接拿简历礼貌的走人吧,记得带上简历(1块钱复印费呢),还有就是大部分不限经验的,都是培训机构,一般上来问一问你的情况(最好你不会,你要是会,他都能给你忽悠的不会了)然后就推荐你培训啦,这就是市场经济,如果你坚持不去培训就提前做好调查,别总是白跑一趟,有些明确的就可以拉黑或者屏蔽了。

3、前景

H5新增的api如视频、音频、canvas不要太强大哦,加上CSS3的新特性,可以说颠覆了html+css创造之初只为展示图文信息的初衷,走向了富媒体时代,js也因node的出现,向服务端进*(之前看到node之父自己数落了一下自己犯下的错误,然后宣布抛弃node这个亲儿子,具体还没怎么了解,不管怎么说js越来越强大了)。人类作为生物链顶端的生物,永远不会满足于现状,当互联网产品稳定成熟之际,拼的就是差异化、个性、创意,前端一定程度上也是个设计师,哎呀,这家伙真的是太花心了,难怪被世人误解。加上

分享 转发
TOP
发新话题 回复该主题