专栏名称: 安在
人物、热点、互动、传播,最有内涵的信息安全新媒体。
目录
相关文章推荐
互联网坊间八卦  ·  TikTok通知美国用户将暂停服务 ·  2 天前  
互联网坊间八卦  ·  TikTok通知美国用户将暂停服务 ·  2 天前  
数据何规  ·  TikTok今晚八点半关停?辟谣:未授权个人 ... ·  2 天前  
北京日报  ·  微信出手!永久封禁! ·  2 天前  
北京日报  ·  微信出手!永久封禁! ·  2 天前  
掌中淄博  ·  突发公告!永久封禁 ·  2 天前  
51好读  ›  专栏  ›  安在

35-40岁之后,软件开发人员真的就步入死胡同了吗?

安在  · 公众号  · 互联网安全  · 2017-04-06 17:59

正文


30多岁的男人,和20岁的男人抢姑娘还可以,说明你帅或者有钱。但是,30多岁的男人在职场上也同样能够如沐春风吗?


注意这里的限定词,是35-40岁之后。毫无疑问,对在年轻人而言,这是一个充满向往的伟大领域,但等到时岁已至,一切真的能够如想象般美好吗?会不会再次印证“理想很丰满,现实很骨感”的箴言……


我还没到35岁,但那也不过是一眨眼的事。所以,我会想这个问题也不奇怪:过了35-40岁,软件开发人员真的就步入死胡同了吗?


到目前为止,我自认为自己的事业还算成功。我一开始是做开发的,现在正在担任软件架构师。我拥有开发、架构师、项目经理以及团队领导等方面的经验。在非技术方面,我组建过团队,亲自招聘过职员,并对他们的弱项进行过培训等。


总之,我在软件开发领域的专业技能还算不错,工作经验也比较丰富。我喜欢参与到软件开发周期过程中的每个方面,并且帮助团队推进项目的进展(无论在技术和团队管理方面,还是创建正确的开发流程,并为开发人员创造一个良好的开发环境等)。


这些经历可以让我在找任何工作的时候都极具竞争优势?我想你肯定会认为:“当然,为什么不呢?我已经掌握了几乎所有的技能。”确实,我之前也是这样认为的。


但是现实是,最近我在找工作的时候,申请了很多家公司的职位,但大部分公司都没有发来面试邀请。我发现原来将招聘人员工作要求中的关键字与我的简历内容相对应是一件非常费劲的事。



招聘者:做过Java?

:是的。

招聘者:使用过 Spring,J2EE?

:Spring,是的。2004年用过J2EE,以后用的是 JavaEE。

招聘者「困惑,继续面试」:Spring 的哪方面?

:MVC,数据,安全,Spring Boot,以及许多其他方面。

招聘者:XML呢?

「开始有点恼火,因为我已经意识到是怎么回事了」:是的。

招聘者:Wildfly 应用服务器的什么版本?

:我现在在用 Wildfly 8。

招聘者:哦,但你没用过 Wildfly 9?对不起,我们只招有 Wildfly 9 经验的人。「挂断电话」


对于大多数的工作,我的技能不能准确地匹配他们的职位关键字,所以你可以想象结果有多糟糕。而他们也不明白我的工作经验要远比他们列出来的工作规范中的关键字更有价值。


在我接到的为数不多的面试电话中,其中有一家正在寻找一个“只会写代码”的人(“just the coding ”),且只愿支付少得可怜的工资。


还有几家公司要求我进行编码测试,他们要求我“打印一个梯子”并“找出重复的数字”。我拒绝了这些测试,不是因为我傲慢,而是因为我的技能已经远远超出了他们所需要的。是的,这些职位是针对软件架构师的,但是,他们没有测试我的架构和逻辑技能,而是要我在屏幕上打印一个梯子。


其余的公司都太远了,每天上下班需要花费我5个小时左右的时间。所以结果就是,我拒绝了这些企业的面试邀请,因为目前我和我的家人在城镇定居,拖家带口地搬家对我来说已经不大可能。


