权限管理、用户权限系统、开源用户权限系统、信息化建设标准基础数据管理平台
代码改变世界

这几年已经组织开发或者即将开发我的或与我有关的第7个薪资管理系统、第5个人事管理系统,从中你觉得啥才真正有价值?

2009-02-07 03:31  通用C#系统架构  阅读(3473)  评论(67编辑  收藏  举报

  开发管理系统N年了,还没彻底厌倦,其实也小小佩服自己,为什么这么喜欢做枯燥的软件开发,沉迷与无聊的被人看不起的信息管理系统,越战越勇,越来越来精神,越来越有感觉体会,导致今夜又失眠了,开发管理系统就是娱乐消遣一样,还是都在一个个能在成功实施的原因。

 

  1. 先从薪资管理系统讲起

  大概在2003年左右,宁波的一家中学、小学、幼儿园同时需要一个薪资管理系统,他们3个单位的薪资发放栏目都不一样,发放的模式也不一样,有的一个月发一次工资,有的一个月发两次工资,还有老外的工资也要发放(注:老外的个人所得税起证额是跟国内的人不一样的),这个薪资管理软件上线后,一直用到现在,我们的个人所得税起证额,好像发生了2次变化,没去修改过程序,每个单位发几百个人的工资,工资条需要水平的,垂直的,工资发放时转账的银行也不一样,所以各个银行需要的数据格式也不一样,有的要文本,有的要Excel,有的要栏目先后顺序格式不一样,三个单位3种需要,总不能开发三套吧?需求是不一样,甚至是冲突的,说白了,你想得很简单,觉得互相冲突那就得开发三套系统了,那绝对是不对的,虽然客户的需求是矛盾的,你表面上是矛盾的,其实不矛盾的,说不定那天另一个单位工资也分2次发了。
  

  当时项目的预算不多,这3套系统用 C/S 开发了基于SQLServer数据库的,也不需要开发说明,客户也不要求要设计文档,软件好用就可以了。当时系统里的数据库底层访问组件,就是用我现在这个的早期版本,这个程序现在还能跑得起来,只是没精力去推销这个薪资管理系统,具体实现功能,还是很厉害,若是遇到相对简单的薪资管理绝对可以用上,也能满足客户需求的。
  

  当时这个系统里权限处理,也是用的是现在的权限处理的早期版本,变化虽然表面上不大,但是已经有质的区别了,诚实的说,参加工作的第4年,才真正知道我们国家的个人所得税到底是怎么发的,那个公式是啥意思,哪个钱应该先扣,怎么扣,然后才是怎么怎么了? 三金怎么算?降温费,通讯费又怎么算?房租水电费又怎么算等等彻底搞了个明白。

  大学毕业后的第2年2001年,到了当时宁波最大最好的软件公司,叫宁波宇泰公司(台资)去工作,在哪里学到了很多很多,刚去的时候,就搞不明白当时为什么外企,台资企业收入那么高,真的是有很大的差距,那时候带我们的技术经理都是月收入好几万的,也算是台湾的精英层,第一次学会项目管理是什么?开发人员应该如何管理?什么才叫专业的技术?如何团队开发?如何真正用SQLSERVER。虽然很早也自学了数据库,那简直是差了老远了去了,不是一个数量级的,什么叫牛人,第一次感受到,当时那些人为什么月薪有好几万的确有水平啊。

  为什么现在底气很足,也是由于那时候基础打得牢固一些的原因也有的,在外企,就算是台资企业,稍微厉害些的,也能学到很多知识。当时公司开发ERP系统,想做全国最好的ERP系统,虽然最终没能得到成功,现在也是很多公司难超越他当时的水平,虽然没全身心参与到ERP的开发,但是会经常关注,项目是在如何管理,都用什么控件,报表如何弄,安装盘如何做,软件注册怎么搞,软件的网络化管理是如何实现的等等,还有一次帮着去改进ERP系统里的权限处理,从那个时候开始,着迷了权限管理系统,因为台资企业非常注重管理、权限、流程等,当时的意识就是权限管理是整个管理系统的核心命脉,把当时公司里的权限管理思想彻底学了个透彻,按时髦的话讲就是完全符合RBAC什么的,其实也以讲,研究权限了6-7年,才彻底超越了2002年左右时的我当时宇泰公司的权限思想

  当时在台资企业研究 Linux + mysql + php,做的项目是 postnuke 的二次开发,那是当时开源世界里排名前10的,最近几年的VB.net版本的postnuke的排名也很靠前面的,不是吹牛的,当时把整个 postnuke 的PHP代码架构都阅读了一遍,现在的很多处理思想也是从那里学过来的,也并不是自己独立创造的,站在知名开源软件的基础上,每个人不是神仙,都需要学习前人的劳动成果,一直在那个台资公司工作了接近3年的Web方面的技术,所以对B/S的系统非常自信,了解的深度也是足够的,当时从那个公司走出来的人,现在大多在IT软件领域都混得还可以,最差的也都在当部门经理吧,我可能就是属于哪个最差的一个之一,当时在宁波其他软件公司都是免面试的,只要是那个公司出来的“女的当男的用、男的当鬼用”


  大概是2006年,自己创业开公司时,承接了苏州明基逐鹿外包部门的二次外包单子,做安徽电力的人力资源管理系统,项目进行了有些时间了,我们派过去的工程师,搞不定薪资管理模块了,智能自己亲自出马,到了安徽合肥,薪资到底是怎么个回事清楚得很,带了2个工程师,用了1个多月轻松把当时安徽电力集团版本的薪资管理系统全部搞定了,当然那2个工程师,差点儿累虚脱了,他们两个也很努力人品也好。这个项目里对薪资的管理的了解高度及深度充分派上了用处,相对来讲项目进展得非常顺利,扭转了整个局面陷入无法有进度的困境,开发底层是用了安徽电力的规范的开发平台,我们只管业务开发程序就可以了,他们是B/S版本的 Oracle 数据库的,经过这次的折腾,对薪资系统的了解深度又提高了一个层次,跟上一个代信息系统比,重复利用的就是对薪资系统的了解情况,是由明基逐鹿的工程师做的需求分析,由我公司组织的编码,由安徽电力提供的开发平台。明基有要求这个项目的相关资料不能外泄,也签订了合同,当时没保存在自己电脑上,那时候的想法是做一个好的商人,说话算话,那个项目大家都干得很拼命,也正好是自己创业的最高峰期的时候。

  创业失败后,2008年又开始打工、到我们杭州分公司工作,当时自己要求来工作的,所以就保持低调了,领导给安排了高级程序员的岗位,求人家来的,那只能是安排啥就干啥吧,说白了自从毕业以来,第一次这么低调,最普通开发人员的姿态,参加了义乌的一个大型企业的整体信息化项目,当时看了数据库设计不合理,提了几个改进意见,人家不吊我,我也没办法,看了设计规范不太好,注释的写法命名也不太好,又提了改进,人家没吊我,全部被驳回了,我说做外包人家要求都很规范的,项目经理说了,我就做外包的技术总监,无语了,看了整个系统的权限设计,又提了几个改进,人家也没吊我,项目经理觉得他是这个领域的专家,他的设计才是合理的,我又无语了,他觉得他的是牛X的,最能符合客户的需要。他要我开发费用预算这部分,以前做过这个,我一个月越多把分配给我的任务做好,但是我死活不用他的架构,实在是忍无可忍,就在他的架构里内嵌了自己积累的架构,第一次体验了一下,多种架构其实在一个项目里也可以完全平滑兼容,用户是表面上是根本看不出来的。

 

  在宁波工作时被N个人批评不用代码生成器,这段时间正好可以在义乌安心研究一下,就花了1周左右的时间,把后台的代码生成器做好,然后用PowerDesigner 把数据库结构设计好,然后用代码生成器一天产生了接近1万行代码,把1周的时间都补过来了,至少心里上会产生安慰,平均用起来每天还是一天1千行的标准规范代码产值,不是吹的一般人达不到的,终于把这个代码生成器的心愿了解了,自己也体会了一下代码生成器的强大威力,有关代码生成器的文章请看 http://www.cnblogs.com/jirigala/archive/2008/07/28/1254763.html。后台代码的成生器想要啥样的?只要说,愿意付费,在一周内全部给搞定,费用也不太高,大家多发布多研究前台的代码生成器吧,后台代码生成器已经没啥意思了,微软也都自带了生成器。

 

  通过这个项目我逐渐意识到,不要指望改变别人,别人不想提高或者进步,你也别管了,做好你自己的事情就可以了,想改变别人最终是得到别人的厌烦,及排挤,白猫黑猫能抓老鼠就可以了,也没必要争,更没必要吵,自己还落个不好的名声,等他来问你,你就回答,乱就乱去吧,反正这个项目我不负责,结果这个一直到年后了,还没能进行完,当然项目的工作量是很的,不只是项目经理的问题,这个薪资管理系统,我明明知道数据库设计不合理、系统架构不合理、编码不合理,税怎么算也会弄错,我也懒得去告诉怎么算了,你觉得牛X,你自己去弄吧,我也懒得管你了,是你提高,又不是我提高对吧,何必我跟你过不去呢,随他去吧,这里差点儿那里差点儿,整体上就差了老了,70-80-90之间有啥本质的区别,难道都是10分吗?

 

  2009年,快到春节前,我在宁波时的BOSS来杭州了,看看我们中高做的项目是怎么个情况,看了看,是否满足宁波的需要,我就装傻了,老老实实的,因为我说我是薪资管理的专家,那不是得派我到宁波去做薪资管理了?说白了,一定会是跟安徽电力的需要很接近的,都是大企业,都是国有的,都是有几千几万人,能不一样嘛?但是我不之声了,因为我想陪老婆在杭州在一起,好不容易走到一起啊,我去宁波做项目,老婆跟别人跑了?我这辈子咋么过啊?明明是我擅长的,我做过的东西,我就装了个哑巴,装了个跟我没关系,一方面可能表明我已经老道了,狡猾了,另一方面我的干劲可能有些被抹杀了,我去拼死拼活把这个项目做好了,也不是拿我月薪嘛,也不会给我补贴的,哎,对一公司整体来说,像我这样的老狐狸不能太多,需要多几头高产量的大母牛,说实话我也有些怕去宁波公司了,因为我总会遇到总总阻拦,好再我没恶意,出发点都是善良的,我太完美注意者了。

 

  宁波的人事薪资管理系统应该要上线了,我的经验总结没派上任何作用,不知道他们是否采用了我的以前积累下来的东西,我离开也快1年了,基础类又改进了很多,又好用了很多,但是我怕给他们了,又会引起很多人的意见,我宁可不给了,若需要向我要,我再给吧,不过1年前的版本也是很好用的,改进是永无止境的,但是改进的接口功能变化会越来越少,越来越成熟稳定,几乎更换一下DLL就可以,其他什么都不用做,这是分层的优势,分工的优势,你不用管了,别人会不断改进,你改进你负责的那部分就可以了。宁波公司里有些人总想开发一个比我的更好的开啊平台,我又不能打击,因为你不能打击别人好的思想,那我不是成了顽固派吧,鼓励吧,又多了一个小山包,到处是山包的问题,说实话真的很伤公司的元气,动不动就开发个什么开发平台,哎呀,菜鸟也不行,还得投入精华力量,这些人年薪、公司的开支都都应该会有5万以上,2-3个人搞的1年,10-20万又白浪费了做不好了吧,拍拍屁股走人就可以了,等东西做出来,.net 里又出来了新技术,哇靠免费的,还更好用,你用自己的,还是用微软的?凭空开发平台是最轻松的,因为客户不会烦你要实现这个实现那个,想怎么搞就怎么搞,先搞上1-2年再说吧,自己也是提高,又采用新技术对吧,公司又不是我开的。而且大家也对新事务,新想法,很有好奇心,我现在拉你去开发,你也愿意,他们还没深入了解我的权限,就给我下一个定论你的权限不行,因为我心目总想的这个问题,你是解决不了的,还没等我说,扭头就走了,哇靠牛X了,你以为我是混饭吃的吗?这么牛X, 服了你了。

 

  2009年春节放假前,公司一个新项目开始启动了,里面还是有薪资管理,已经懒得自己开发了,有没有谁做得更好?又不去重复引入宁波开发薪资管理的成果,直接就在网上公布了,需要薪资管理系统结果没人理,薪资管理系统需要啥功能大家不知道嘛?若你是做过信息管理系统?心里应该很有数,自己也感觉累了,花点儿钱买一个好用就买一个吧,钱是赚不完的,拿拿工资,就可以了,一切都慢慢来吧。

 

  可能公司同事以为,不会搞薪资管理,或者不懂薪资管理,哎,说不定比公司的会计还懂,因为杭州公司的会计总是把我们的工资算错,老是把个人所得税搞错,也懒得管了,也不是能管的职能范围,说白了2003开发的那个软件,现在给公司装了用,也完全能满足公司的工资要求,但是去惹这个麻烦干啥?自己难道真的变成老狐狸一个了,太狡猾了,这个新项目启动起来了,以往的内容哪些是价值的?从公司老板的角度考虑问题,总不能指望吧,人走了怎么办?不加薪,死活不干了,老板怎么办?公司的积累应该如何积累?

  

  若真的水平很高,以上7个薪资管理系统,完全可以由一套软件来满足所有的需求,不是不可以真可以,没啥了不起的,真的把薪资彻底搞明白了,要是一心搞这个,还真有些信心,还见过宁波总公司代理的北京一家公司做的薪资管理系统,完全自定义,只是C\S的版本的,还真的是几乎是万能的,人家那个公司上百个人,就搞薪资,能做不好吗?实在没人给我提供,我就把2003年的那套软件拿过来部署,就完全可以了,你开价太高了我宁可稍微维护一下2003年的系统,就可以满足客户的要求了,因为分层架构,权限架构,跟我现在的是完全兼容的。

 

  管理系统搞来搞去都是搞这些,当碰到了这样的项目是千万要学会珍惜,把成果沉淀下来,不断在不同的项目里完善改进,工作效率会很高,会变成这个行业专家,平时开发管理软件也不累了,因为需要只是大同小异而已,你不能老是换方向,一方面你啥都不精,日常工作也很累。

  东一个西一个,10年,你啥都懂,啥都没有,别人需要啥,都需要从零开发,你两手空空进入IT行业,让你两手空空离开IT行业,我很害怕这个,所以,我从2002开始写的代码,几乎都在电脑里,2003年写的系统,也经常在维护与时俱进,这些都是我当时花了好几个月的努力拼搏出来的,按女人来说,那是我生出来的孩子,我看着不顺眼就可以丢了?把自己的孩子想丢了就丢了,随便不去管他嘛?你不想让你的孩子成长提高嘛?犹豫以前给他买了衣服,他成长了以前的衣服穿不上了,你还要买新衣服,由于这些合理的理由借口,你会想尽一切方法阻止你孩子的成长吗?不会吧。

  

  国家为啥搞计划生育,强制要求你不能生太多的孩子,将来厉害的老板,有眼光的老板也会强制法律一样要求,程序员不能弄出太多的小山包,一个公司只能生一个孩子(一个小山包),要讲优生优育,精耕细作,像日本维护自己的稻田一样,软件也是一样的道理。

  开个玩笑,你今年又生了吗? 可以彼此开玩笑了,一个软件公司别生太多的小孩,你照顾不过来,一个国家就有100个男人有20个男人就踢足球的精英,那可能这个国家专门搞全世界的足球比赛就可以了,生10000也多余,应为就需要20个男人就可以了。

  不要觉得天下就你厉害,你的难题别人也解决不了,我也会仔细学习 RBAC 权限的国际模型, 也会多听听大家的意见,大家也别不管啥,就有个谬论产生。

 

  开发管理软件,本来就是人来一波走一波,春分吹又生,一年换一波人,一波又一波。所以必须要事先想好人员的变动因素等,如何有效积累经验成果、公司如何积累经验成果,都是很深的学问。

  当一个公司然业务发展良好、给员工提供的福利待遇良好,可以深度的积累行业知识库,各领域划分好,分工配合好,可以长期有序的发展。这个时候若心态好,能在一个公司长期发展,得到领导的重视,也能长期平稳发展。

 



C# ASP.NET 通用权限设计、通用权限管理、通用权限组件、单点登录、集中式权限管理、统一授权体系、分级管理分级授权


微信扫一扫加好友