看见这篇知乎,突然像看见了大方向一样,虽然作者也仅有7年的经验
不过好歹比我乱打乱撞的强
下个月开始可能要做设计了
继续挖坑
http://www.zhihu.com/question/20905856
如果想在金融软件(银行软件)这方面长期发展,发展到后期是需要金融业务知识多些还是计算机技术多些?
发展到后期,这个要命了,我自己都没发展到后期。
集合自身说说吧。
银行软件很多很杂,通常是一个或几个核心系统(core banking一个,card一个)带着无数所谓外围系统(各种报表,各种财务,各种风险,各种反欺诈,各种信用评级,各种反洗钱,各种数据仓库等等子系统)。
我是做核心系统的,就拿我自己毕业以后来说吧,一开始的3年是闷头coding。
其中第一年是看到leader给的TS就扣,一扣就是15个国家的程序一起改,把TS中的需求插进这15个国家的代码中(TS中一般是伪代码,并且告诉你需要改的程序名,如果程序很大甚至告诉你需要改的段落)。改完调试,测通以后给出before和after的test result。这个过程中需要搭模拟环境,造case,处理error等等,不断吸取经验教训,提升自身等级。
第二年开始做24*7的生产维护,TS还是照给,代码还是照扣,额外增加不定时的call,比如深夜2点某critical job abend了,操作员把你从被窝拉出来,问你该咋办,不跑完明天某国银行开不了门。你看情况看下是否能绕过,不能的话就要临时改代码(如果是代码逻辑问题的话),然后roll back数据,把改完的程序重跑(通常是由其他人改了某段代码引起的,用回以前逻辑一般都能解决),然后再issue log上面记上一笔,明天告状。万一悲催的找不到问题原因,并且耗时超过30分钟,你就必须把你老板从被窝里面拉出来,告诉他情况,看他有没有啥办法,层层上报直到CEO(基本没发生过)。
通过这两年地狱式coding,基本上你看一眼代码和程序所在位置,就能大致估出来这个东东是在干嘛了,第三年你拿到TS后,可以跟你老板要一下FS看看了。一般FS是把用户原始需求转化的第一层,你可以看看用户为啥要有这个要求,要达成什么目的,一般这些就是所谓的业务知识。然后你可以对TS发表一些看法,比如在两条大路通罗马的情况下为啥走这条不走那条之类,多和leader讨论讨论。
第四年我转到另一个核心系统,卡系统开始重新学习,因为有以前的经验,第一年基本把我上述3年的东西全部掌握,开始通读一些卡系统最核心的代码,通常最核心代码是常年没人动的,因为这些是属于最基本功能,不会减也不会改变,而且长的令人发指,调试极具难度。
第五年,当你读完最核心的那些代码,你的眼光可以放到interface上,也就是核心系统和其他外围系统的交换文件上,基本上你也能知道为什么某个文件需要有某个field,某个field为什么是必须而有些field是可选。Interface了解完,顺杆子网外围系统走,看看界面,看看出错反应等等,继续积累技术知识,当然这个需要机遇。
第六年,基本上应该能做上项目经理的位子了,当然是偏向技术的项目经理,不管预算。多接触用户,明白他们想要什么就成了你的当务之急,由于你有深厚的技术积累,你很容易知道某个业务需求该通过何种方式来满足。同时你要大量关注政策,因为绝大部分业务需求是来自政策变化。多和产品经理聊聊,问问看他们销售的难度在哪,从中发掘系统的改善点。多和风控聊聊,看下他们顾虑是什么,监管部门的要求是什么,防止在给出解决方案的同时,增加了风险。多和操作员用户聊聊,看下平时他们大量时间花在哪里了,是否是机械式的工作,能否用程序帮他们减少人工干预。
基本上就这些。。。。我自己还在第七年中。。。。。
Android游戏与应用开发
| 知识点 | 目标 |
| 应用开发部分 | |
| Android 基础入门 | 熟练Android平台搭建、熟练使用Android创建命令工具、编写第一个Android应用程序 |
| Android 用户界面 | 熟练Android创建UI组件的应用、能够使用创建UI组件设计实际项目UI、熟练高级UI的使用,例如,MapView、WebView、Gallery、GridView等 |
| Android 基本组件(Activity、Intent、Service、BroadCastReceiver、ContentProvider) | 深刻理解Android应用程序的设计思想、熟练Android平台的四大组件Activity、Service、BroadcastReceiver、ContentProvider的使用 能够使用通知、Alarm等实现备忘录等真实项目 |
| Android 数据存储 | 熟练Android平台的数据存储、熟练使用Sqlite数据库实现CRUD操作 熟练Android文件系统的操作 |
| 多媒体 | 熟练使用Android 平台的多媒体的使用,播放音频、视频、操作图片 |
| 互联网应用 | 熟练Android平台的网络编程接口、熟练Sock、URL、ApacheClient的各种使用方法 |
| GPS定位应用 | 熟练Android平台的定位API、能够使用这些API实现定位、跟踪、查找等功能
|
| Android多线程 | 熟练Android平台的多线程处理方法、熟练使用Android平台的消息处理机制 |
| Android 应用项目 | 学习版本控制工具、熟练团队开发流程 |
| 游戏开发部分 | |
| 图形图像 | 熟练Android平台的图形图像处理API、能够使用这些API绘制图形、动画等 |
| View、SurfaceView | 熟练View、SurfaceView、自定义视图 |
| Android 平台下的传感器 | 能够使用Android 平台API实现感应操作 |
| 游戏中的物理和数学 | Android 平台的物理特性实现 |
| OpenGL ES初级 | 熟练OpenGL ES的常见API的使用 |
| OpenGL进阶 | 能够使用OpenGL ES API实现一些特效 |
| 游戏引擎初步 | 熟练游戏引擎基础框架 |
| 游戏引擎音效模块 | 熟练游戏引擎音效部分实现 |
| 游戏引擎实体模块 | 熟练游戏引擎粒子系统实现 |
| 游戏引擎OpenGL 模块 | 熟练游戏引擎OpenGL ES 3D部分实现 |
| Android 游戏项目 | 使用游戏引擎编写游戏 |
1143

被折叠的 条评论
为什么被折叠?