在投递的这些企业中,有99%的公司在没有面试我的情况下就直接pass掉了我,而在剩下的1%中,我也发现了更多拒绝的理由。


现在,让我们回到10-12年前,那时候我才20来岁。当时我还是一个初级开发人员,单身且自由,可以为了工作自由移动,我可以在世界各地选择任何想做的工作,即便是一份薪水低得可怜的“只做开发”(“just development”)的工作我也会欣然接受。


那么,这个故事是想告诉你什么呢?是想告诉你在我二十来岁的时候是一个更好的软件工程师吗?不,当然不是!


现在,我已经三十多岁了,我会对自己的工作要求更加严格,会更关心我给公司带来的影响,当然,我也很在乎和家人一起度过的美好时光。


不幸的是,这些公司不明白。他们想要一个具备特定技能的人,而不是一个在许多领域都拥有丰富经验的人。我相信这是由很多因素造成的,你是被公司雇来代替之前离职的员工的。你只要做好之前那个人的工作即可。所以,你大部分“额外的”技能对于你申请的职位来说都是无用的。


所以,是的,在某种程度上,这个职业对于三十岁以后的人而言是很艰难的。不是因为我们缺乏特定的技能,而是因为我们在做出每一个举措之前,有更多的事情需要考虑。但是它是否会成为困住你的死胡同还要取决于你的个人情况和你处事的灵活性。


这个话题很好得引导出了下一个重要的问题:到了2017年,作为软件开发人员需要面对哪些改变呢?



2017年对软件开发者而言是非常有趣的一年,因为这个行业将会发生一些重大变化。从创建新的应用程序到将现有的应用程序添加到扩展应用程序中,以跨越其当前的限制,编程将在2017年实现复兴。


而作为这个充满活力的行业的员工,软件开发人员需要与这些变化保持同步,随着时代的变化不断做出改变,以更好地应对未来可能存在的挑战和机遇。


1. 接受人工智能带来的改变


人工智能”不是一个新词,但是它将会在 2017 年大扬其威。AI 作为新的用户界面不再是一个片面的方法。我们需要理解,利用人工智能需要两种策略——一种包括开发人员编写的代码,另一种则专注于界面如何从源头收集数据,从而使AI更加智能化。


必须知道的一点是,代码或内容块仍然占据王牌位置,但是对数据进行匿名化同样非常重要。第一步始终是关于从框架、平台和编程语言中收集信息,随后将其全部转移给开发人员,然后他们将为该作业选择最佳的数据集。


2017 年将会看到大多数公司开始拥抱人工智能,他们通过集成大量员工数据来预测长期的战略和举措。


2. 利用理解自然语言的聊天机器人(Chatbot)驱动应用程序


聊天机器人(Chatbots)本质上是智能的,2017 年将使大多数软件开发人员与他们一起工作。这里的想法是构造可以满足特定用户需求的特定应用程序。无论是在Facebook 上检查航班,还是使用像 Cinemabox 这样的流媒体服务(streaming services),都会有一大批能够理解自然语言并做出相关回应的聊天机器人驱动应用程序。


然而,整体的发展意味着这些聊天机器人将能够从任何方面做出响应,以相等的精度理解文本和基于语音的命令。因此,基于云的平台将受到高度重视,因为它将允许软件开发人员使用聊天机器人为多个平台编写单个界面(single interface)。


3. 容器的流行


当提及特定应用程序的回归测试和分级时,容器是非常有用的。根据经验,容器的数量甚至可以比实际生产环境高出10倍。使用容器的好处包括更好的灵活性,更优化的调度、资源分配和编排,因而开发人员能够空出更多的时间和双手去完成其他更多的工作。


随着容器的日益普及,基于云的选项越来越受到人们的关注。原因是以云为中心的容器服务带来了更多的灵活性,例如减少物理迁移等。


4. 应用程序版本数量的增加


