独自完成大型系统设计开发的心路历程
2019-02-06 Think
(一)
先说说我的经历吧。我是学土木的,大二那一年我攒了台电脑,也没有啥目的。买完以后也不知道要干点啥,刚好那个时候学校开始教授CAD制图,那就练练呗(顺带说一句我是那种不爱打游戏也打不好游戏的人,说白点就是对游戏不感冒,在好玩也觉得没啥意思)。于是乎就潜心钻研如何提高画图 速度,背了不少快捷键,功夫不负有心人啊,拿了个CAD大赛的奖,接下来又开始对3Dmax、MAYA、UG这些三维建模的东西感兴趣了,学了一阵子,还弄了阵子flash和unity 3D,发现玩好这些东西必须学习编程,至少得学会脚本语言(AS一类的)。
有一天(2012年下半年吧)一个偶然的机会了解到DW(Dreamweaver)这个软件,据说是可以制作网页,网页就是可以挂到网上去供人访问,可以随心所欲的公开一些自己的想法,呦呵,这下可把我美了。于是不分黑白的在网上看教程,做练习,晚上经常凌晨2-4点休息,第二天白天接着弄,直到最后搞的人都魔怔了。说个例子:有一次女朋友电话我去吃饭,我说好的稍等,那会正在研究bootstrap1.0的代码,看的入定了,舍友们下楼去吃饭,然后再回到宿舍把我凳子给抽了,我竟然都是腾空写代码。舍友惊了,说:“你女朋友在楼下等你你咋没下去”,这我才想起来女朋友还等我吃饭呢,赶紧电话过去道歉,不料女朋友已经气的一肚子气饭都吃不下去了。
没过多久我就制作了一个校园网站“大学疯”,就是把摆地摊的同学们整合起来,在学校各处张贴海报,宣传网站,如此这般很久过去了,为了让网站漂亮一点学会了ps、fw等制图软件,为了让网站动态起来学会了使用cms和一众shop系统。
时间到了大学快毕业的时候。趁着短暂的在校时间去考个驾照吧,碰到了一个大学计算机老师,凑巧的是我们聊到了网站,凑巧的是这个老师懂C,但不懂怎样快速建网站,比如他认为每个网站需要从头到尾来设计开发,但客户找他仅仅愿意支付3~5千元的酬劳他不屑一顾,于是这个老师被我勾搭上了,就在即将毕业的时间里我帮助他赚了许多钱,当然我也拿了不少,有时候感觉一个下午就挣500元有点太容易了,于是就利用下一个下午全部消费了。
这段时间我慢慢发现我总是有用不完的创意和想法,但并不能肯定这些想法意义有多大,只能一点点去实践,有的想法等到实践了之后才知道是幼稚的,但随着时间的推移和经验阅历的积累,想法也变得越来越实际,越来越合理。
接下来的一年中我入职了一家大型央企,算是同学们羡慕的“铁饭碗”,还好我并不这么认为,总感觉这不是自己的归宿,其中企业制度的混乱,大提奉献精神,似乎想通过以信仰的方式去管理现代企业的员工。但不可否认的是他们的规章制度确实及其完善的。就像上句话说的——忽视了员工的有效管理,却拥有最完善的制度,就导致制度的执行大打折扣然后就用心的制度去弥补老制度的缺陷这样恶性循环,殊不知问题的根源在他们忽视了人力资源管理的好处。最后还是选择离开这家单位去从事软件行业。
很幸运,那是一个互联网/IT产业风声水去的年代,很快我这个非科班就找到了一份从事大数据行业的公司,负责项目、产品的UI设计和前端开发。这个工作非常大程度上帮助我学习了如何去应对客户以及如何处理各部门之间工作协调的事情。这个公司当时有近400号人,我的学历可能算是最低的极个别,在这里我充分认识到项目成本控制的学问,在后来的几家公司我发现一个东西,那就是好的成本控制不但不会让员工倍感压力,更让员工信心百倍,做事积极。我感觉到每一个软件从业者心态基本都是一致的,他们每天按时上班,坐在工位上能做的无非三件事情:
- 划水(上班聊天、刷网页)
- 投入生产
- 学习
这其中仅有“划水”一件事情对企业发展不力,但很多管理人员并不知道的是——员工们水划多了内心也很烦躁,因为他们再为公司的前途担忧,因为划水多代表着公司活少,这是成反比的。每一个勤劳的中国人都知道无功不受禄这个词,即便是划水也不会一划一整天,更何况在一个小小的工位上划上一天水也是很烦躁的。
在这里第一次感觉自己可能并不适合上班,因为任务安排到以后就想立马干完,不停歇的干完,这让我的顶头上司不太满意,因为干的太快对本部门而言就以前的工作量预估就有种露馅的感觉,于是我也会对外部需求报出比较以前部门平均的工作量,然后花节约下来的时间去学习新的知识。导致我的产品设计、前端开发水平突飞猛进。练就了及其强大的业务理解能力,这在后面的工作中不断被验证。
(二)
从从事行业上讲,15年我做的是大数据行业,16年做的高性能计算,并幸运的是都参与了公司的核心产品设计和研发,特别是在做高性能计算云平台时更加深入的、独当一面的参与了产品整体的设计和研发协调。
另一方面,因为一直为自己非科班自卑。以前看过一段话,不知出自哪本书,这样写的:
我一贯的看法是找工作就找老板谈,为什么?因为老板看人和人事看人的角度不一样。人事在聘人时,看你的缺点,所以百般刁难你;但老板看人却只看你的优点, 哪怕你全身都是缺点,但只要有个突出的优点,老板就会用你!
刘邦和项羽夺天下,手下用了一帮人:樊哙是杀狗的屠夫,灌婴是布贩,娄敬是车夫,彭越是强盗,周勃是吹鼓手,韩信是待业青年。陈平一幵始跟魏王混,混不下去,看到项羽猛,就去投奔项羽,但在项羽那儿混得不是很好,于去找刘邦跟刘邦混这些人,按照现在的人事选人标准,这帮人一个也选不上。
这个例子也不是反驳目前的面试体系,而是反对技术人员招聘的第一面或者电话沟通是由不懂技术的人事绝对把控的。另外学历门槛也是毋庸置疑的,我支持,毕竟在企业招投标、招聘成本上选高学历往往是不会出错的。也正因如此,我因为当年高考的失利在这几年里付出了比大多数本科生多得多的努力,但仍然觉得不够。至此我从未懈怠过。
两篇文章中,6000多字的自我介绍是尽力为了把我完全独立开发的原因描述清楚。这充满我个人对未来职业发展的担忧(学历问题)和内心里对优秀产品执着的追求,这几年来我参与过40多个项目的前段开发设计和售前支持,均圆满完成;接受过至少8个产品的方案设计和资源整合,甚至筛选供应商;独立完成过两个项目的单方面外包管理和交付,这里补充一句,也正因为这两个在离职到入职的间隙承接的独立项目使得我有了完成IAsset的研发资金。我曾经把8个小时的工作比作8小时的发行股票:
我们每个人都是一个上市公司,每天都要发行8小时股票去融资,随着时间的推移有的公司股价越来越高,有的则越来越低,不难发现我们目的是做高股价,如果自身发展对股市依赖越来越小,就适时回购一些
我在用这些资金去回购我曾经发行出去的“股票”,来完成自己的产品,这个产品也不是为了所谓情怀、梦想、能力提升,仅仅是我这个从事过企业底层、中层管理者发现的企业管理缺陷而制造的工具。下面将我所发现的企业管理问题和个人见地列举一下,这里尤指软件企业。
认识企业成本
通常的企业成本是人、材、机,人:人员工资,材:材料,机:机械成本,细化一下:
- 人员工资的组成包括实发薪资和企业的税费社保;
- 材料这就是材料的直接购买费用,但有时候会有债务因素,那就不能避免债务成本;
- 机械成本包含自有机械的折旧成本和租赁机械的租赁成本及其的维修保养成本;
对于软件行业来说,以前和传统行业的客户聊过天,很幽默恰当:“我们企业的成本是人材机,其中机械维修费用很高,你们软件行业很好哦,没有这个维修费用”,我答道:“哪里没有,我们人经常坏,坏了就要去医院看病啊。(但这个好像不计入企业成本,可见软件行业天生有低成本的优势啊,另外别看工资高,这是因为支付了一部分人体维修费),但确实没多少“材” ”。
开源节流
开源节流是企业管理的目的,但很多企业作的并不好,特别是一些中国企业,喜欢用信仰和哥们义气去管理,也难怪,咱们中国人特别吃这一套,如果这一招运用的成功再加上一些管理制度往往效果非常好,员工工作起来不计个人得失全身心投入,最后形成良性循环。在这方面能力突出的企业尤为华为。不幸的是很多企业也模仿如此行为搞到最后都弄得四不像,允诺员工的报酬迟迟未能兑现,形成了恶性循环,最后破产倒闭或者老板跑路。
所以说,针对中小企业,必须理清开源节流的各项因素然后加以把控,下面我们一一列举:
企业开源的路子无外乎这几种:
- 多些赚钱的路子
- 让老客户持续购买
节流的渠道就非常多了:
- 提高生产效率
- 引进好的生产流程或设备
- 精简机构
- 知识复用(也算提高生产效率,但后来也能成为企业软资产)
- 提高企业资源利用
就这里我们常常为企业搭建CRM系统等,然后再弄一个OA一个ERP之类的,大众使用频率非常低的一些软件,注意这里有一个关键词使用频率非常低
,这会导致很严重的后果,企业使用这些软件目的就是为了整合企业所有成员,提高企业活力然后增加效率创收。但使用频率很低和初心有违。使用频率非常高也不见得是好事,不能过度依赖软件,事事都要通过软件才能完成。举个以前产品设计中的例子:记得一次设计中,要实现一个协同设计然后发起邀请的业务,开会讨论大家各抒己见,要发邮件、短信、屏幕中心推送等方式提醒用户,我弱弱的说了一句:为什么不能拉个微信群或者打个电话通知一下,亦或者就我们产品的使用群体而言,大家都是坐在同一个办公室或者相邻办公室的同事,站起来喊一嗓子为什么不行。产品设计师通常而言做到这种克制也挺不容易的。
(三)
产品设计人员总是陷入自己的世界,极易受到外部环境的影响,然后脱离问题的本质,行走在产品理论的世界。现实中这样的例子很多。
很多产品在设计结束后并不像网上说的那样和原先设计预想的相比破烂不堪,而是:原先设计预想的是一个自行车,最后设计做成了一个破烂不堪的小汽车。显而易见,虽然小汽车用起来自行车好很多,但小汽车的开发成本、维护成本使用成本和使用风险都变的很高。在用户需求“代步工具”上其实并没有质的变化。
解决这个问题其实也不难,我曾在另一篇文章中有这样的描述:
为什么目标这么重要?
举个例子,阿里巴巴的slogan是“让天下没有难做的生意”,这是马云向社会传达的一种阿里巴巴精神,这有什么好处呢,比如当阿里的战略方向难以抉择的的时候,slogan或者说这种信仰就起作用了,哪个战略方向更符合信仰那就选择哪个,这就是信仰或者说目标使得我们的选择变得简单,也避免了盲目扩张,在产品设计上就避免了我们的功能冗余、脱离实际和目标。
实际的对于南京项目我们就可以很简单的得出一个结论:给旅客更实用和优质的服务、给机场带来更多收益。可能还会想到对悦泰要有更多帮助和发展,这个是我们后面会讲到产品化的内容,跟核心没有关系,一定要注意避免产品核心冗余,一个产品能做到解决好一个核心问题已经很不容易了。
正式起步
铺垫做的足够长的了^_^,那么现在正是开始说说我是怎样完成大型产品的开发和设计的。我发现微小型企业(200人以下)制度规划总是偏离。
好的公司制度下的员工总是充满正能量,思想积极与公司站在一起。而多数制度不完备或者过于完备却执行不到位的企业,员工骑驴看马,工作拖拉、疲惫,这不是员工的问题,人都有惰性,员工也希望清晰的时刻的知道自己要干啥,在干啥,那样才充实,那样才不至于乱忙。公司真正需要的是一套行之有效的推进工具,而不是目前市面上万能定制化的工具,要不然到头来定制的刚好满足企业现有的低效模式,挺讽刺的。
确定核心目标
就像上面说到的,我一开始就结合这些年的亲身经历、读的书、聊的天为IAsset立下了一个目标:利用管理企业资产来帮助企业挣钱,看起来有点绕,我来简单解释一下。
企业的存在肯定有这两大根本目的:盈利、发展,所谓盈利不是单纯的今天、本周或者本年挣了多少钱,而是你实实在在有多少资产、多少债务,通过这两点来反映企业运营的状况是最有价值的。
做产品设计时一定要刨开问题的本质,人类文明为了便于传播设立了许多概念门槛,概念套概念很让一让问题便的负责或者忘记本质,所以在遇到一个需求时,一句话概括它变得极其重要。
现在我们已经确定了IAsset的产品设计目标:统筹企业资产和债务。 产品体验上我们也应该立个目标:坚固可靠。
现有解决方案(商业和环境)
还是前面描述过,因为没有类似我构思的产品,所以我查阅和试用了很多ERP、CRE、资产管理系统、OA都是努力在解决企业管理中的问题,聊几个我们常见的产品:
泛微
很强大,功能众多,集成性、安全性、扩展性也很高,但是我在使用中总觉得有点麻烦,系统也总是个我提示一些比如需要安装插件什么的,体验不是很好。实际中,就拿请假来说,很多同事很烦在这个上面走流程,操作比较麻烦,使用频率很低,有时候就是为了责任划分而必须使用泛微。而且泛微为企业定制的APP版本,使用体验、产品完成度都很差(可能是个别案例吧)。另外价格也相对高。
也可能服务对象和IAsset的小型、微型企业(200人以下)不一样吧。他更多是使用在集团性、国有等注重安全、完善和知名度的企业。
结论:反面教材,没有值得借鉴的。
钉钉
背景强大,野心也很大,和Slack要做的很像,以IM为主要进程,完备的API可集成可插件各种外部系统,集聊天群组、大规模工具集成、文件整合和统一搜索的功能于一身,可以把各种碎片化的企业沟通和协作集中到一起。感觉啥都想做,一统天下的意思。但做得最好的还是IM,责任划分性(证据性)不足。
结论:责任划分性(证据性)不足;太大了用起来眼花缭乱。
常规资产管理系统
资产标签生成、资产盘点,比较专业,为了减税和设备资产管理而生的工具,和企业管理的整体关联性比较差,属于企业管理的细分领域。
结论:可借鉴。
总得来说,市面上针对这种200人以下企业的管理软件真正的作用和意义并不大,它们似乎没有摸准作为小微企业发展和管理的痛点。举几个例子:
我曾经做过项目经理,在管理中我发现必须做足团建,并绝对的处理好团队内部关系,这种关系是怎样的呢?大致是这样,组内成员都碍于和你的关系与情分不得不听你安排,做好手头工作。而作为项目经理你的安排和处事风格必须谨慎公正,不得有半点露怯,要不然你的威信将在团队内动摇。
看到没,是不是有些可怕,作为人特别是项目领导者,如果要恪尽职守,为项目进展做到勤勤恳恳,背下或者滤掉前方所有需求很难有不变动、不出错的时候啊,但这在小微企业是致命的。没有一套行之有效的工具或者说方式去约束这些智力劳动者。
IAsset的核心思想是以人为中心,盘活企业支出与收益,最大限度地提高企业效率和资源利用率,从以下7各方面着手:
- 人力资产
- 设备资产
- 不动产
- 软资产
- 直接资产
- 客户
以仪表盘作为全局统计,直接的展示企业利润、资产收益和利用状况。
特别是人力资产这里,把企业要做的所有事情都抽象为项目,那么项目的种类就有生产、学习、活动,员工每天的工作对号入座,然后由各个项目经理进行审批,通过则计入项目成本。这样做不仅可以对项目成本进行统计,还可以观察项目进展所遇到的问题点:
像这样的设计在 IAsset 中有很多,好了以上就是我独自完成系统设计开发的心路历程,具体中间碰到的技术问题以后找时间再描述。