程序员的职业精神与素养

来源:三农经济时讯    作者:段怡帆    人气:    发布时间:2020-09-10    

  余晟在享受职业素养这一篇文章中写明,当他在招聘时经常问的问题是在一个人过去的工作中,有没有遇到过一些困难,并且这些困难是如何解决的。是的,当一个人遇到困难时,要想如何去查找资料,要想如何调整计划,最后采取了哪些步骤去解决问题,以及解决问题后的自我反思,这些过程实际上体现着一个人的职业素养,而拥有良好的职业素养和专业精神,难道不比一张漂亮的简历更加重要吗?

  要想拥有良好的职业素养,要明白专业主义,专业主义并不是说只要成为一名技术高超的软件工程师就可以了,它有更深刻的含义,它不仅仅是我们骄傲和荣誉的资本,这个词代表的含义中责任和义务同等重要。所以我们要清楚我们到底想要什么,如果我是一个非专业的人,若是我犯了一个错误,我可以只是面带歉意的说句不好意思,然后继续完成后面的工作。如果我是一个专业人士,那么我必须要为我的错误买单,就像作者在书中所说的,专业主义的精髓就在于将公司利益视同个人利益,这与非专业人士的一个很大不同,就是是否承担着责任。对于一个程序员来说,当为客户制作程序时,我们需要本着尽职尽责的态度,而不应该忽视其中可能出现的问题,不能怀着侥幸心理去完成一份工作,比如对程序的测试环节,为了赶时间而不去测试看上去最不可能出现错误的部分,将程序交给客户后,不仅因为无法完整使用软件遭到了投诉,而且还可能发生服务区丢失数据,事后,依然需要一遍遍的排查故障,这就是没有尽职尽责的糟糕后果。

  那么如何承担责任呢?首先,不行损害之事。从单纯的软件角度来看,就是不要破坏软件的功能,要做的专业,就不能出现bug,然而很多人会说,开发软件是不可能做到没有bug而十全十美的,确实,我们不能够做到完美,但是我们要追求完美,要对完美负责。对于专业人士来说,必然也会存在一些无法避免的问题,而他们不会一而再再而三的去犯同样的错误,而是能够不断的去总结经验,并且坚持练习,去让自己的错误率渐渐降低,世界上没有最小的数,但却有不断接近于无穷小的数。那么如何去确定自己的代码是否存在错误以及问题所在,当然是不断的去测试,不能放过每一行代码,作者在书中向我们介绍了测试驱动开发(TDD),就是对于一些很难测试的代码,可以先设计并写出测试部分的代码,然后再完成其它部分。不行损害之事的第二点是不要破坏结构,结构好的代码会更加灵活,我们不能够为了去开发新功能而牺牲好的结构,因为软件项目的根本指导原则是,所开发的软件要易于修改。要想证明自己的软件是灵活可变的,是易于修改的,那么就实际去做一些修改吧,并且根据修改的结果去不断改进自己的结构。无论是研究某一部分内容还是去通读代码时,我们都可以去适当调整结构来使代码更加的整洁,通过这样持续的完善,我们的代码才不会变“僵”,所以我们不要因为害怕测试程序或者害怕将代码改错,而不敢和不去修改我们的代码。

  成为一个专业人士,要拥有职业道德。比如时间管理,我国《劳动法》规定在工作日内每天的工作时间为八小时,但这八小时实际上是我们为公司解决问题和创造效益的时间,而不包括提升自己的时间。如果我需要完成一项工作,但这项工作对我来说是一项新技术,那么我则需要每天多花两小时来去学习和练习这项新技术,而这些提升我们个人能力的时间对我们的私人生活如家庭和社交并不会造成很大的影响,因为这并不是占据所有的业余时间,在地铁上看书或者在午饭时听一听相关领域的报道等等,抓住一些零碎的时间是一个很好的选择。增加提升个人职业能力的工作和学习时间,并不是只是为了公司,更多是提升自己的价值。这也不是一件让人精疲力尽的事甚至充满乐趣,前提是你热爱这门职业,并且你对自己有一个更高的目标。提升职业能力很重要的一点是要去了解当前我们所从事的领域的现状。在这一个信息大爆炸的时代,尤其是我们这一行业发展非常的迅速,各种技术、工具、观点等等不断涌现出来,想要更加专业,就需要不断的去扩大我们的知识面。即坚持学习,只局限于自己所知道和了解的,而不去学习新技术和新规则,这样的开发人员终将会被这个行业所淘汰。同时我们也不能忽视合作的重要性,与他人共同探讨、设计、完成一项工作本身就是一个学习的过程,我们可以从同伴的身上学习到宝贵的经验,并且很多时候合作比个人要能更快更好的完成工作任务。说到学习那么必定要强调练习,世界上的天才很少,要想成为高能力的专业人才,练习是不可或缺的。完成基本的工作部分并不算是练习,这需要我们去额外的花费时间和精力来锻炼自己的能力。

  拥有职业道德,除了在个人方面有要求之外我们还应与客户保持一致。首先我们要了解自己所在的业务领域,比如财务系统或者旅游业等等。当我们为客户写程序时,需要去了解这一业务领域并与客户时常交流,根据客户的功能需求寻找最佳的方案。因为我们是程序员,而不是只会写代码的机器。

  要想拥有良好的职业素养,还要学会说“不”。当我们在职场中某些时候boss可能会让我们在较短的时间内完成某项工作,比如设计一个程序至少需要十个星期的时间,而却要求我们在六个星期内完成,这时我们就要敢于坚决的说“不”, 因为如果你答应了,这无异于撒谎。因为这个职业是需要严谨的,要想缩短时间,程序的质量极大可能性会降低,手忙脚乱之后也仍然会造成交给客户的软件经常出现bug,或者客户要求的功能无法实现等等,这将会引起一场更大的灾难,所以协调沟通可能会达到更好的效果。对于一些不可能完成的要求,最糟糕的回答就是试试看,“试试看”实际上就承认自己之前并没有拼尽全力,代表自己还有多余的时间和精力可以达到目标,这间接做出了可以完成任务的承诺,我们自己将会承受更大的压力,并且十有八九会失败。所以说如果没有更好的方案或者没有办法调整自己的计划,那么一定不能承诺他人。所以说“是”的成本有时候很大,如果我们无法承担代价,就要学会拒绝,拒绝并不是丢人的事情,而是尽职尽责的表现,是坚守专业主义精神。

  拥有良好的职业素养,需要明白帮助的意义。编程并不简单,要想写出非常优秀的代码仅仅靠一个人是很难完成的,“三人行,必有我师焉”。互相帮助是每个程序员的责任,作为程序员,不能把自己与他人孤立起来,你一定会从其他人身上学到一些有用的东西,同时你也应该以帮助别人为荣,这才是一个专业人士应该做的。所以首先我们要清楚一个团队之中同伴的状态,当有人看上去遇到困难时,应该主动向他提供帮助,当然不能以应付的态度,而是应该真正的投入到解决问题当中,这也是个可能发现自己潜在的问题,并提升自己的能力的过程。反过来当我们的工作受到阻碍时,可以适当的去主动寻求别人的帮助,这是一种专业的职业精神,而一直浪费时间钻牛角尖却不是。当其他人向我们给予帮助时,我们应拥有诚挚的态度并表达感谢,坚决不能出现低人一等的想法,他人对我们的建议或者帮助有可能会让我们的代码的质量有很大的提升,所以这是一个非常好的学习机会。

  真正的职业素养并不仅限于上面所提到的有限的几点, 还需要我们自己去经历、发现、摸索和锻炼。总而言之,要想成为一名专业的程序员,个人的专业能力与与职业精神和道德都是不可或缺的。

打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