【编者按】《软件工程的事实与谬误》的作者Robert. L. Glass曾说:“最优秀的程序员比最差的程序员强 28 倍。” 优秀的开发者非常罕见,他们的生产力是普通开发人员的三倍,是差劲开发人员的十倍。世界上顶尖的 1% 的开发人员不仅仅可以编写可靠的代码,他们还拥有重要的隐性特征。Scalable Path 的创始人 Damien 认为,下面 7 个品质能让程序员变得与众不同。
当一个优秀的程序员负责一个公司的产品时,他们雄心壮志,渴望做一些有点挑战性的工作,并且每天都发挥出自己最好的水平。 虽然不断用紧急的截止日期( Deadline )来压榨开发人员并不好,但有时还挺有必要。作为一个 CEO,如果你需要把一个产品快速推向市场,或者你需要在截止日期前发布一个特定的功能,那么优秀的程序员将在尽可能加紧开发并最终按时发布该软件。 一个强大的开发人员不会让他们的自负妨碍反馈。产生积极态度的一个好方法就是给他们安排一些有趣的项目,给他们一种自豪感,并感谢他们在工作中的出色表现。 创业公司可以通过提供股票期权,支付员工加班费,提供带薪休假,或者利用其他优势来留住优秀的程序员。良好的沟通技巧直接关系到个人发展。优秀的开发人员能够快速和准确的理解问题,将问题分解并转化成理论,然后迅速提出解决方案。 他们很容易理解概念,或者通过提出正确的问题来解释,并且他们不需要把所有东西都写在规范文档中。优秀的离岸开发商通常会讲多种语言,并且对阅读和编写英文文件非常娴熟。 在技术领域,英语实际上是大多数文档和开发人员交互的语言。如果他们说得不够好,就需要借助口译员和翻译人员的帮助,这会使他们总是学习二手知识,这些知识很容易过时。 好的开发人员非常高效。他们有很强的职业道德,并且在会议上准时出现。 一项重要的技能是具备准确预估计划、协调和执行一项任务所需时间的能力。优秀的程序员擅长管理他们的客户或领导者,而不只是让老板管理他们。优秀的开发人员通常自学能力非常强。他们有能力自己学习新技术,不会受到新技术的威胁。他们具有提取各种信息并即时处理信息的能力。 每个程序员都会经历一种他或她不知道答案的情况。优秀的程序员可以找到各种各样的机会,与合适的人交流,无论如何都能找到解决方案。 每个人所能拥有的最好的技能就是知道如何学习,出色的开发者具有超强的自学能力。
深厚而广泛的技术经验
优秀的开发人员已经在一系列技术领域工作了足够长的时间,从而成为专业人士,并拥有许多经验。 当然,找到一个曾经开发过与你的产品相似的产品或者使用相同技术的程序员是很重要的。优秀的工程师可以很快将项目落地,因为他们经验丰富,他们已经掌握了项目所需的技术。 他们会遵循编码规范,编写可读性强的代码,并且可以通过在恰当的地方添加注释来帮助别人快速理解代码的含义。 通过结合他们的认知能力和广泛的专业经验,他们能够很容易地找到最佳的解决方案。 有经验的开发人员精通最佳实践,如敏捷开发、任务管理工具(Jira、 Trello 等)、版本控制,以及在不同环境中的操作 (本地开发设置和交付应用程序的工作知识)。
团队合作精神
高级开发人员的另一个优点是他们具有帮助其他开发人员发展地更好的能力。 当团队成员感到困惑时,他们会帮助他们,教他们新的技能,并编写文档,这些文档不仅对他们的业务有帮助,甚至对整个开发者社区都有帮助。一个好的程序员会做他们被要求做的事情,而一个优秀的程序员会关注软件的最终用户,并在组织的能力范围内解决问题。 一个优秀的程序员还会思考他们正在开发的功能是否有很高的价值,当一个功能不能为任何人创造价值时,他们就会放弃。 现在已经可以在线学习,你不必非要去学校才能成为一个优秀的开发者。但是,很多优秀的程序员都去了好学校,接受了计算机科学的培训。 获得一个计算机科学的学位可以帮助你更好地理解架构,让你对计算机编程的世界有一个整体的视角。 与最新的技术保持同步可以帮助你跟上时代的步伐。阅读大量关于最新技术发展动态的文章和论坛,在业余时间可以尝试学习新技术,加入小组,参加会议,通过博客为社区带来价值。 最优秀的程序员富有创造力,他们喜欢创造东西,他们享受技术对这个世界的产生的影响。做你喜欢的事情将帮助你更具创新性,全面提升你的技能。 要找一份能帮助你在短时间内获得重要经验的工作。哪怕薪资很低也没关系。积极在工作中吸取经验。你可以尝试为创业公司工作,也可以尝试去为大公司工作,在各个部门工作。 技术变化很快。新的平台不断建立,数字语言正在开发,产品正在以惊人的速度生产。 保持适应力和接受变化是很重要的。学习最新的技能设置你的“工具箱”。一个强大的开发人员很早就可以了解到软件发展趋势,然后尽早用这些新技能来构建东西。
总结
现在越来越难找到优秀的程序员了。软件产业正在经历一个资源短缺的局面。 这意味着他们需要的工程师比他们能找到的要多,而企业正在竭尽全力吸引顶尖技术人才。掌握上述技能,才能确保自己找到一个好工作。 原文:https://medium.com/better-programming/7-qualities-that-make-you-a-great-software-engineer-92819b28799d
本文为 CSDN 翻译,转载请注明来源出处。
《原力计划【第二季】- 学习力挑战》
正式开始
即日起至 3月21日
千万流量支持原创作者
更有专属【勋章】等你来挑战
热 文 推 荐