最近,已经有不少企业开始转向业务线(line-of-business)平台,竞争对手间正为抢占市场而互相撕咬。在2017年,其他开发人员制定计划时,将更容易破坏现有的业务计划。这就需要增加整体应用程序版本的数量,其中开发人员需要更加努力地创建所需的代码集。


如果调查结果可信的话,应用程序版本的总数可能会在几个月内翻一番。虽然这为客户提供了更为广泛的选择,但势必会扩大迭代开发。2017年可能会是 DevOps 向前发展的艰难又有意义的一年。更快的测试速度和应用程序部署暗示着应用程序版本数量将加倍增长。


5. 测试环境转移到云端


软件开发在2017年可能不会缓和,但与2016年相比,它肯定会更加紧凑。途径之一就是将云作为测试和开发的完美媒介。这是一个策略,将会为 CIO 和开发人员之类带来两大优势。


首先,这种以云为中心的转变将允许开发人员快速地转移资源。从集成工具到选择 API 的过程,整个基础架构都将驻留在云端,从而使其基础架构更易于使用。然而,某些公司依然需要遵守预置的开发标准,在这种情况下,以云为中心的开发人员测试环境必须符合物理标准。


第二,对于 CIO而言,从长远来看,基于云的设置可以降低基础设施成本。减少 IT 预算已经成为了新的潮流,且与这种向云端的转变是同步的。


6. 大众开发者将超越传统开发者


作为使用.NET 和 Java 的传统开发人员,你可能会被突然涌入的大众开发人员所冒犯。所谓的大众开发人员是由那些使用低代码平台创建、构建和定制应用程序的人员组成。以前,传统开发人员需要编写一页页复杂的代码以使应用程序运行。


大众开发者的复苏意味着允许在编码领域实验友好界面的涌入和大量的拖放选项。然而,这些项目的有效性和可靠性需要先进行评估,然后再转移到生产阶段。


7. 系统管理和备受期待的云转移


如果最近的调查可信的话,那么到2020年,预计将近60%的 IT 结构会将系统管理转移到基于云的服务器上。2017年将为这一进程奠定基础,因为更高水平的技术改变将引领代码甚至应用质量的提高改进。


一旦IT公司开始转向云计算,诸如日志分析和绩效管理等方面都有望改善。这样一来,基础设施成本将会随着机器学习甚至模式识别的减少而降低。


业务线底层的软件开发者可能会因为激烈的竞争和复杂的多样化而觉得很难在2017年生存下去。不过,转移到云来处理各种类型的数据孤岛将提供巨大的帮助。


既然选择进入软件相关的专业,想必你肯定听过这句话,“IT行业的从业者,学不到老就活不到老”,老师们一直在和我们说这个世界发展的太快了,他们当时大学时还学习的是Pascal语言,所以很多东西当你走出校门时就已经过时了,但是却应该保持一些学习的心和努力的精神,不断充实自己,这样才不会被时代的浪潮排到沙滩上,用发展的眼光和创新的思维突破困住你的重重枷锁。


关于作者


Deepak Karanth,软件架构师,DevOps实践者,导师。作为一个刚步入而立之年的技术人员,他在文中分享了自己最近的求职经历以及自己的所得所悟,希望可以对你有所启示。



点击下方标题,看最经典的黑客传奇



人物 | 智者大潘

人物 | 360谭晓生的方法论

人物 | 龚蔚:我不是黑客教父

人物 | Ucloud之父季昕华

人物 | 韩争光:“苹果”是我干掉的

人物 | 云舒,我为什么要离开阿里

人物 | TK,从妇科圣手到黑客教主

人物 | 乌云来了,我是方小顿

人物 | 破解了特斯拉的林伟

人物 | 刺风有道,吴翰清的云端飞扬

人物 | 铁马“冰河”,侠骨黄鑫

扫描二维码 关注更多精彩

新锐丨大咖丨视频丨白帽丨在看

回复关键词获得关于安在更多信息