工作的事 【技术人员的困惑】

工作的事..

很想条理清楚地写出自己的忧虑,然后从自己显而易见的忧虑中找出自己的路. 这是 戴而卡耐基 排除忧虑的方法.

1。 进入梦寐以求的IT行业-code工作半年了,本以为, code就是自己的最爱, 在各种压力下(待遇,开发的技术层次,个人发展的前途),诸多因素的影响下,这个观点也在发生变化。

2。 我现在只是一个code, 这显然是不能满足的。 自己是个适合作技术的人,因为不善交际,不善马屁(不是贬义词,我很希望自己有这方面的脸皮和嘴皮子)。 所以从code升级成为架构师,是最初的想法。

3。 中国的it,全球的it行业,是否和硬件一样了? 泛泛的集成组装,是低水平的事,赚不了¥。如Intel,专门研究一个cpu,却永远是No.1 。
No... 我们现在的工作就是最外包,和intel一样啊,专门作一个行业的事,了解业务,写代码。因为是给大行业做系统,公司的产品还算能够满足客户的需求,所以还算有一席之地。

4。所以,软件行业很复杂,有和硬件行业一致的地方,就是必须要专业; 也有相反的地方,系统集成也可以赚¥。没有任何一家公司能够承诺开发的系统应对所有的行业,因为不同的行业系统有不同的背景。
企业ERP,比较容易使用新的技术,因为中国的企业系统集成起步比较晚,系统的投入阻力小;银行系统,就不一样了,银行系统化比较早,因为有的是$啊;) 而且银行比较保守,视数据比任何都重要。所以系统的设计都是针对数据的。。。 哎,现在就是因为这个感觉,回到数据时代,原始编程时代。

补充下网银的东西,00年初的网银都是独立的系统,现在当然都充当一个渠道而已了,类似柜台,注重的是客户体验,web2.0的技术用的多起来了。比比几个银行的网银,ccb的体验还不错,虽然安全比较乱;广发的页面响应速度的太差了,这个与技术有关;招行的安全据说是比较好的,因为使用定制的Browser,版本颇多,定位也不错。

5。 为什么说银行的开发比较让人感觉乏味? 拿我现在的网银项目来说,因为此网银之前采用ejb2的模式,当业务不断变化时,ejb2被证明是不成熟的选择。 现在网银使用WSBCC交易模型组件,有些大材小用;) 因为WSBCC定位在渠道整合系统。结合轻量级的Javabean实现业务逻辑,现在仿佛一切都不错,只是系统的并发度超过50就死机, 提一下系统部署: 两个F5, 8个Bea Web Server。

6。 问题是,大概ejb2的思想根深蒂固>) 我们现在的编码是用OOP写面向过程的代码。
看看3000行以上的业务JavaBean,到处都是sql,if-else. 看到这样的代码,浑身抽搐。。。让我怎么维护? 怎么添加新的业务? 只好接着 if-else了。。。 哎,回到了石器时代。

我们使用的是java来做网银web开发, 如果不能善用java的OOP特性,有何意义? 当然我们的WSBCC平台是不错的OO框架,可惜被我们用来写类C代码。 再次感觉到这是ejb2.0带来的恶果。当然开发人员的水平也是有问题的,特别是设计人员的原因, 他们设计时就盯着数据库里的数据表,和表中的字段。 业务域对象也是被写成DTO,只有状态,没有行为的POJO而已。

没有合理的业务域对象,当然更不能妄想使用ORM了。难道网银就不能使用ORM么? 没有成功案例么?

7。 幸好自己在不断的学习。 DDD,Design Pattern ,POJO ,Lightweight Framework,TDD,XP,SOA。 都是我比较拥护的开发方式,也是我不断学习的方向。真怕在这个项目的继续开发中迷失了方向,,,, 事在人为。

8。 J2EE最佳最新实践是POJO,DDD. 我未能遇到这样的项目,所以失望。而未来这些都是必须的技能,我的未来岂不堪忧?

9。 最关键的是,待遇难得涨,虽然GDP年年+12%,可是我们的工资---

-------- 很明显,我是在炫耀自己 要 谦虚。--------

看看自己的忧虑

就是对自己作技术的前途的担忧。
1。 是否一定要跟进,使用新的技术?
2。 只会技术的你,永远只是一个code...

3。 要对一个行业的技术精通,必须深刻了解行业的业务,才能作出合适的技术选择。这就是一个code永远做不到的。 一个code只会抱怨技术不够新,不够先进。

4。 所以,你要学习行业知识,了解业务规则。当然前提是技术过关,如WSBCC平台的精髓。。

呵呵 , 很久没写了,写出来爽快很多。
新的目标,新的任务。

to gltbeyond:

看你写了这么多,涉及到好多个方面,有很多的困惑。帮你理一下思路。

1. 对自己技术前途的担忧。

所有的行业,不单是IT行业,不单是做技术的,都有这个问题,在这个变化很快,竞争激烈的环境下,每一个职业都有这个问题,不进则退,很快有更年轻的、效率更高的年轻人赶上来。

但是在IT行业做技术,毫无疑问是一个有前途的行业,对应用软件的开发需求会越来越多,而不是越来越少。

所以不要担心这个职业的前途,但是要注意自己在这个职业上的前途。

2. 是否需要学习业务知识

看你在什么行业工作,如果你在银行领域工作,那么行业知识无疑是非常重要的,但是你也可以到SUN、IBM这样的公司,那么没有很深的行业知识(有当然更好)你也能够做的很好。

3. 技术学习的问题

技术学习无疑很重要,但是由于每个人的时间有限,所以如何学习显得更为重要。一般来说,你需要学习的是每个新技术背后的为什么,而不是该技术是什么。你可以在你要真正可能用到它的时候才去学该技术是什么。这样的话,你就不会对新出来的各种技术感到茫然,不知所措了。

4. 给你的建议

对这个行业有信心,对自己有信心,保持好的心态,学会使用正确的方法。

12132