年过半百后,如何才能继续做喜爱的编程工作?
| 2012-09-26 14:20 收藏: 1 分享: 1
前言:有关程序员35岁(或30岁)后职业生涯话题的讨论,在国内常常可看到。不过这种职业生涯担忧烦恼,国外程序员貌似也逃不了。这不在 Quora 上就有一个问答贴:As a software developer, how can I ensure I remain employable after age 50? (作为一名软件开发人员,在50岁之后,如何才能确保自己一直受雇用呢?),提问者的问题描述如下:
我最近看了一些文章,它们似乎极为清晰地表明,我这个程序员一旦过了35岁之后(我差不多就快要这个岁数了),应该要努力去找一份新工作。在接下来二三十年中,如果我想继续做我喜爱的编程工作,我该做些什么,才能有助于我不会丢了程序员这份工作?
<–下文内容是来自(Linked 早期工程师、前Google员工) Leo Polovets 的回复,得票数为78, 由新浪科技-鼎宏编译。–>
背景:我30出头,但我周围却有一批比我老得多的程序员。以下是我的个人观点,不代表雇主。
关键不在于年龄,而在于雇主的年龄观念。当你40、50、60岁时,雇主会认为你想当项目主管、架构师、首席软件工程师之类的职位。他们还会认为,过去二三十年,你的薪水每年都提升了5%至10%,所以与只有3年工作经验的25岁年轻人相比,你的市价可能高出50%至100%。
因为雇主认为你比年轻人要求的职位和薪水更高,所以他们会认为聘请你的门槛更高。如果年轻程序员不了解最佳的工作方式,或许不是什么大问题。但如果你不了解,那雇主自然会怀疑你的价值是否真能比其他应聘者高出一倍。
要改善这种状况,可以考虑以下几种方式:
——当一个很牛的程序员。这简直是废话,但杰夫·迪恩(Jeff Dean)和肯特·贝克(Kent Beck)这样的人总是很容易找到程序员的工作。他们的水平都高得出奇,但如果能达到一定水平,哪怕是远低于杰夫·迪恩,那么无论多大岁数,仍然很容易找到工作。
——成为专家。既可以是某种语言(Clojure、Java、C等),也可以是某个领域(数据系统设计、算法设 计、机器学习等),甚至可以是某类软件(欺诈探测系统、推荐引擎等)。这些技术很多都已经存在了十年,甚至更久,所以,如果你成为专家,肯定会很抢手。但 有两个警告:1)你必须喜欢这个领域,否则会很不快乐;2)环境会随时间而改变,所以最好是将此作为5至10年的计划,而不是30年计划。如果你目前的专 业领域开始过时,就应该探索新的领域,但不要等到真正过时再动手。
——对一些初级职位持开放态度,尤其是当你进入了新的软件领域时。如果你能接受中等的职位和薪水,肯定比那些非CTO不干、非百万年薪不干的人更容易找工作。这是供给与需求的共同作用。
——利用自己的经验。不要变成“要求高薪的老家伙”,而要成为“有很多经验的良师益友”。应该不断吸取教训,然后与大家分享。尽管你仍然是一名程序员,但与单纯的程序员相比,你的价值会大得多。
——到程序员短缺的地方生活,不要到过剩的地方凑热闹。当一家公司急需程序员时,他们因为年龄而放弃你的概率会小一些。
——积累经验。你需要在与年轻人的竞争中脱颖而出,如果你过去10年一直没有什么提升,人家为什么放着便宜的年轻人不用,非要用你呢?
——不断学习新东西,尝试新技术。刚毕业的学生之所以有吸引力,是因为他们思维开阔、可塑性强。而对于年龄较老的员工,则有可能已经定型。你可以证明自己对新语言、新工具的接受程度,以此反驳这种观念。
——从简历中删除毕业日期和以前的职位。你或许已经45岁了,但如果你看起来像30多岁,便可以利用这项优势。 别跟人说你是1990年从某某大学毕业的,直接告诉他们你是某某大学毕业的。而且,只要是超过15年的从业经历,都应当果断删除,这不会影响你找工作的成 功率。要知道,几乎没人会在乎你1997年用Perl/CGI开发过什么东西,既然如此,为什么非要用这个来强调自己的年龄呢?
除了三十出头的程序员 Leo Polovets 回复改问题之后,还有两位匿名用户的年龄段非常符合主题,他们分别是 40岁和55岁的。
40岁的匿名工程师的回复,得票数为20,摘译如下:
在“锋芒”快衰退之时,我来分享我自己的策略。这个月月底,我就奔四了,所以我正好在你讨论的那个年龄段中。
● You need an advantage over the competition 在竞争中你得有一个优势 (没有只钟情于技术,更倾向能让我学到领域知识的工作)
● Avoid working with dying technologies 避免使用垂死的技术
● Build skills that are current and yet have longevity 学习并掌握“非长寿”的技术
● Find a way to exploit your advantage 找到开拓自身优势的方法
● Leverage your years of experience 充分利用现有积累的经验
● Always have a clear plan for the next 5 years 始终得有一份清晰的未来五年计划
● Have a general plan for the next 10 years 有一份未来10年的总体规划
55岁匿名程序员的回复,得票数为12
这个问题听起来非常有趣,因为我正好就是55岁,并且我仍在编写软件!当然了,有些事情是因人而异的,但我发现,走出自己的舒适区去学习东西,这种方法真的实用。所以我建议你不要坚持你已经做得非常好的。
每隔几年改变一下“系统”,可能对你是好处的。比如,如果你在一家大公司上班,或许你应该辞职,去做自由职业者, 或联合去创业。你头脑的不同部分也肯定将得到锻炼。如果你只是一直在编写面向对象代码,那你可以考虑尝试诸如 Prolog 或 Haskell 之类的东西。也可以学习软件之外的东西。随着你年龄增长,你会发现自己身价会更高,因为你有能力能结合你所学的多学科的东西,你所设计的解决方案,比那些 一直没跳出舒适区的人的方案会更出色。
英文原文:http://www.quora.com/As-a-software-developer-how-can-I-ensure-I-remain-employable-after-age-50