大约有83%的开发者都称自己有倦怠感,他们工作中很多因素都阻碍了灵活的心态。而事实上,软件开发者往往是无限循环的、不断逼迫的死线的代名词。编程是项充满创造力的职业,但我们的大多时间都在处理影响生产力的困难任务上,这些任务不仅夺走了我们每日工作的快乐,还留下了满腹挫败。
在最后一秒解决缺陷、死守既定的时限,这些常常让开发者倍感压力,但不断发展的数字世界也是另一个焦虑感的来源。
业界新出现的技术常常会在一夜之间成为软件开发者必备的技能项,而要想在飞速发展的行业中取得成功,我们最好能时刻掌握业内最新工具。
这点是指导开发团队的首席技术官(CTO)或高级领导需要协助的方面,改变旧的模式,激起增长心态,并帮助开发者变得更敏捷、更灵活。换句话说,就是变换心态。
这个流行词在多个行业中都有使用,在像是HBR和福布斯之类的刊物中也曾被提及。其理念在于,当我们处于一个发展如此之快的世界中,我们不能再被动接收变化,而要去掌握先机。在亚当·格兰特的书《重新思考》中曾写道:
“……我们需要和思考一样,花费同样多的时间在重新思考上。”
在本文中,我们将探讨软件工程团队所面临的障碍,以及要如何培养心态的改变。
常见的误区
在软件工程中谈论心态时,人们常常赞同的一种说法是:
“团队是否强大取决于其最弱的成员。”
一位负能量的团队成员消极怠工会给工作带来麻烦,致使团队其他成员士气低迷,积极性下降。留心这些成员,他们会为未完成的工作找接口、不接收自己的无能,并且还会让其他人也质疑自己的工作,从而让生产力飞速下降。
而同样众所周知的是,公司自动化程度越高,开发者便越可能从工作中解放,抽出时间专注开发益于客户的数字创新。这正是 BOS 框架背后的理念之一,骄傲地说,我也是产品其中工程师之一。
不过,目前很多开发者还是受困于排障等大量的手动任务中。像是代码编辑器、故障追踪器,还有让应用程序自动化部署运维的 Kubernetes,类似的工具有很多,但企业迟迟未能接受。
另一个影响因素是不切实际的死线,不仅影响了软件工程师的生活工作平衡,也对工程师们的积极性有极其消极的影响。对开发者而言,最好的投资就是自身的发展,尤其是在当前这个不断发展的技术领域。但工作加班和手动任务的重压之下,难怪开发者会没有动力学习新技能。
综上这些因素都会影响开发人员的心态转换。那么领导团队能对此做些什么呢?
鼓励求知若渴的文化
微软的 CEO,Satya Nadella 提出的“科技巨头以持续学习为新重点的文化刷新”,改变了员工的行为习惯。他称这是从“万事通”向“万事学”的转变。
当每时每刻都有新鲜的人才出现时,那些拥有业内十年以上开发经验的“老古董”如果不提升自己的水平,很可能就会被后浪拍死在沙滩上。
因此,在领导工程团队时,我们必须鼓励团队成员不断成长,将学习加入日常工作。从测试、教程和游戏开始,最终为开发者提供在不同技术栈上工作的机会。这是扩展团队知识的必要路线。
举例来说,如果有位员工拿到了 AWS 认证的架构师资格,那这很好。在我们公司,我们会鼓励员工同样尝试其他云平台,以更好地巩固自己在架构上的能力。当然,这一切要建立在双方的意向上,不能强加给员工。
因此,如果团队过度沉迷于单个工具,而不愿尝试其他方案,团队可能很快便被时代抛下,并阻碍公司的创新。而鼓励求知若渴文化的公司,意味着开发者会永远走在时代前沿,并为用户和利益相关者们找到最优的解决方案。
从初创环境中学习
大公司或企业或许不会期望开发者同时掌握多个技术栈,但初创公司不同。那么我们能从这些环境中学到什么呢?
走在时代潮流之前的史蒂夫·乔布斯通过像初创公司一样管理苹果,改善了合作和团队精神。他称苹果为“全球最大的初创公司”,是可以无需监工或创立公司委员会,都能信任公司同事履行自己的承诺。
在初创或小型公司中工作的最大优势在于,你可以身兼多职并了解公司各个方面。我在大学毕业后便以软件工程实习生的身份加入了现在的公司,并一直工作至今。在过去的十年间,我接触过很多技术,从网页和移动端开发到数据库、IoT 应用,以及数据科学项目无所不有。我的经历让我很快构建了对多种技术栈的基础知识库,并能发现各类技术间的细微差别。
开发者常常会沉迷于特定工具,并想拿这个工具解决所有问题。但如果你手里只有一把锤子,那么所有东西在你眼里都只是钉子。在初创公司工作对开发者来说是个令人激动的机会,你可以从草稿开始,提出疯狂的主意,试图解决复杂问题,并成为团队的一份子。
这和普通公司员工不同,你会成为构建公司未来的一份子。在这种环境下的开发者往往不再是孤狼,他们会学会在各个部门之间进行有效的沟通。
因此,当在开发团队中建立心态转变时,可以向初创公司寻找灵感,并将求职简历中在初创公司工作过的经历看作是加分项。而如果你已经在初创公司工作了,那么学无止境,向你的竞争对手看齐。
给处理问题设立一个期限
给团队和自己一个解决特定问题的时间窗口,在窗口之后就去解决别的问题。开发者心态抑郁往往是因为他们在困难问题上折磨了好几小时,或被进展迟缓的 bug 卡住很久。
他们常说,“这是工作的一部分”。但我有个明确的规定:如果团队在一个问题上工作超过了四小时,让他们出去溜一圈,然后带着转换好的心态回来继续工作。如果他们散心回来又花了四个小时而进展缓慢,那么就去向同事求助,肯定会有人能解决的。如果开发者们能学会寻求并接受其他团队成员的建议,那么这也将会激发心态的转变。
这也是为什么开发者和工程师永远不应该只爱上一种编程语言或技术,他们应当不断前进。不断寻找问题的多种解法,那么你将没有上限,这是对工程师的基本期望。
相信人人有责的方法
开发团队中的所有人都应当相信工作所在组织的使命和远景,不仅如此,也还应对文化建立和维护的机会和机遇抱有同样的关注。这是有赖于每一位开发人员贡献的共同责任。
一个默认的规则是,公司有义务为每位员工直接提供机会。我会永远感激我的前辈激励我挑战自我并尝试新事物,尤其是在国防部培训空军的软件开发和数据科学方面。
团队成员总会有合适的时机遇见绝佳的机会。
然而,自上而下的文化构建方法并不是万能的。我所相信的是建立人人有责的组织文化,文化应当是被接受,而不仅仅是由领导所确立。员工同样应当表达出探索意愿及冒险精神,这才是好员工与杰出员工之间的差距。
在采用远程办公之前,我们会每周五都在办公区选一位团队成员,分享软件开发、科技、云端、CI/CD,任何领域内的任何话题的科普。这会让开发者们走出自己的舒适区,也能让团队成员每周都学到一些新知识。
团队领导也不应期望开发者仅遵循一个文化的条例。领导应当对资源进行分配,确保所有员工都对这种文化有理解,有批判,会维护文化的原则并对其进行补充。如此一来,我们也鼓励了开发者对这种文化的批判思考,促进了心态的转换。
建立业务影响为先的心态
培养以业务影响为优先的心态同样会为工程团队带来改变,这是 BOS 框架成功的主要支柱之一,也是我所接受的培训理念。换句话说,这意味着一种集成文化的建立,开发者不仅要对工程本身有理解,同时也要对业务有认知,能够将技术看作是实现业务成果的工具。
这是因为拥有创业心态的工程师会希望在完成任务的同时做得对。当然,这也只是个夸张说法,但工程师大多都是完美主义者,但企业家却没时间过度思考,后者更倾向于授权,并只在必要的时间学习。工程团队不能忘记自己的项目最终是有商业目的的。
工程负责人必须为每个项目构建商业案例,让非技术人员以及商业利益相关人都能参与并为决策提出自己的想法。同时,开发者也应与商业利益相关人、同僚,以及其他部门的同事相沟通,以实现技术带来的商业影响。如此一来,弥补了产品利益相关人与开发团队之间的鸿沟不仅帮助我在职业生涯中取得进展,也让我更容易适应新的角色。
开发者可能会陷入无尽的循环,上一次学习新东西或影响公司文化时也不知道是猴年马月的了。因此,在公司内成功建立心态的转换对打破职业生涯瓶颈是非常重要的,这会让团队成员处于流程的核心,打破长久不变的技术栈,并鼓励不断地进步。
原文链接:
The Most Common Developer Challenges That Prevent a Change Mindset—and How to Tackle Them
相关阅读:
评论