从事软件行业差不多十几年,完成过各种需求,大部分需求在可控的范围,但也有客户提出一些让人哭笑不得需求,经常有人说做个类似微信的app,需要多少人力和资金,一般程序员听到这种话都会有吐血的感觉,如果遇到不懂技术的老板会更加的悲剧了,但这种也不是能避免的事情,程序员更多的一个技术执行者,但现实生活中因为很多人不懂得程序是怎么回事闹出很多让程序员很崩溃的事情。现在国内的软件环境真正把客户就是上帝发挥到极致,产品交付的时候根本不是当初想象的样子,记得有个项目经理说过一句话,至今还是印象深刻,好的产品都是修改出来的,仔细品味起来怪怪的,目前国内的程序员很多加班时间都是为了这种修改,有些需求根本没有考虑到软件框架的实现,或者根本不给你留下构思的时间。前端时间发生在平安公司产品经理和程序员大打出手的情况主要原因是产品经理提出一个根据手机壳颜色做出相应变化的功能,这种属于典型的对技术一窍不通的人,为什么会有这么多不合情理的需求?仔细分析主要存在三个原因:
1.压根不懂技术,没有深入调查研究,只是看到表面的现象,毕竟软件在国内发展还没有完全铺开,导致很多人不理解也属于正常,因为软件展示在终端用户只是界面以及一些功能,不调查研究一个app的开发背后可能有成百上千人支撑,如果平台版的app不仅仅是一个看到的界面,背后还有强大的服务器支撑,服务器还涉及安全以及分布式等等功能,这些功能要完全铺开,细节多的惊人。
2.甲方思想,花钱让乙方做项目,功能做成什么样子完全靠是自己说了算,这在商业合同上也说得过去,毕竟乙方作为执行方有义务给甲方提供这些义务。但凡这种项目最后长久不了,毕竟软件开发需要遵守客观规律,无论什么情况下总要尊重技术。
3.表述不清楚。在软件行业会流行这么一句话,如果一个人能把要表达的技术问题搞清楚,距离真正的解决也就不远了,要真正搞懂技术是需要下功夫的,刚入行时间不长的人未必能把一件事搞的非常清晰,何况行外人,所以需要下功夫花时间,这可能就是软件行业另外的一种门槛吧。作为一个合格的程序员就是把需求用技术合理实现了,保质保量的完成,如何能够在技术基础上,顺便把产品设计模式内涵搞清楚了,那将会有更大的发挥空间。
抄一个淘宝确实是简单的。难得是让一亿个人用。
我是万能杠精,专业抬杠三十年。从事IT行业10多年,期间做过不少软件,也见过不少客户。总是会遇见很多奇葩客户的奇葩需求。“做一个淘宝多少”“做一个滴滴多少钱”“做一个百度多少钱”“什么?这么贵?你的系统有windows复杂吗?没有吧,人家才五块钱,你卖这么贵!”哈哈。其实呢,我认为客户觉得程序员觉得做一个软件很简单,无非几个方面。软件知识的缺乏,不了解软件开发流程,认为软件仅仅开发的那几个界面而已,并不了解软件之所以可以完美运行,其实更多的是后台逻辑,也就是不可见的部分。版权问题,由于前些年版权不太注重,导致很多软件在某宝几块钱就可以买到,从而给人一种软件廉价的感觉。(windows系统才五块,你好意思卖那么贵)实体和互联网的区别,传统实业,不管买什么都是看得着,摸得着的东西,都是实实在在的,而软件就是硬盘里的一块数据,大多数软件连一个小小的U盘都塞不满,觉得卖那么贵都是忽悠人的。工作方式,由于软件开发人员都是做电脑前敲敲就出来了,给外行的感觉很简单,殊不知对于一个问题需要多少时间的付出。(一个优秀的程序员需要踩过多少坑)思考问题不周全,缺乏产品经验,对产品需求描述不完善,对预期过于乐观,导致预估预算过低。我是一名程序员,如有问题欢迎私信一起探讨。我是万能杠精,不会养花的程序猿不是好作家。欢迎关注,日后一起开杠。
谢邀~这不就相当于,“我有一个idea,现在就差一个程序员了”。就差一个程序员现实工作中,确实遇到过类似的客户和需求,举几个真实的例子:
1.“不就是页面增加一个(展示)字段么?几分钟应该就可以增加好了吧!”。这个是我们业务领导在开会的时候,怒斥开发人员响应慢,他不理解为什么一件简单的页面上增加一个字段,需要一两天的工作量。
2.“就一个查询么,为什么不能输入几个字,去模糊查询!”。模糊查询很简单,快速的模糊查询,我们也需要掂量掂量。
3.“做个秒杀功能吧,我看人家秒杀页面很简单的,半天能搞定么?把现在销售页面复制一份出来,改改。”嗯,谷歌首页就一个输入框,那个更简单。
4.“屏保的颜色,随着手机壳的颜色变化而变化,这个功能应该好实现吧?”后面的事情,大家都知道了。不懂技术我觉得造成这个的原因,还是因为对自己擅长的领域不了解,但又非要按照自己的认识去下定论。其实很多事情,表面看到的只占整体的一小部分,在表面的后面,还有很多很多技术在支撑着它。不尊重,不信任他们可能怕让开发人员自己评估工作量,自己会被忽悠,明明一周能做完的事儿,非得评估一个月,索性自己先拍个时间。但是,应该让专业的人做专业的事情。如果怕被忽悠,那么自己就去接触,去学习,就算不是很专业,那也不会说出“一个月做个淘宝、京东”这样让人耻笑的话。压价、压工作量还有一部分,对技术可能还稍微了解一些,但是他们站在客户的角度、业务的角度,希望可以让工作量评估的少一些,这样他们可以少给钱,或者让需求更快一些完成。而站在程序员的角度,遇到这样的客户、需求,那就先好好沟通吧,最后把事儿做好了才是最重要的。沟通不下来,就让领导出面。(别告诉领导是我说的)我将持续分享Java开发、架构设计、程序员职业发展等方面的见解,希望能得到你的关注。