雇佣现代程序员: 你的那个聪明的新软件开发人员也有 “软” 技能吗?
随着我们对技术的日益依赖,现代社会对STEM职业和其他技术背景的重视程度很高。尤其是在当前程序员,数据科学家和工程师人才短缺的背景下,情况确实如此。
但是,在专注于软件开发及其所需的技术技能时,许多公司,招聘人员和技术组织也未能认识到软技能的持久重要性。事实证明,根据Google的研究,该公司的招聘理念长期以来一直偏爱具有技术背景的员工,STEM专业知识实际上是员工成功的最不重要指标。
原因是,通过将眼睛专门粘在屏幕上,许多smartnew开发人员要么忽略了,要么错过了建立技能 “人性化” 一面的机会。导致这一问题的原因是,教育机构和公司也没有提供必要的培训或支持来培养这些软技能。
软件开发的当前趋势支持这样一种观点,即公司需要雇用不仅开发软件技能而且还开发了软技能的程序员。原因如下:
“近岸” 要求密切通信。
长期以来,公司将某些业务流程外包为一种有效的节省成本的策略,尤其是对于技术或资源密集型工作 (例如软件开发)。然而,过去,公司会将这项工作外包给像印度这样的遥远国家,但越来越多的公司正在寻找离家更近的外包合作伙伴。
并不是说这种被称为 “近岸” 的趋势是新的。2005年,《经济学人》创造了一个术语来描述 “将生产,研究和业务流程转移到非常便宜,非常接近而不是非常便宜和遥远的国家的业务。”
然而,近年来,近岸业务前所未有地蓬勃发展。根据ISG最近的一份报告,近岸的未来看起来比以往任何时候都更强大。美国的组织已经开始意识到与拉丁美洲合作伙伴合作的优势,以很小的成本获得位于邻近时区的高素质人才。在这种情况下,欧洲公司在波兰,乌克兰和罗马尼亚等地找到了熟练的合作伙伴。
但是,随着nearshoring将不同的语言和文化融合在一起,开发人员越来越需要能够有效地进行沟通。作为一家哥伦比亚软件开发公司,我们亲身经历了跨文化交流的挑战。这并没有发生,只是在与美国的合作伙伴的合作中; 我们也在我们的开发团队中看到了这一点,这些团队由来自世界各地的人组成。
如果公司确保雇用或与具有较强沟通能力的软件开发人员合作,则近岸业务也可以支付巨大的费用。在同理心,倾听和接收反馈能力方面表现出色的开发人员将善于与彼此和他们的客户进行沟通,以满足这些客户的需求。
从我们看到的情况来看,最好的开发人员是那些提出很多问题并且从不对项目进行假设的人。这些想法不仅对需要做的事情有更清晰的了解,而且保持实现目标的动力。
DevOps需要团队合作才能成功。
鉴于上述情况,您可以说,沟通是软件buiness中所有软技能的母亲,考虑到有效沟通的能力与团队合作的技能重叠,这是现代开发人员的第二项关键软技能。
近年来,软件开发的DevOps模式应运而生,开发和运营团队并肩工作,加快软件产品的迭代和改进。
根据亚马逊的apost,在这种模式下,两个团队 “紧密合作,分担许多责任,并结合他们的工作流程”,以减少效率低下并节省时间。而且,根据最近的DevOps状况报告,这种做法越来越受欢迎; 对IT专业人员,开发人员和高管的调查发现,有27% 的受访者在DevOps团队2017年工作,而只有16% 2014年。
因此,现代开发人员现在比以往任何时候都更需要成为团队成员。在DevOps下,他们必须能够理解整个软件开发生命周期,并与运营团队合作共同执行项目。而且,他们必须与负责流程不同部分的其他开发人员统一运作,并共同努力解决问题,而不是指责。
最后,展示这种团队合作水平的开发人员可以帮助企业开发和发布更好的软件 -- 更快。
安全问题扩大了对完整性的需求。
为了创建更好的软件,公司需要通过雇用帮助将其作为优先事项的开发人员来投资安全性,而不是偶然地为雇主节省大笔资金。
去年的Equifax数据泄露暴露了1.43亿美国人的数据,就是一个很大的例子; 该泄露有望成为公司历史上代价最高的一次,一些人估计总成本约为6亿美元。此外,由于最近涉及Cambridge Analytica的Facebook丑闻,以及目前围绕欧盟新gdpr法规的不确定性,没有采取适当预防措施来保护用户数据的公司面临着最终处于同样不稳定的境地的风险。
因此,出于安全考虑,需要负责构建新技术的人员具有高度的完整性,并透明地传达他们在代码中检测到的任何风险。开发人员可以识别潜在的风险,并且应该期望他们与公司中的高层人员分享这些风险,他们可以对这些风险有所作为。
重要的是,安全性实际上始于设计过程,该过程早于正在构建的任何新软件。考虑到现代开发人员严重依赖许多开源软件组件,这一点很重要,其中估计有18个中有1个具有已知的安全漏洞。
最终,由于新软件包的安全性取决于其创建者,因此公司应采取额外的预防措施,以确保他们可以信任开发人员的完整性。
人才短缺需要相互耐心。
虽然组织必须更有选择性地聘用谁来开发他们的软件,但他们也面临着招聘的挑战,这是过去十年来最大的开发人员人才短缺。
因此,团队领导者有责任帮助他们的开发人员建立他们的软技能和技术技能,并营造一个更加协作的工作环境,让开发人员觉得他们可以成长、学习和舒适。公司必须促进知识转移空间,让开发人员可以分享他们的观点,确保其他人也可以使用最新的行业趋势和语言。
鉴于密切的沟通和团队合作现在是现代软件开发的基本要素,技术和非技术员工需要耐心来认识彼此的需求-技术员工不会用行话压倒非技术团队,而非技术员工则学会以足够的技术细节表达客户的期望,以供开发人员使用。
这就是漏洞进入画面的地方,从某种意义上说,当开发人员不知道需要如何构建某些东西时,他们应该放心地要求澄清项目细节或指导。
例如,在我们的组织中,我们在白板上进行绘制,以使每个人都进入同一页面,而无需将技术语言转换为非技术语言。
随着我们的在线社会不断发展,毫无疑问,技术技能对于任何组织的成功都将至关重要。但是,当前的软件开发状态所需要的不仅仅是技术能力: 当今的开发人员需要在耐心,正直,团队合作以及最重要的是沟通方面表现出色,才能成功。
这些是公司不仅必须根据硬技能,而且还必须根据软技能来判断其潜在开发人员的一些原因。