引子
第一眼看到这个话题的时候,心里突然升起了一种即熟悉,又陌生的感觉。接下来我写下的内容,可以算是以往工作中的感悟,不知道和这个话题的初衷会不会产生一定的偏离。
严格意义上来讲,我不能算是一名传统意义上的程序员,顶多能算是一名甲方单位的软件工程师,与程序有关的工作内容是针对本企业业务流程,对企业内部管理软件做二次开发,属于一个技术支持、服务部门,除了专业知识更新迭代速度很慢之外呢,与传统意义上的程序员可能不一样的是,我们从需求调研开始,到写代码实现功能,再到现场实施,再到用户培训,都由自己来完成。接下来我打算围绕着自己以往的工作经验,说一些我认为重要的“越早知道越好”的问题。
关于需求调研:越早知道用户没有说出来的,可能发生甚至极少发生的特殊业务场景越好。
关于开发:提示语写的越接近口语越好,能给用户一些操作建议就更棒了。
关于实施:越早知道耐心与理解的重要性越好。
角度一:说说你在程序员这条道路上踩过的坑,并给出相应的建议。(包括但不限于技术、生活、职业发展)
既然开头以阶段划分,列举了三项,我打算在这个部份里分别针对以上三个问题说说自己的理解和想法。
关于需求调研:用户在描述需求的时候,由于专业领域不同,文化程度不同,工作经验不同,往往只能描述出工作流程的基本或者基础情况,往往忽略了那些不常发生的甚至偶尔发生的业务场景。恰恰是这种问题,在开发完成之后,到了测试或试用阶段就会暴露出来,拖长开发时间,甚至导致推翻原有方案,需要进行重新设计。这时候一定要引导用户“再好好想想,有哪些可能发生的特殊情况”。
关于开发:提示语是给终端用户看的,而不是给软件开发人员看的,一定要站在他们的角度来写他们能理解得了的提示语。如果有一些操作上的指引,那就更棒了,目的都是一样的,让终端用户能够根据提示语,自行解决其所遇到的问题,哪怕是一部份也好。即加强了管理,又提升了工作效率。
关于实施:这部份的内容比较人文学,人心都是肉长的,当业务人员遇到问题的时候,耐心、得体的帮助他,终有一天你会得到回报的,可能是对新开发功能中不足之处的包容,也可能是系统功能上的建议,或者是其它和其它和其它。善待用户,是一个不错的选择。
角度二:对于刚入行的程序员,你有什么想说的呢(建议或忠告)?
引用一个朋友说的话吧,“专业知识只代表岗位技能,不代表工作能力。”
角度三:如何才能成为一名更优秀的程序员?
我觉得这个问题我是没有发言权的。还是决定不写了。