私活就那么难搞定吗?
当我们的技术,经验积累到一定的程度,然后在一个有比较多空闲时间的公司工作的时候,我们总想利用自身的优势,弄一些其他的业务。为了自己的兴趣爱好,更好的体现一个程序员的价值,更实在一点的就是为了把自己的物质水平在提高一些,我一直都在寻找机会找些私活来做做。
早段时间一个做IT业务方面的同事,给我提供了一个私活。他问我能不能搞定,我说没问题,现在我缺少的就是单,当时我还挺有信心的。还吹水的说:“没有不能搞定的”。第二天,我还邀请了我的另一个好朋友一同去了客户那。和客户聊起了他们的需求,用户到挺爽快的直接明了的说:“我们要的就是一个通用的进销存系统,然后加上我们特定的一些内容就行了,在3个月内完成”。貌似看起来他们的需求是多么的简单,直接,明了。用户公司还从来没有用系统来管理,用户对于用计算机系统管理是不成熟的,他们也提出用”**进销存系统“做为例子,按照它先做一个通用的,然后在加上特定的业务流程。最后,我们了解他们公司一些基本的运作流程,答应一个星期给他们一个方案。
我和朋友都没有做过类似的系统,在网上一查,一般的进销存系统都是用dephi写的。我们很想在网上找到一个用java写的进销存的系统,可是找了很久都没有找到。其实,我们最困难的事情是,没有做过类似的系统,又离用户那边比较远,和他们面对面沟通就比较困难,用什么样的方法把他们的需求完好的挖掘出来。我们能够很好的把握住用户的需求才能把项目做好。用户提出来要参考“××进销存系统”,我们用JAVA开发出来到时肯定会和用户那个有区别,比如操作上面,界面的显示上面......如果我们没有一点代码的积累都没有,完全从零开始,然后又是利用业余时间来开发,这样恐怕很难在预期的时间完成;如果我们不能很好的挖掘出用户的需求,那么我们很难把这个项目做好。用户对系统没有一个好的概念,说不定需求定下来,过几天又会变动,那我们不知道要做到什么年月才能完成。我和朋友商量了很久最终决定不接这个单了。
我很想利用这么好的机会锻炼一下自己,培养自己的业务分析能力;和用户的沟通能力、表达能力、协调能力;系统的设计,编码能力.......但是机会错过了。只要我努力去争取,机会一定还会在来的。
私活就那么难搞定吗? 我们怎样才能把私活做好呢?我觉得应该要具备几个方面:
第一,行业背景。平时多学习,了解一下行业一些业务流程。
第二,多看看同行所做的一些系统。分析一下系统是怎么实现的,涉及到什么样的业务流程。
第三,多学些程序设计语言。利用他们各自的优势,对于编写代码也方便。比如:dephi就擅长桌面开发。
第四,多几志同道合的朋友。能够一起努力把项目做好,或者能够提供项目。
第五,技术,代码的积累。能又更多的代码库,那么能够提高工作效率,缩短开发时间。
第六,提高自己业务攻关能力。很多事件是可以商量解决的。
我们不能光技术而技术,现在已经不是“科学技术是第一生产力”,而是“科学技术转化为生产力“,我们要能够把所学的技术转化为用户所需要的系统,才能加倍的体现我们的价值。