6

在不远的将来,我计划以软件开发人员的身份为金融部门的一家公司工作。我现在有几个选择:

  1. 学习并专注于 .NET,因为(大概)它被广泛用于金融行业。

  2. 学习编程概念,学习算法,学习一点 C/C++、C#、JAVA、Objective-C、SQL、ORACLE、COBOL——换句话说,学习将所有编程语言联系在一起的基本原理,但不对任何特定语言都过于深入。

我的大学教授告诉我,作为一名程序员,大多数时候,你不会编写任何代码,而是维护人们在你编写之前的现有代码。这是否意味着我真的不需要掌握任何特定的编程语言,只要我有一般的软件开发概念就足够了?

如果您或您认识的人曾在金融行业担任软件开发人员,您能否分享一下经验以及日常工作是怎样的?还有,当我还年轻还在上大学的时候,我现在应该学习什么?我必须彻底了解市场和当前经济吗?Oracle 或 SQL 数据库怎么样?作为程序员,我需要完全了解它们吗?谢谢,如果您还有什么要补充的,我在这里没有提到,那么请这样做!

再次感谢大家。你的回答真的帮助了我。我什至不知道该选谁作为正确答案,因为这里的每个人都提供了非常好的反馈。

4

4 回答 4

9

我在金融行业工作了几年。我与一位数学家合作,他会开发买卖金融工具的理论和策略,我会将他的理论放入软件中进行测试。但是,我要建议的不仅限于金融行业。以下只是我的看法。我从事软件开发工作大约 22 年,几乎完成了与软件相关的所有工作。

1) 如果您对商业/金融软件开发人员的职业感兴趣,我不会花两秒钟时间来研究 C/C++。虽然这些语言仍在使用,但学习 .NET(或 Java)会更好。我为 2.5B 美元的太阳能制造商工作,我们是 95% 的 .NET/C#。学习 OO 原则是关键,学习软件开发的最佳实践。

2) 学习扎实的数据库基础知识。我不确定您学习 Oracle 还是 SQL Server 是否重要,但学习其中之一。了解数据库规范化、外键、参照完整性、查询优化等。

3) 熟悉版本控制系统,例如 TFS。您使用的大多数代码都将处于某种源代码控制中。学习分支/合并的来龙去脉。这个非常重要。

4) 仅仅技术好是不够的。如果您对您正在开发的行业有充分的了解,您会给自己带来巨大的优势。例如,当我开发金融软件时,我拥有金融专业的 MBA 学位。这给了我很大的鼓舞。如果您对他们所从事的业务有深入的了解,那么您对公司的价值就会大得多。

5) 不要停止学习。与其下班回家看电视,不如拿起一本关于 LINQ (.NET) 或 SQL Server 或 OO 设计或...

于 2010-05-31T14:51:00.577 回答
3

我已经在金融行业工作了 3 年多了。

我的日常生活从去厨房寻找咖啡因开始。我相信这在其他行业也是类似的。

但是,我离题了...

根据项目的当前状态,我大约 20-40% 的时间将用于编码。有很多维护工作要做,或者努力为现有代码添加更多功能。其他时间花在会议、估算、规格和员工培训上。

我通常致力于我们正在实施的新系统的架构,但当更改失败时,我会参与维护工作。

如果你打算在金融市场工作,一些数学会对你有所帮助。有些工作只需要能够理解复合利率,而另一些工作,例如量化工作,可能需要更深入的了解。

如果您擅长的话,还有第三种选择可以支付相当不错的费用。这就是棕地开发。如果您可以自学如何将新系统与常见的遗留(或被视为遗留)系统集成,那么您可能会很受欢迎。

至于在你还年轻还在上大学的时候要学什么,SO上有很多关于这个的好问题,答案比我能提供的要好。然而,值得注意的是,你在大学里所教的只是你真正成功所需的一小部分。此外,请关注工作职位以了解市场如何变化并尝试预测。如果你在大学期间能在公司实习或参加一些假期演出,那也会给你很大的推动力。

于 2010-05-31T14:56:11.070 回答
1

从选项 2 开始。获得广泛的知识和理解。但是不要停止使用 c、c++、c#、java、object-c、sql、oracle、cobol ......做一些其他的事情。为应用商店创建应用,并了解如何营销、如何与用户打交道、了解用户想要/需要什么。学习如何做一些图形工作,了解可用性等......

有多少 .NET 开发人员正在寻找金融行业(或任何其他行业)的工作?你将如何区分自己?

我强烈推荐 Dan Pink 的书《全新的思想

于 2010-05-31T14:50:17.683 回答
1

除了你得到的其他好建议之外,我建议你学习:

  1. 金融数学;
  2. 适合在代码中实现金融数学的数值方法;
  3. Matlab 或 R 或​​ Mathematica 或 Maple 或类似的。

尤其是 1 和 2,将帮助您在未来证明您的技能组合能够抵御编程语言中的时尚和时尚。

最后,不要假设您的目标部门使用了技术 X,找出使用了哪些技术。

于 2010-05-31T15:00:17.283 回答