一直认为全栈工程师的title是一些小互联网公司鼓吹出来的。
以前有人理解全栈工程师=系统+网络+研发+dba+架构+安全+没女朋友。,但现在也有说法,全栈= 全干 = 啥都会 = 啥都不会。
社会化分工越来越重视的大厂,是否还需要全栈?全栈猿的未来又在哪里?
跟Java工程师比切页面。
跟Js工程师比Mysql。
跟Android工程师比Memcache。
跟搜索工程师比MVP。
跟IOS工程师比爬虫。
跟Hadoop工程师比NSString。
开发好一个 Nodejs 应用,怎么部署?
ssh root@ 上去就干
apt-get install git
git clone xxxx
npm install
pm2 xxx.js --add some fuck and shit options
来看看这样做的一些问题:
npm 在目标系统跑不动:懵逼了吗?测试机跑得好好的,线上服务器跑不动,是不是很爽?
神级机缘巧合:你开发一个项目,我就说40天吧。40天前,你 npm install 了30个包,然后你测试好,打包好一切,信心满满,屌屌的在你的终端输入 npm install ,随后, npm start,一堆「deprecated,error,xxoo」信息,你头发都掉光了才发现:草,老子开发40天,30个包里面有15个包升级了,5个包 breaking change 。
版本管理:线上出问题了,你回退版本。公司算是比较小吧,10台机器。你一台一台 ssh 上去,巧命令,回退,我包你头发全掉光。
大多数人解决办法就是:
npm 在目标系统跑不动:妈的,什么破云服务商,老子的机能跑上你这里就跑不了了?老子不买你了,发朋友圈,标题:「CVM xxx云,浪费老子时间」,xxx云服务商:喵喵喵?
神级机缘巧合:妈的,什么破 npm,什么破 node ,老子hold不住,更新那么快,要死?
版本管理:老夫就是精力足,老子就是没女朋友,老子就是时间多,老子就是喜欢一个一个 ssh上去改线上代码,你服不服?
是什么造成这种情况呢?
限制自己
做前端就一定死死板板的做前端,其他方面的东西一概不学,哪怕是牵涉到半点服务器的东西,马上拒绝接受。
知识广度
接上一条,限制自己以后,路子就窄了,很多东西就不敢尝试,或者不想尝试。就比如我刚刚说的,docker 一事就是如此。可能 docker 大家都听说过,包括前端,但是又有几个前端真正碰过 docker 的呢(估计很少,因为大家都喜欢 ssh root &&npm install.........)
止步不前
限制自己,知识广度不够以后,基本上就会慢慢的变成那种大家所说的「1年工作经验用10年的人才了」
其实全栈啥的 都是风毛儿,
前端很多东西都是抄后端的,原原本本。什么工程化,工作流,数据(状态)管理,MVC,响应式,函数式,面向对象,面向切面,抽象,封装。
骚年,前端和后端并没有很长的分界线,只是看你自己的积累了。