【51CTO.com快译】当今世界,技术变化之快超乎想象。诸如软件定义的网络和云等新范例不断涌现,而旧的技术依然在沿用中。
当热门的程序员和大数据极客开始玩闪亮的新花样时,你却正忙于等待机器人来夺走你的工作。
情况还远没有那么糟糕。无论你正在使用Unix和AIX系统,还是你已经厌倦了做那些必需去做,但并不鲜活的数据中心嗡嗡响的任务时,你都还有时间来重塑自己。
当然,开展这样的事情并不容易。这将意味着,你可能要投入大量的时间,还可能需要投入一些金钱,进行冒险且攻克代码的难题。但是,所有这一切努力都有可能转化成一个比这些问题大得多的回报,无论在经济方面还是在精神方面。
接下来,本文将向你介绍五大策略帮助你重启你的技术生涯,并进而将你带到另外一个技术高度。
1.将你的传统技能应用到新技术
东北大学硅谷地区院长PK Agarwal说,如果你认为公司只需要20岁左右的年轻职员,那么这倒是一个好消息:年龄和经验实际上可以发挥你的优势。PK Agarwal专门负责为繁忙的专业人士提供商业、管理和技术方面的证书和学位课程。
PK Agarwal认为,有传统技能的人通常比年轻同事拥有更广泛的知识。“随着每种职业的发展,社会分工越来越细。对于在70年代、80年代或90年代早期初获社会经验的人来说,他们所接受的教育范围要广泛得多。所以,在学习新领域知识时,他们的心理适应过程并不困难。”
“最佳策略是将你现有技能应用于新兴技术。”DevOps咨询公司Nebulaworks首席执行官兼联合创始人Chris Ciborowski说。
Ciborowski自称为“Unix恢复工程师”,他花费了十多年时间为各种组织构建和管理大型Solaris部署,开发ERP和CRM系统以及网上商店。在过去两年中,他一直在帮助Nebulaworks客户创建基于Docker、GitHub、Jenkins和亚马逊Web服务等技术的高性能DevOps团队。
“对我来说,公司看重的是我的技能,看重我能够做很好的事情,而且我能够使这些技能适应新而又新的技术。”他说,“所以,随着新的技术和流程的出现,我能够寻找到与我以前做过的事情相关联的知识,然后把我真正擅长的东西应用于Web 2.0或Agile 3.0或者任何我们称之为新举措的领域。”
对于Ciborowski来说,这意味着承担风险,作出牺牲,并投入几乎所有的业余时间来加快适应“新而又新知识”的更新速度。“这就像学习潜水一样。”他说,“我花了我所有的非工作时间来思考它,然后用我的所有工作时间开发出一些产品。”
IT产业贸易协会CompTIA的产品开发高级总监詹姆斯·斯坦格同意这样的观点:“一旦你学会了利用你的技能,那么接下来,你就需要使用这些技能的新版本来更新原有技术。”
另外,你还需要更新你的心态和极客文化知识。“我正在和一个真正的绿屏Cobol程序员谈话,此人留有长长的白头发和一副长长的白胡子,像大型机时代的甘道夫。”Stanger说,“问题是,甘道夫需要重新拾起什么样的以往技能,才能使他可以再次与世界上的霍比特人一起工作?”
“甘道夫的任务之一是使他的旧有知识现代化。”Stanger表示,不再是以前的大型机了,他需要思考云技术,也不再是为普通的终端开发,替之的是为智能手机开发。“你不必抛弃你原有的知识。”他说,“但你确实需要开始类比处理,并将自己的旧有经验转化为新知识。”
2. 使你的代码继续发挥威力
正如马克·安德森在2011年所写的,软件正在吞吃这个世界。这意味着,当今世界对于程序开发人员的需求越来越大。“今天,最热门的技术工作是软件工程师、软件架构师和UX / UI设计师。”作为技术招聘网站Indeed Prime的主管Shu Wu表示,“需求量最低的职位是网络管理员和数据库管理员。”
“每个公司都在试图招聘技术人才。”吴说,“如果你努力学习Java、Python和Ruby on Rails等编程语言,那么你就有机会将自己从一个需求不足的人转移到一个更被需要的人。”
这就是为什么许多即使是高待遇的IT人员也都开始向编程阵营迁移的原因,其目的是使自己的编码技术进一步加速。
Shane Biggs在华盛顿哥伦比亚特区的一家会计师事务所担任系统管理员,当时他看到一份关于编程学院DevBootCamp的Dan Rather写的一份新闻报道。这足以说服他该返回到学校去成为一名开发人员了。
Biggs已经持有好几个网络认证证书,并且当时他正在管理着一个小型IT部门,赚着十分体面的工资。但是,即将耗费在显示器和鼠标上的未来工作对他并没有多大吸引力。“干这样的工作,我感到十分无聊和陈旧。”他说,“我一直想有一个更具创造性的一面,我觉得编程会带来这方面的发挥,因为编程几乎像一门艺术。”
这花了他两年时间。但是以前的政治学专业最终给他节省了足够的钱来退出他的IT工作,迁移3000英里到旧金山,甚至撇下怀孕中的妻子。9周课程的学费为12,500美元,当然这包括生活费在内。现在他已回到家乡,在巴尔的一家市场营销代理商处担任前端开发人员。
“我最初并不喜欢编码。”他承认,“真的很难,我感觉像个白痴,但现在我已沉迷于它。”
Chris Duflo花了五年时间为Hitachi公司以及后来的Deloitte公司咨询Oracle财务实施方案。但他对设计复杂的解决方案感到沮丧,于是他把这些工作交给别人去干。“我想,如果我可以设计这个方案的话,我也可以学习如何开发它。”他说。他在自己家乡圣地亚哥的Origin Code学院注册入学,部分原因是因为这个学院专门从事.Net和JavaScript教学,而这些技术对于像Dice和Indeed这样的公司需求都是很高的。
现在,他已经成为一名前端开发人员,为一家专门开发电子投票解决方案的公司工作。这些软件为不少美国州和电影艺术与科学学院所需要。
Duflo以前的编程经验主要是编写SQL查询方面。他给出的最大启示是,他以前的工作经验把他变成一个真正的程序员。
“我真正认为我过去作为顾问的五年白白浪费了。”他说,“我很快意识到,无论在采访还是在工作场所,我所了解的知识要比我原来想象的要多得多。我收集了很多有关一般数据架构方面的知识及相关术语。它可能不会转换为键盘方式的编码,但在会议和设计以及概念化方面,这真的很有价值。”
3. 成为一名技术推广人员
你不必是开发团队的重要成员中的一员。Take Tori Wieldt开始她的职业生涯时,是作为一名系统管理员,在20世纪80年代末其工作是在旧的Unix系统上维护SBC通讯。“当时他们还有很多陈旧的设备。”她说,“有些机器太旧了,我们不得不翻转开关来改变它们的记忆设置。”
从那里开始,Wieldt开始为Sun Microsystems工作。业务内容包括很多方面:技术支持、技术写作、网站管理以及最终在Oracle公司收购Sun公司之后负责管理一个Java开发人员社区等等。
现在,她的工作是作为New Relic公司的开发者传道士,帮助构建应用程序性能监视公司的开发社区,并负责组织FutureStack会议。她努力把所有这些任务做到最好,尽管她已经拥有基本的编程技能。“我了解大量有关Docker引擎的安全性问题,但不并认为我自己是一个程序员。”她说,“但我明白开发人员所经历的事情,知道他们如何与技术交互,并且我能够把内部因素与外部因素沟通起来。”
【译者补注】Docker是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。容器完全使用沙箱机制,相互之间不会有任何接口。
作为Austen Dev Bootcamp的校园主管和职业程序员的Whitney O'Banner认为,将良好的沟通技巧与编码基础结合起来的能力可以使作为技术推广者的你更具有高度的市场价值。
“技术推广人员的需求特别高,特别是在那些鼓励第三方商家使用其后端的技术公司,如Facebook或Pinterest。”她说,“API的应用知识,坚实的沟通能力,以及对产品和客户服务的热情是这一角色取得成功的最佳方式。”
4. 发现你的部落
现在的开发任务很难单独去完成,更不用说难以达到预期目标的那种了。今天的IT环境确实需要沟通和协作。在IT人事公司Modis最近的一项调查中,其IT经理认为,能够将团队合作和人际关系技能处理良好的求职者最难找到。
Agarwal说,培养个人的软技能比以往任何时候都重要,了解网络人群尤其如此。关键是找到一个已经熟悉最新技术的会员社区。“很多技术人员并不重视网络社区。”他说,“我们总是鼓励我们的学生去聚会和参加各种会议。”
如果你能负担得起时间和费用,那么返回到学校是一种发展技能和拓展人际关系的很好的方式,Peak Technical Staffing公司的业务发展副总裁保罗·史密斯说。
“如今,大多数组织都有专门的团队来开发他们的代码。不过,他们一半的工作是去参加各种会议,谈论项目的进展情况。”他说,“在课堂环境中,你有大量的同学,你们可以充分地进行想法交流及思想碰撞并最终解决问题,这是你通常无法从在线学习方式中去获得的。”
另一个选择是在你想开发新技能的领域取得有关认证证书,Stanger说。
“认证是利用社区技术的一种好方法。”他说,“这些证书是由CompTIA社区中的数百人创建的。他们都是专家。你得到的信息告诉你,这是社区中正讨论的主题,所以加入它。”
当然,也有很多在线资源。Biggs向大家推荐了freecodecamp.org网站,这是一个免费的在线代码学院;还推荐了Code Newbie,这是一个人们学习编程的社区,其中提供一些条件进行编程实习,而且他们时常在全国各地城市举行聚会。Weildt说,她从专注于开发问题讨论的Slack频道获得了大量信息,例如从网站devopschat.slack.com了解了关于Devops的信息,而从网站fedsonslack.com了解了关于前端开发技术的信息。
5. 知道什么时候离开巢穴
试图开创一个新的职业生涯,同时保持你现有的职业,这有点像在高速公路上开车时换轮胎。 除非你的雇主一直出现在你的“重造”过程中,否则,你尽可能自行把车拉到路边,并根据你自己的时间情况来干这些事情。
科技招聘领域Silicon Beach Talent公司的创始人马克斯·布朗说:“IT老手重塑自己的最好方法就是构建自己的子项目库。但是,这不会在一夜之间就成功的。它需要时间来学习新的技能,例如通过自学和在线课程学习或参考编程新手训练营。”
如果你的雇主不支持你,你可以去找一个愿意提供给你机会的早期创始人。或者你可能需要深吸一口气,直接跳槽出去。
“我意识到,为了使我的翅膀充分柔韧,我不能在一个不体谅个性和专业技术成长的组织内做事。”Nebulaworks公司首席执行官兼联合创始人Chris Ciborowski说,“这当然不包括我现在工作的地方,所以我需要找到:(a)愿意与我共同承担这种风险的公司;(b)或者自己跳槽出来,甚至尝试跳出美国企业。”
“如果你打算跳槽,有合作伙伴是再好不过的。因为他们可以通过他们自己的技术补充你的技能。”Ciborowski说:“如果你正在考虑自己开设任何一家新技术创业公司,那么你需要很好地权衡一下。你必须注意阴阳平衡。否则,你的公司有可能开不起来。特别是你千万不能全都雇佣Unix开发人员。”
“没有必要恐慌。”他补充说,“但是,现在的确是到了该开始的时候了。这不像当你明天早上一觉醒来时发现不存在任何VMware或AIX环境一样。但如果你现在不开始,你很可能会失去竞争优势。因为早已经有很多人想要重塑自己了。”
原文标题:5 strategies to reboot your IT career,原文作者:Dan Tynan
【51CTO译稿,合作站点转载请注明原文译者和出处为51CTO.com】