`
isiqi
  • 浏览: 15947477 次
  • 性别: Icon_minigender_1
  • 来自: 济南
社区版块
存档分类
最新评论

『转』支撑软件开发人员的三种精神

阅读更多

编者按:原文作者Andriy Solovey从事软件开发已有15年,做过开发人员、软件经理和系统架构师。关注构建优质、可靠和可用的软件。

我注意到有三种精神指引着软件开发人员的灵魂——伟大的艺术家精神,可信赖的员工精神和自私的实用主义精神。

伟大的艺术家精神

如果你听到一种声音说“你不能这样画”,然后,你继续这样画,这种反对的声音就会被压倒。——文森特·梵高。

第一个精神是能推动我们团队程序员接受新挑战的伟大艺术家精神,能够创造新方法,寻求自我实现。这种精神给我们创造最新解决方案的力量与渴望,使我们通过学习和实践不断进步。最好的软件背后都蕴藏这种伟大的艺术精神,它会使开发人员跳出思维框架,为了写出完美的编码而两耳不闻窗外事。但对于传统的公司,这种精神既是有力的支柱同时也存在危险——因为无法预见也无法保证开发人员不会因此而忽略客户的需求。在这种精神的指引下,程序员会拒绝平庸,追求足够好的解决方案,他会用自己的方法达到超越所需的效果。这样的开发人员无法容忍拙劣的代码,对于一些重要的代码,即使在演示前一晚,在测试员回家休息之后,他们也会进行重构……

可信赖的员工精神

没有人是一座孤岛,自成一体,每个人都是大陆的一小块。——约翰邓恩

第二个精神是可信赖的员工,他能在第一时间为团队,公司以及客户的利益着想。在这种精神的指引下,开发人员会完全的将自己投入到为项目的成功以及获得更大的利益上。可信赖的员工精神会抑制创造性,但另一方面,他们绝不会放任不被认可而可能导致失败的代码的存在。这样的程序员在最后期限会熬夜完成工作或修复令人尴尬的代码。他会在测试员测试之后再行测试,在管理员安装后再行验证安装。这种无私的精神会使开发人员专注、负责并遵守公司的各项纪律,但有时也会引起压力,不安,或浪费才能的感觉。这种精神的危害在于如果一家公司不关心开发人员的辛劳工作以及牺牲精神,那么这种精神会很快消失。

自私的实用主义精神

生活就是你在忙于做计划时发生的事情。——约翰·列侬

这种自私实用主义精神与个人利益、金融福祉、工作保障以及事业发展密切相关。这种精神促使开发人员接受负面信息,更多的关注薪水以及管理者的认可程度问题。随着年龄的增长,家事和私事日益取代了编写完美编码的梦想,日常生活问题日益取代了致力于工作、忠诚于工作之信仰,自私实用主义精神也随之变得越发强烈。有时,开发人员在这种精神的影响下,开始更关注与对个人发展有利的工作,为了更好的工作保障而编辑混乱的代码,为了长期合作而增加代码的复杂性,或者甚至只专注于自己的项目和业务,或者干脆就在网上浪费时间。这种精神是人们想要实现个人目标的本能愿望,确保自己的未来,并且生活愉快。这种精神的危害在于,开发人员可能获得适得其反的结果,不关心工作质量以及公司和项目的长期利益。

每一种精神都有它积极的影响:伟大的艺术家精神可以提供给你具有创造性的力量,可靠的员工会促使你严守纪律并专注结果,自私实用主义精神可以满足你的个人利益。但他们也有其消极的影响:过分的艺术精神可能会错过一些真正的需求,可靠的员工可能会导致失败或者惧怕改变。自私实用主义会淡化公司和客户的最大利益。

这些精神颠覆了许多经验匮乏的开发人员的想法,并防止其在脑中形成和平思想。这场精神战斗一般以什么结果收场呢?我看到许多开发人员最后都由一种精神统治了其灵魂。不幸的是通常都是自私实用主义者精神,他们都不再奋斗,其他开发人员根据具体情况也徘徊在这样的精神中:一些公司欢迎有创造性的伟大艺术家,一些则排斥自私的实用主义者。

这些精神的存在只是我的主观观察以及结论,但是可以帮助我们解释一些软件团队生活中的有趣现象。因此,亲爱的读者朋友,我有几个问题留给您。

你同意这些精神的存在吗?你能控制并使之达到平衡吗?是不是我还遗漏了一些指引软件开发人员的重要精神吗?欢迎在评论中分享你的观点。

-------------------------------------------------------------------
译文出处:
伯乐在线- 职场博客
译文链接:
http://www.jobbole.com/entry.php/618

分享到:
评论

相关推荐

    支撑软件开发人员的三种精神

    导读:原文作者AndriySolovey在softwarecreation.org上发表的一篇《ThreeSpiritsinTheSoulofaSoftwareDeveloper》,由国内整理编译《支撑软件开发人员的三种精神》。AndriySolovey从事软件开发已有15年,做过开发...

    软件设计规范

    软件帝国从这里提取软件精神,并升华它。从硬件的角度,从寄存器和指令执行流程,体现出的是变量和迭代(顺序更迭,循环往复)。(迭代流程)基于固定寻址的变量,经过寻址接口,可以处理任意数据,从而把迭代流程...

    大数据开发工程师的岗位职责.docx

    6、为项目相关开发人员提供大数据技术指导及解决大数据平台应用中遇到的技术难题; 7、良好的团队合作与沟通能力。 任职要求: 1、本科及以上学历,2年以上大数据应用开发经验; 2、具备Java、Python、Scala其中两种...

    招投标管理系统设计方案.doc

    公司领导年富力强,富有开拓精神和进取心,在他们周围聚集了一大批精通计算机网 络与通信,尤其是Internet和Intranet上的系统集成和应用开发的人才,是一支精通数 据库理论、软件开发策略且熟悉各种软件开发工具的...

    招投标管理系统设计方案(1).doc

    公司领导年富力强,富有开拓精神和进取心,在他们周围聚集了一大批精通计算机网 络与通信,尤其是Internet和Intranet上的系统集成和应用开发的人才,是一支精通数 据库理论、软件开发策略且熟悉各种软件开发工具的...

    招投标管理系统方案设计.doc

    公司领导年富力强,富有开拓精神和进取心,在他们周围聚集了一大批精通计算机网 络与通信,尤其是Internet和Intranet上的系统集成和应用开发的人才,是一支精通数 据库理论、软件开发策略且熟悉各种软件开发工具的...

    旅游管理系统数据库设计(2).doc

    采用B/S结构的计算机应用系统的基本框架如下图所示: 3.2软件支撑环境及开发工具 本设计的支撑环境是WINXP、VS环境,开发工具是SQL。 4.系统总体结构 4.1 总体DFD 消费者先进行登记操作,产生登记信息数据,经过处理...

    旅游管理系统数据库设计.docx

    3.2软件支撑环境及开发工具 旅游管理系统数据库设计全文共11页,当前为第2页。 本设计的支撑环境是WINXP、VS环境,开发工具是SQL。 旅游管理系统数据库设计全文共11页,当前为第2页。 4.系统总体结构 4.1 总体DFD ...

    旅游管理系统数据库设计(3).doc

    采用B/S结构的计算机应用系统的基本框架如下图所示: 3.2软件支撑环境及开发工具 本设计的支撑环境是WINXP、VS环境,开发工具是SQL。 4.系统总体结构 4.1 总体DFD 消费者先进行登记操作,产生登记信息数据,经过处理...

    旅游管理系统数据库设计.doc

    采用B/S结构的计算机应用系统的基本框架如下图所示: 3.2软件支撑环境及开发工具 本设计的支撑环境是WINXP、VS环境,开发工具是SQL。 4.系统总体结构 4.1 总体DFD 消费者先进行登记操作,产生登记信息数据,经过处理...

    旅游管理系统数据库设计(1).doc

    采用B/S结构的计算机应用系统的基本框架如下图所示: 3.2软件支撑环境及开发工具 本设计的支撑环境是WINXP、VS环境,开发工具是SQL。 4.系统总体结构 4.1 总体DFD 消费者先进行登记操作,产生登记信息数据,经过处理...

    旅游管理系统数据库设计方案.doc

    采用B/S结构的计算机应用系统的基本框架如下图所示: 3.2软件支撑环境及开发工具 本设计的支撑环境是WINXP、VS环境,开发工具是SQL。 4.系统总体结构 4.1 总体DFD 消费者先进行登记操作,产生登记信息数据,经过处理...

    旅游管理系统数据库设计(4).doc

    采用B/S结构的计算机应用系统的基本框架如下图所示: 软件支撑环境及开发工具 本设计的支撑环境是WINXP、VS环境,开发工具是SQL。 4.系统总体结构 总体DFD 消费者先进行登记操作,产生登记信息数据,经过处理记录...

    服务器统一管理规定.doc

    目的 编写本管理规定的目的是在贯彻公司关于统一公司IT服务器管理的精神,通过IT服务 器的归口管理,为公司IT服务器制定规范化的管理制度和提供良好的运作环境,从而有 效地利用公司IT服务器资源,保障IT服务器便用...

Global site tag (gtag.js) - Google Analytics