我们是无耻之徒吗?

       近日在人民网看到一篇名为《月薪过万请不动程序员 中国软件人才薪水过高?》的文章,该文把“中国的民族软件人员”描绘成只追求金钱,不比贡献,处心积虑地考虑捞好处,一门心思进外企的贪婪无耻之徒。我是一个程序员,同时也属于企业的职能管理者,读完该文,不禁一身冷汗,扪心自问,我们做"民族"软件的都是这样的人吗? 

       我在这里先要讲几个故事。一年多前,我在北京一个软件企业工作。公司临时要启动一个大型的软件项目,当天下午,总工程师和我召开了动员大会,讲明了软件开发的一些问题,同时也说明了时间的紧迫性。我们先让大家做好思想准备,加班,要没日没夜的加班,一定要赶到两个月后交活。等我讲完了,总工发话:“大家有什么问题吗?”我本以为员工的抵触心理应该比较大,要知道他们的薪水在北京并不算高,而且有很多是本地员工,家人平时也希望他们下班后早早回家。整个会场静悄悄的。有人问了:“咱们能做完吗?从来没做过啊。”我又解释了一遍,只要大家按照目前的设计,然后再努力一点,肯定没有问题。所有人听完了,便开始讨论起一些具体重要的细节来。最后研发部门的经理发言了:这次的任务虽然时间急,但是只要公司领导在方案上定下来了,又有技术细节上的把握,那么兄弟们一定能做出来,哪怕天天加班也能做出来。况且这次要用到很多以前没接触的新东西,大家也可以收获不少。 

       听完程序员们的意见,我和总工心里有底了。当我们说到已经为此项目从公司争取了一笔经费,大家做完项目会有一定奖励时,所有人都笑了,一起站起来说,先别许愿了吧,我们吃饭去。开了三个小时会,都饿了。 

       第二天,忙一天,快下班了,研发经理说,我要请一会儿假。我心里直嘀咕,项目下来第一天就想开溜?看他笑的诚恳,也就让他走了。过了两个小时,他又回来继续工作。总工偷偷把我拉到一边,说今天他一张火车票把老婆送回石家庄娘家了。原来他老婆怀孕了,他怕不能照顾,托给老岳母了。 

       就这样,这个哥们带着一帮人,拼死干了两个月,硬是做完了。期间还有很多感人的事。一个主力程序员,因为天天要加班,和女朋友的婚事推了又推,从国庆推元旦又推到春节,差点黄了。每天大半夜去看,办公室里面坐一屋人,心里可真是难受啊。第二天去商场买了几大盒西洋参,放在每个程序员的电脑旁边。 

       到了公司要兑现奖励的时候,领导看一下子又要拿笔钱出来,有点不痛快。总工立马就火了。头儿问我什么意见,我说,还不够。这样的人不奖励,都看不过去。 

       后来公司开始不景气了,陆续裁员或划到分公司。很多人都不得不难过地离开,包括公司当初花很多钱培养的优秀程序员。我最后又带了几个程序员开始做,公司已经不发薪水了,我们自己接项目。我最好的两个程序员一直跟着我。在最艰难的日子里,我们还拼命地干活,晚上累了,就洗个澡,打一会儿游戏。最后几个也走了,出国的,去其他效益好的单位,只剩下三个人在一个单独的事业部。出差花自己的钱,去说服客户,不断修改以前做好的软件,加新的功能进去,满足客户的要求。总之是不想放弃公司,希望在什么地方倒下,再从什么地方爬起来。 

       直到有一天,我的好兄弟,最优秀也是最后还坚持的程序员给我发短信,说,俺要离开北京了,车票都买好了。我说,为什么?没钱了么?大家还可以想办法。他说,算了,俺不想再让你发工资了。我在他的离职意见书上签字了,心里说,对不住。办手续的人问,干吗走啊?我火了,不走能活吗?现在每月租房子1500,坐地铁来上班,工作餐补贴也没了,家里还养着个老婆(刚刚被裁员了),要人家怎么活? 

       是程序员的错吗?他们付出的少吗?到最后我才了解到,因为很多公司管理上的其他原因,导致了投资方失去了耐心。可是在这样的情况下,他们还能坚持到最后,我在这里对他们说一声谢谢,那段日子辛苦大家了。 

       文章的作者问为什么会有人倒戈?为什么会有人羡慕外企?因为程序员不光需要钱,更需要安全感。网上有篇文章,说程序员象妓女。妓女况且能够选择什么日子接客,什么日子休息,程序员为什么不能? 

       国内的企业有几个管理规范的?有几个能给予程序员最大的发挥空间的?有几个能让程序员有时间、有机会不断提高自己的素质,以跟上计算机行业的发展步伐?做程序员这个职业,本来吃的就是青春饭,光给钱有什么用?非要累的一身病痛,象红尘女子一样凄惨,才能博起"研究人事的专家,心理学方面的能手"的一丝同情吗?说话的记者,有本事,到程序员的座位上坐上一天,看看他们是怎么过的?大家追求好一点的工作环境,到具有规范的人事制度的企业谋职,无非都是想能够把自己的职业生涯延长一些,为企业,社会和自我创造更大的价值。 

       深圳快撑不住了吗?技术工人的缺乏与社会的用人体系、人才培养体系有关。是能够马上改变的事实吗?"为了向更高身份或收入靠拢,奋斗在浪尖上的IT中人已经快忽略了还有技术工人这个职务。"多么荒谬和可笑啊!技术工人的缺乏与IT中人,与程序员有什么关系?多数从事IT,从事程序员工作的人才,并不是向往高工资,他们是真正热爱计算机的,勇于创新,和敢挑战自我的人。这位记者同志,我们并没有忽略任何对社会做出贡献的人,但是要一个人为社会作出最大限度的贡献,那么他的职业必定是符合他自身的特长和兴趣爱好的。在计算机的世界里,有我们大量未知的知识领域等待我们去探索,去掌握,这才是我们从事IT,献身计算程序开发的唯一理由。至于技术工人,和程序员职业本身一样,在市场经济的作用下,自然会有很多人认识到这一职业的重要性和价值,也会有很多人像我们投身计算机行业一样,不断加入这一职业的。记者同志啊,当你在说这句话时,实际上把技术工人摆到了自我意识里的低身份,低收入的角色里去了,应该反省的人恰恰是你自己! 

       中华英才网出资百万的统计结果里,有没有包括程序员的平均工作时长,平均加班时长,平均工作效率和因为程序员的工作给企业带来的经济效益这些数据呢?没有一个企业不会考虑到人力成本,如果一个程序员不是具有相当的熟练的技能,长时间的劳动,高效率的工作,给企业带来高经济价值,有那个老板愿意出高价钱做亏本生意,请他们到公司来喝咖啡呢?如果有程序员1个人能干完3个人的活,并且干的漂亮,别说一万元,就是更高,我也敢请!因为在计算企业的人力成本时,每个单独的员工的实际成本是他工资的数倍,把几个人的工资花在一个人身上,实际上更省。IT记者,赶快去学学管理学吧。 

       我这里还要高呼一次,为“民族软件人员”加薪!不是为了留住所有的程序员,是为了留住他们中最优秀的那一部分!加薪并不是单纯意义上的增加物质上回报,要从多方面给他们提供“安全感”,要从管理,从规范上赶英超美。国内的软件从业人员素质都不低,企业不做正确的引导,却怪他们追求“收入赶美超英了”,公平吗? 

       “在软件公司中,高级技术人员是否在为软件产品的失败而承担责任”,我们什么时候逃避过责任?软件产品的开发失败,无一不是技术负责人辞职,开发团队解散。但是因为公司管理上出了差错,因为制度的不规范,而让那些无辜的程序员用幽怨的目光看着我离开时,我真的感到无地自容。 

       好一个“唇亡齿寒”!请问那位大记者,真正努力的IT人中谁暴富了?谁只比收入不比贡献?在北京冬天的地铁里,我曾经回答过一次一个看不惯我们这样“暴富”的人,我在北京上缴的税收可以保障几个低收入家庭的生活,合理合法,诚实辛勤的劳动报酬,谁都拿的问心无愧。在公司最艰难的时刻,我们的程序员都不曾偷逃过一次个人所得税的交纳。相反,那些信口开河,随手要钱,大搞有偿新闻的IT黑记们,却让人厌恶到极点。 

       软件行业浮躁吗?答案是否定的。浮躁的人,急功近利的人是谁?永远不是程序员。国内的企业,一天不规范起来,管理水平不上起来,就始终有人“叛逃”,只要那些“叛逃”的人,不违反公司的规章制度,不违反劳动纪律和法律。我支持他们。因为他们不是妓女,也有选择的权利。 
 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
