码农请进,谁遇到过这种情况?
本帖最后由 Sternzeichen 于 2014-2-5 21:05 编辑本人码农一枚,刚工作不久,最近遇到一个难题,想请教下大家怎么解决。
本人是informatik专业毕业的,读的是纯info不是 wi-info. 现在在一家公司做银行方面的软件,问题是:
工作虽然是编程写代码,但商业逻辑十分复杂,而且都是经济方面的知识和概念,编程倒成了次要的了,本人虽然刚工作不久,但从开始工作到现在下班以后从来没有看过专业书,也就是说本人掌握的informatik知识完全可以应付工作,因为该系统不需要非常前卫的技术,只需要如java SE,oracle 之类的基础知识即可,关键难在商业逻辑上,该系统十分复杂,类超过50000个,代码总量几十万以上,但坑爹的是该系统没有任何文档和说明,只有一些银行的规格说明书,本人每天工作进行不下去并不是因为编程问题,而是业务逻辑搞不清楚,不知道代码该写到哪儿,如果知道正确的地方,往往马上就可以开发完成,本人感觉现在根本不是程序员了,而是BWLer,而本人之前一点经济课程都没学过,真是苦不堪言。
本人想问下各位码农,你们也遇到过这种情况吗?这种商业逻辑成为工作中的最大难点,而info技术放在一边的情况吗?本人现在时常疑惑,自己到底是学info的,还是学BWL的!
想问下各位码农,大家平时工作都是以啃业务逻辑为主,还是以做info技术为主?
还有对于码农来说,是做纯技术一点的工作更好呢,还是这种商业逻辑为主,info技术次要的工作好?
谢谢前辈们指点!
本帖最后由 chinapope 于 2014-2-5 21:12 编辑
逻辑上抽象,结构上分层分模块
这种系统级的设计文档必须得有,除非这代码库是从别处偷来的。
我估计你的工作也只需要改部分代码,把相关上下层搞清楚就可以。
不用疑惑,工作需要,学习新知识,多问多沟通。 我靠, 真的假的,银行系统 没java doc? 敢问那家银行? 绝大多数informatiker(码农)的日常工作都要涉及点业务知识,可能在研究所的同学,或者那些在大公司里不接触一线产品的神级人物会多些理论研究。
非常同情楼主接手“三无”代码,除了自己一点点啃,没别的好办法,放轻松心情,各个击破吧,就是一工作,关键是别把自己搞“抑郁”了就行。 @Deutschland 发表于 2014-2-5 21:20
我靠, 真的假的,银行系统 没java doc? 敢问那家银行?
java doc 也没有,但我说的是 商业逻辑的 说明文档,例如这个类实现的业务功能,目的,原因?
当然也包括一些技术文档,比如这个业务功能技术上大概是怎么实现的,这个模块是做什么的等等,结果什么都没有,一点都没有! Sternzeichen 发表于 2014-2-5 21:40
java doc 也没有,但我说的是 商业逻辑的 说明文档,例如这个类实现的业务功能,目的,原因?
当然也 ...
好的代码,本身就是文档,当然,如果能有what, how, why,那算是锦上添花。 本帖最后由 Sternzeichen 于 2014-2-5 22:01 编辑
tkkk3 发表于 2014-2-5 21:40
绝大多数informatiker(码农)的日常工作都要涉及点业务知识,可能在研究所的同学,或者那些在大公司里不接 ...
谢谢安慰,不过自己啃的可能性不大,代码都可以看得懂,就是目的是什么,干什么用的,因为商业逻辑不懂,根本搞不懂,这个最愁人了。
问问上级该怎么办,上级说只能靠大家在一起探讨,他们平时也是通过互相讨论来开发的,没有物质性文档,只能靠程序员经验积累,所有的东西都记在脑子里了,去问问老人吧,可惜同办公室的同事都不怎么友好,不愿意告诉本人,所以唯一的一条渠道也被堵死了,当然也可以理解,1. 平时都有自己的活都很忙,人家没义务教你 2. 同事之间是竞争关系,人家不愿意无偿把自己的经验传授给你,3.这几个同事本身也不是nett的人,对外国人也无好感
所以挺悲剧的,大家还有谁也遇到过类似情况,怎么解决比较好呢? tkkk3 发表于 2014-2-5 21:44
好的代码,本身就是文档,当然,如果能有what, how, why,那算是锦上添花。
代码看起来没问题,都能看懂的,关键是它代表的商业逻辑非常专业,真的不是简单的从代码上就可以看出来的,不像一些简单的系统,或者常见的业务系统,从代码上能差不多能理解商业逻辑了,它们这个是银行的业务,非常非常spezial那种,其实就算有说明书都不一定看得懂,例如一些概念value date, due date 这些概念,非经济专业的很难理解. 本帖最后由 Sternzeichen 于 2014-2-5 21:58 编辑
chinapope 发表于 2014-2-5 21:11
逻辑上抽象,结构上分层分模块
这种系统级的设计文档必须得有,除非这代码库是从别处偷来的。
是改部分代码,但根本不是上下层那么简单,弄不懂逻辑根本不知道该在哪里该,该往哪里写,而且需要非常精确,一点错误都可能使结果不对,客户就要返工重做,甚至连测试部门那里都通过不了