查看原文
其他

野蛮生长——我们如何成长为全栈工程师?

2016-06-18 21CTO

各位周末好,又到每隔几天的原创文章时间了。这次和大家一起讨论全栈工程师的那点事。成为全栈(大拿)不一定是每个人的梦想,但一定得敢想。请大家看正文吧。


不知道什么时候开始,有了“全栈”工程师这个名词,它的英文名是Full Stack Engineer

我并不认为这是新词,在我看来,因为我就是一个全栈工程师。我讲讲我咋成为这样的人的。

 

我是学计算机的,1998年的大学时代,我就开始尝试制做网页,那时叫homepage,还有一个来自台湾并且比较时髦的名字:“烘培鸡“。比较有名的做网页的工具,就是微软的frontpage97。它能让一个会Word的人生成HTML网页。

 

大学里教的是C语言,数据库原理,操作系统之类。我在业余时,会看一些杂志上的片断,编一些小应用。学校现在仍然是这些基础课程。这些课程很有用,只是有的时候并没有提起学生的兴趣,没有理论联论实际,结果导致学生对编程等绕弯路,觉得是一件无趣苦逼的事儿。这也是很多计算机专业学生毕业后并没有找本专业工作的原因之一。

 

当时,我还帮老师管理着学校的机房。那个时代用ISDN上网是一件奢侈的事情,还记得用sygate接通整个局域网,打开Yahoo网站的惊喜。于是,我把SUN的“网络就是计算机”,手写下来,放在教室的墙上。

 

没有课来教大家做网页,靠着兴趣,自己用frontpage制作出来,慢慢就有了感觉。还有一个很好的方法,叫做“网页另存为”,可以把别人做的网页放在本地,然后再用Fontpage编辑,来借鉴他人的优点。

 

HTMLCSS,需要沉下心自己实践。后来我建立了第一个网站,访问量也颇高,后来与炎黄在线和三九健康还成了合作伙伴。因为维护复杂,开始使用ASP,后来又学习LinuxFreeBSDPerl、Java还有PHP开发。

 

包括LOGO,图片都是自己来做。这时候,其实就已经成了“全站工程师”。

 

我做过无盘工作站,用在了几家传呼台。后来又给几家公司做了些企业网站,攻入几十个有漏洞的IIS服务器。用.NET给中国性学会做过性商测试软件(囧)。做过一款几万安装的搜索工具条flashbar(仍然可以搜索下载得到),后来被周教主杀掉了。

 

其实我们在工作后,有些特质在工作中未必用得上,只有把某一块的能力能够延展开,比如说编程,系统设计,数据库设计,系统维护。

 

我的第一份正式是大连英极,这是一家日本Livedoor.com的独资企业。我们的项目基本是25人一个项目,从需求分析,要件定义,DB设计,底层设计,编码到部署系统,用户说明书,全部做完。

 

我们不谈这种工作的方式好坏,当时很多日本人,他们比我们更拼。这种情况,要求一个人的综合能力很强,开始不强,如果你愿意去尝试,仍然可以做得很好。我目睹过一些高手,在某些方面的短板。多年以后这些同学,消失在开发的大军里,在生活中慢慢消磨殆尽。

 

我们本身的素质和能力并非没有用处,在工作的某个地方,仍会绽放出价值。比如对产品体验,对邮件格式,对Wiki,说明文档的定义。最难得是能够把这些能力变成一种核心竞争力,让别人无可取代。

 

2004年后,我开始集中在开源领域和架构,主要是PerlJavaPHPLinux,架构等领域。自已写框架,写软件,将技术与产品合并。

 

到现在为止,再上手其它语言,在应用编程角度来讲,类似于一个玩具,而不是像新接触一个新领域一样的感觉。

 

现在目前的大环境来讲,我觉得你仍然可能成为一个全栈工程师,前端HTMLJavaScript,后端PHPJava,有的语言学习曲线会稍微陡峭一点。还有iOSAndroid开发。从学习角度完全没有问题。

 

通过书籍,通过实践,真实项目锤炼。成为全栈工程师的时间有长有短,按我的经验,三到五年。我们当然要有充分的评估自身,但一定不要设限。

 

成为全栈工程师的条件:你要有一些方面的天赋,还有一个超过寻常的兴趣。还有一个想把产品做好的目标。

 

成为真正的全栈工程师,你会发现世界更广阔,可以做的事更加笃定长远。

 

作者:杜江。21CTO(21cto.com)创办人。作者有15年以上编码架构经验,原赶集网创始团队,正和岛CTO以及今日头条技术负责人。 著有《PHP5与MySQL5 Web开发技术详解》、《PHP5完全攻略》、《PHP与MySQL高性能开发与最佳实践》(即将出版)。



您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存