其实发挥主观能动性的方式会随着程序员具体工作内容的变化而变化,比如说前端工程师、后端软件开发师、架构师等等。但总有一些东西是共性的,那么在这里,我就说说我的几点建议以及需要注意的东西。
交付思维
发挥主观能动性,究其核心,我觉得就是一点:站在用户的角度,交付用户想要的东西。也就是说,不能止步于用户的需求。程序员作为冲在第一线的人,对细节的掌握是最多的。我们需要依靠这些细节,结合用户的需求,理解用户需求背后真正想要的东西,然后努力向这个目标发展。
做得好的标准,就是理解用户没说出来的需求,能够为用户着想,交付用户想要的东西。
注意时间
发挥主观能动性的一个代价,就是会用掉更多的时间。这方面一定要注意。比起功能的完美,在规定的时间内实现基本功能,才是优先级更高的事情。
假如你突然对一件事情有了想法,但是时间来不及,或者不确定是不是对用户有价值,那么可以及时和用户交流。如果用户觉得这个细节确实很重要,即使延期也值得做,那么大家可以商量新的时间线。如果用户觉得可有可无,或者可以放在后续迭代来做,那么就专心做好需求里描述好的功能。
程序员在发挥主观能动性的时候,也难免会“夹带私货”。比如说,自己想用个什么新技术,试试不同的做法。这时候也要注意时间。用户可能一时无法理解新东西给自己带来的好处,但是用户肯定知道项目无法按时完工的坏处。所以在“夹带私货”的时候,一定要保证自己对项目的进度有所把控,不要因为自己的私欲让整个项目无法完成。