当然可以帮您解答这个问题。FactoryBean 是 Spring 框架中的一个重要概念,它可以用来创建和管理 Bean 对象。下面是 FactoryBean 的使用步骤: 1. 创建一个实现了 FactoryBean 接口的类,该类需要实现两个方法:getObject() 和 getObjectType()。其中,getObject() 方法用于创建 Bean 对象,getObjectType() 方法用于返回该 Bean 对象的类型。 2. 在 Spring 配置文件中,使用 <bean> 标签来定义 FactoryBean 对象。需要注意的是,FactoryBean 对象的 id 属性需要以 & 开头,例如:id="&myFactoryBean"。 3. 在 Spring 配置文件中,使用 <bean> 标签来定义需要创建的 Bean 对象。需要注意的是,该 Bean 对象的 class 属性需要设置为 FactoryBean 对象的类名,例如:class="com.example.MyFactoryBean"。 4. 在需要使用该 Bean 对象的地方,直接使用该 Bean 对象的 id 即可。 下面是一个简单的示例代码: MyBean.java: ``` public class MyBean { private String name; public void setName(String name) { this.name = name; } public void sayHello() { System.out.println("Hello, " + name + "!"); } } ``` MyFactoryBean.java: ``` public class MyFactoryBean implements FactoryBean<MyBean> { private String name; public void setName(String name) { this.name = name; } @Override public MyBean getObject() throws Exception { MyBean myBean = new MyBean(); myBean.setName(name); return myBean; } @Override public Class<?> getObjectType() { return MyBean.class; } } ``` applicationContext.xml: ``` <bean id="&myFactoryBean" class="com.example.MyFactoryBean"> <property name="name" value="World" /> </bean> <bean id="myBean" class="com.example.MyFactoryBean" /> <bean id="myOtherBean" class="com.example.MyBean"> <property name="name" value="CSDN" /> </bean> ``` 在上面的代码中,我们定义了一个 MyFactoryBean 对象,并设置了它的 name 属性为 "World"。然后,我们又定义了一个名为 myBean 的 Bean 对象,它的 class 属性设置为 MyFactoryBean。最后,我们定义了一个名为 myOtherBean 的 Bean 对象,它的 class 属性设置为 MyBean,name 属性设置为 "CSDN"。 在使用这些 Bean 对象时,我们可以直接使用它们的 id,例如: ``` MyBean myBean = (MyBean) context.getBean("myBean"); myBean.sayHello(); // 输出:Hello, World! MyBean myOtherBean = (MyBean) context.getBean("myOtherBean"); myOtherBean.sayHello(); // 输出:Hello, CSDN! ``` 希望这个回答能够帮助到您!

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值