其实还有很多增长经验和薪水的方法;诀窍就在于从工作的“后门”中一点点争取。例如,我之前的工作是网络的管理与监督。当时我已经很长时间没接触程序设计的工作了,并且我知道我想重操旧业。但是实际情况是我的大部分工作经验都是在Perl语言领域(当时也已经基本荒废了),并且我也好多年没编程了,不过我很清楚我在完全有资格任职之前要增加我这方面的经验。那么我都做了什么呢?我开始在空闲时帮助我们部门写程序;有时候,我甚至下班后再编代码,所有的一切都是为了积累经验和一份推荐。
4 y3 g, S6 O; d 也许你找不到一个软件开发的工作,但是你也许可以找一个倾向那方面的工作,比方说,系统工程师或者服务台。从那起步,你便可以开始显示出你代码方面的 实力从而选择或者是为自己完善一份出色的简历后辞职,还是继续晋升。实际上,服务台或是系统工程师(或者叫“计算机操作员”)的工作都是一个逐渐熟悉这个领域的最古老的方法之一。4 d8 M8 Y) n3 P- Y, q) i; j) f6 o7 ~* B
6 T8 n4 f+ `* X) d1 j. l 3. 在家工作(当自由职业者)
; D: g2 S4 H9 p" t, a4 D5 ]/ K
7 J4 {2 d" `) A% Z9 h% V# s7 a9 k 可能你找不到接受你无偿写代码的人。也许你根本就不能把编程融入到你的非编程性质的工作中(就像一个没能得到加班授权的钟点工)。这时你家的作用就突显出来了。如果其他的选择都行不通(或者为了补充目前的能力),就在家做些工作吧。找一个你真正喜欢的程序,用自己的风格写出来。或者把你日思夜想的那个程序写出来。8 j5 ?, w# c! `5 Q& d" e) i" Z6 d
! ^3 p- N, j) g" R6 i" F( p& }
在家工作时,尽量试着模仿专业环境下的软件开发流程。先写出一个项目计划,创建单元测试,晚上再执行代码等等。我保证有了它,你将成为一个更优秀的程序员,并且你也可以向雇主展示你的作品。这其实是很重要的。
1 G5 V' ^' M3 @- v, @' A9 O6 N3 h; X% z2 Y( f
我以前工作的时候,不能带上自己的作品并且展示给潜在雇主们看。因为这既违反我的雇佣合同,又违反我的雇主与客户之间的合同。但是当我在家用我自己的资源做我自己的工作的时候,我便可以自由地向潜在雇主们展示。8 S( w+ M# @' K. z4 C
0 I( x- o/ c% O3 V6 O
例如,当我想要找一份网络开发偏多,网站管理偏少的工作时,我会把简历中的亮点和推荐人的推荐语等其他东西,聚集做成一份Flash演示稿。我甚至会把演示稿压缩制作成一张可以自动运行的精美CD,所以潜在雇主只需看CD。这张CD曾帮助我在互联网泡沫时找到过工作。这真的很管用。
( i; \6 M- u. i2 }" v8 A2 w' f. N" @) v' ]0 k6 p+ ] g
作为一个多次参与面试和被面试的过来人,我敢说,如果求职者有创业经历时,会给你留下一个非常深刻的印象。这能和其他工作有相同级别的薪水么?有时候能。我认为,在可靠的开源项目中做“实际工作”和正常带薪工作的效果是一样的;除非你参与的项目实在很糟糕,并且你又把它拿给面试官看了。所以,“无薪工 作”是另外一个建议,这也通常能让你在和竞争同一岗位的众多入门级程序员中鹤立鸡群。
2 \7 B, E8 u! [" U. Y" Z- v8 ^ N2 n
编者后话
% \% E" ~0 p0 V8 T8 K7 g! J* A$ X1 @: d# k- q' R
如果你也是从事堆码事业,不知你当初是如何积累编程经验的呢?除了像原文作者所说的3个增加编程经验的方法之外,你是否还有其他更好的经验呢?如果有,请不要吝啬,请在评论或微博中分享你的建议,用来帮助那些准程序员或者想转换编程语言的IT人 |