• Log InLog In
  • Register
Liquid`
Team Liquid Liquipedia
EDT 17:08
CEST 23:08
KST 06:08
  • Home
  • Forum
  • Calendar
  • Streams
  • Liquipedia
  • Features
  • Store
  • EPT
  • TL+
  • StarCraft 2
  • Brood War
  • Smash
  • Heroes
  • Counter-Strike
  • Overwatch
  • Liquibet
  • Fantasy StarCraft
  • TLPD
  • StarCraft 2
  • Brood War
  • Blogs
Forum Sidebar
Events/Features
News
Featured News
RSL Season 1 - Final Week6[ASL19] Finals Recap: Standing Tall15HomeStory Cup 27 - Info & Preview18Classic wins Code S Season 2 (2025)16Code S RO4 & Finals Preview: herO, Rogue, Classic, GuMiho0
Community News
Esports World Cup 2025 - Brackets Revealed14Weekly Cups (July 7-13): Classic continues to roll8Team TLMC #5 - Submission extension3Firefly given lifetime ban by ESIC following match-fixing investigation17$25,000 Streamerzone StarCraft Pro Series announced7
StarCraft 2
General
RSL Revival patreon money discussion thread Who will win EWC 2025? The GOAT ranking of GOAT rankings Server Blocker Weekly Cups (July 7-13): Classic continues to roll
Tourneys
FEL Cracov 2025 (July 27) - $8000 live event Sparkling Tuna Cup - Weekly Open Tournament Sea Duckling Open (Global, Bronze-Diamond) RSL: Revival, a new crowdfunded tournament series $5,100+ SEL Season 2 Championship (SC: Evo)
Strategy
How did i lose this ZvP, whats the proper response
Custom Maps
External Content
Mutation # 482 Wheel of Misfortune Mutation # 481 Fear and Lava Mutation # 480 Moths to the Flame Mutation # 479 Worn Out Welcome
Brood War
General
Flash Announces (and Retracts) Hiatus From ASL BGH Auto Balance -> http://bghmmr.eu/ BW General Discussion Soulkey Muta Micro Map? [ASL19] Finals Recap: Standing Tall
Tourneys
Starcraft Superstars Winner/Replays [Megathread] Daily Proleagues Cosmonarchy Pro Showmatches CSL Xiamen International Invitational
Strategy
Simple Questions, Simple Answers I am doing this better than progamers do.
Other Games
General Games
Stormgate/Frost Giant Megathread Path of Exile Nintendo Switch Thread CCLP - Command & Conquer League Project The PlayStation 5
Dota 2
Official 'what is Dota anymore' discussion
League of Legends
Heroes of the Storm
Simple Questions, Simple Answers Heroes of the Storm 2.0
Hearthstone
Heroes of StarCraft mini-set
TL Mafia
TL Mafia Community Thread Vanilla Mini Mafia
Community
General
US Politics Mega-thread We are Ready to Testify: Emergence Things Aren’t Peaceful in Palestine Russo-Ukrainian War Thread Stop Killing Games - European Citizens Initiative
Fan Clubs
SKT1 Classic Fan Club! Maru Fan Club
Media & Entertainment
Movie Discussion! Korean Music Discussion [Manga] One Piece Anime Discussion Thread [\m/] Heavy Metal Thread
Sports
2024 - 2025 Football Thread Formula 1 Discussion TeamLiquid Health and Fitness Initiative For 2023 NBA General Discussion NHL Playoffs 2024
World Cup 2022
Tech Support
Computer Build, Upgrade & Buying Resource Thread
TL Community
The Automated Ban List
Blogs
Ping To Win? Pings And Their…
TrAiDoS
momentary artworks from des…
tankgirl
from making sc maps to makin…
Husyelt
StarCraft improvement
iopq
Customize Sidebar...

Website Feedback

Closed Threads



Active: 624 users

Coding. In finance?

Blogs > Vinnesta
Post a Reply
Vinnesta
Profile Blog Joined April 2010
Singapore285 Posts
February 13 2011 15:01 GMT
#1
I'm thinking of picking up programming again as a hobby, and potentially as an additional skill on my CV. I've done basic C++ before, and dabbled into introductory Java, Delphi, VB and Actionscript. I'm more interested in learning SQL or something similarly "practical" for a job that is not PURE programming (eg. manipulating databases like Oracle).

The thing is, I cannot motivate myself to code without some goal or end product in mind, but I do not have the skills to apply for a job or what-not. I've heard of websites that provide puzzles and they seem pretty interesting, though advanced. I have decently good maths knowledge (university year 1 + abstract maths), so my main task is to learn syntax and how everything works. What can my fellow programmers recommend?

Also, majoring in Economics, I'm looking to go into finance when I graduate. My dream job is to be a financial analyst at Google, which requires good coding knowledge. However, I'm not sure other jobs in finance will require as much aptitude in coding. I wouldn't want to spend too much time learning code if it is not in demand, so can anyone provide some insight into this?

Same difference is not an oxymoron!
Cambium
Profile Blog Joined June 2004
United States16368 Posts
February 13 2011 15:15 GMT
#2
It depends on what type of work you want to do in finance.

You can
a) Be part of the front office (e.g. traders, sales): then all you to know in terms of programming is very basic. They would mostly use VBA, and perhaps a little bit of scripting language (python or perl) to automate some of the mundane tasks.

b) Be part of the back office: this is really the bread and butter of modern finance, you actualize complex models into banking applications used by the front office. Again, depending on what you want to do, you would need deep knowledge of various programming languages (C++, Java and C# are all used). Obviously, you would need a good practical experience with DBMS's.

A good website that provides excellent programming/maths puzzles is project Euler: http://projecteuler.net/

Also, just FYI, financial analyst at Google does not require good coding knowledge, it requires good quantitative analytic abilities.
When you want something, all the universe conspires in helping you to achieve it.
Commodore
Profile Joined January 2008
United States97 Posts
Last Edited: 2011-02-13 15:32:14
February 13 2011 15:30 GMT
#3
On February 14 2011 00:01 Vinnesta wrote:
I have decently good maths knowledge (university year 1 + abstract maths)

This is very vague. I take it "university year 1" is single variable calculus, but what do you mean by "abstract maths?" A semester of linear algebra? There's a lot of "abstract math" out there.
Vinnesta
Profile Blog Joined April 2010
Singapore285 Posts
Last Edited: 2011-02-13 16:14:47
February 13 2011 16:01 GMT
#4
On February 14 2011 00:30 Commodore wrote:
Show nested quote +
On February 14 2011 00:01 Vinnesta wrote:
I have decently good maths knowledge (university year 1 + abstract maths)

This is very vague. I take it "university year 1" is single variable calculus, but what do you mean by "abstract maths?" A semester of linear algebra? There's a lot of "abstract math" out there.


I stated that to point out that maths wouldn't be a barrier to picking up coding. Since I take a BSc., this is what we learn:

Multi-variable calculus: scalar and vector-valued functions - derivatives, stationary points and Lagrange's method, etc.

Linear algebra: matrices, vector spaces - manipulating basis, linear transformation, etc.

Abstract maths: construction of integers, rational and complex numbers from equivalence relations, modular arithmetic, sequences and limits (with continuity), and groups (algebra).

The abstract maths we learn is the "pure" form of mathematics, eg. the definition of continuity of a function at c within an interval I is: for all ε > 0, there exist a δ >0 such that for all x ∈ I satisfying |x - c| < δ, |f(x) - f(c)| < ε. I believe it really helps in programming since it is so fundamental and technical.

On February 14 2011 00:15 Cambium wrote:
A good website that provides excellent programming/maths puzzles is project Euler: http://projecteuler.net/


Thanks for the link! I'll be spending some time working on those problems, there goes my sleep tonight...

After researching a bit more, I'm deciding between using MATLAB, R or Mathematica for programming. Matlab is obviously well recognised, but the software costs a fair amount for a student. R is more up-and-coming and was recommended by my statistics professor, and well its free! Any comments on these or similar environments?
Same difference is not an oxymoron!
Commodore
Profile Joined January 2008
United States97 Posts
Last Edited: 2011-02-13 16:22:07
February 13 2011 16:15 GMT
#5
Your pure math looks pretty solid. I'm surprised that you've seen so much as an economics major. In applications, the study of differential equations and approximating them is important. I recommend, for example, reading a proof of the fact that Euler's method for approximating an ODE converges O(h) where h is the step size.

Octave is a free program that accepts almost exactly the same commands as Matlab. I recommend trying it out if you want to learn but not buy Matlab.

It is possible that your university lets you access Matlab from home via SSH. This is how I use Matlab at home.
peidongyang
Profile Joined January 2009
Canada2084 Posts
February 13 2011 16:22 GMT
#6
http://en.wikipedia.org/wiki/Financial_engineering

and

http://en.wikipedia.org/wiki/Computational_finance

Most people use Matlab and to a limited extent maple for this kind of stuff.
the throws never bothered me anyway
Cloud
Profile Blog Joined November 2004
Sexico5880 Posts
February 13 2011 16:23 GMT
#7
You don't need math at all except for like, boolean algebra. Programming will allow you to think mathematically without the need to use numbers or calculus or whatever. The best (only) way to learn how to program is to program yourself, and probably the best way is to participate in open source projects. freshmeat.net is a good site to find some.

As far as I know, at least in my area, job descriptions for majors like yours, demand the use of certain software packages. These software packages may have a programming language as an extension but programming knowledge is rarely necessary. Now google may require high coding knowledge because they have a penchant for hiring (software) engineers to do everything, not just coding.
BlueLaguna on West, msg for game.
Vinnesta
Profile Blog Joined April 2010
Singapore285 Posts
February 13 2011 16:26 GMT
#8
On February 14 2011 01:15 Commodore wrote:
Your pure math looks pretty solid. I'm surprised that you've seen so much as an economics major. In applications, the study of differential equations and approximating them is important. I recommend, for example, reading a proof of the fact that Euler's method for approximating an ODE converges O(h) where h is the step size.

Octave is a free program that accepts almost exactly the same commands as Matlab. I recommend trying it out if you want to learn but not buy Matlab.


I was crazy to take on abstract maths as an outside option, when there were modules with much less work heh. In most (UK) universities, maths is far more important in economics than it has ever been, thus the heavy load of maths in year 1.

Is there a good GUI for Octave? Maybe it's cause I'm a pampered young coder, but I dislike running programs in terminal :p
Same difference is not an oxymoron!
cskalias.pbe
Profile Joined April 2010
United States293 Posts
February 13 2011 16:36 GMT
#9
I work in finance and agree with Cambium. the demand for skilled programmers in both front and back office is huge. especially for coding trading algorithms, the compensation can be quite extraordinary.

That said,the requirements to get a job programming in finance tend to be quite high. it's difficult to be "dabbling" in coding and expect to be working on cutting edge financial programming projects.
Vinnesta
Profile Blog Joined April 2010
Singapore285 Posts
February 13 2011 16:42 GMT
#10
On February 14 2011 01:36 cskalias.pbe wrote:
I work in finance and agree with Cambium. the demand for skilled programmers in both front and back office is huge. especially for coding trading algorithms, the compensation can be quite extraordinary.

That said,the requirements to get a job programming in finance tend to be quite high. it's difficult to be "dabbling" in coding and expect to be working on cutting edge financial programming projects.


What programming languages or environments do your company use? As a freshman (in the UK), I have 2 more years to pick up higher level coding before I graduate, hence this blog post! How did you originally pick up programming?
Same difference is not an oxymoron!
Cambium
Profile Blog Joined June 2004
United States16368 Posts
February 13 2011 16:54 GMT
#11
Different practice areas or even different groups will employ different technologies. It really depends on what you want to do. The general understanding I get is that the closer you want to be with time-sensitive algorithms the more C/C++ (and possibly even lower level) they demand.

To "pick up" a programming language is actually extremely difficult, but it's not impossible to do, Thinking in C++ is an extremely good book, but I don't know if it's well-suited for complete beginners:
http://www.ibiblio.org/pub/docs/books/eckel/

A lot of programming is based on experience (trial and error to a degree), and some things just need to be learned formally.
When you want something, all the universe conspires in helping you to achieve it.
Obscura.304
Profile Blog Joined September 2010
150 Posts
February 13 2011 17:04 GMT
#12
On February 14 2011 01:54 Cambium wrote:

To "pick up" a programming language is actually extremely difficult

Sorry, but this is wrong. The first programming language you learn might be hard; the second will be much easier, though, and subsequent languages will be extremely easy.

(This is coming from someone who routinely uses C, C++, Perl, Ada, FORTRAN, and x86 Assembly at his job, and also has done LISP (Scheme), Prolog, SML(NJ), Java, and Smalltalk in the past).
Cambium
Profile Blog Joined June 2004
United States16368 Posts
February 13 2011 17:09 GMT
#13
On February 14 2011 02:04 Obscura.304 wrote:
Show nested quote +
On February 14 2011 01:54 Cambium wrote:

To "pick up" a programming language is actually extremely difficult

Sorry, but this is wrong. The first programming language you learn might be hard; the second will be much easier, though, and subsequent languages will be extremely easy.

(This is coming from someone who routinely uses C, C++, Perl, Ada, FORTRAN, and x86 Assembly at his job, and also has done LISP (Scheme), Prolog, SML(NJ), Java, and Smalltalk in the past).


OP said:
I've done basic C++ before, and dabbled into introductory Java, Delphi, VB and Actionscript
When you want something, all the universe conspires in helping you to achieve it.
inkblot
Profile Joined December 2004
United States1250 Posts
February 13 2011 17:16 GMT
#14
IMO the Matlab desktop/IDE is more of a pain than an asset, the major advantage of using it is that the Matlab editor may occasionally alert you to an error. There is QtOctave for Octave, which attempts to imitate the Matlab desktop. I would use R or Python+NumPy+SciPy+matplotlib over Matlab/Octave though. The Matlab language has nice syntax for linear algebra but it is not a general purpose language by any means, and has some PITA aspects like having to create a separate file for each function. Python/NumPy do not have the nice math syntax but it is a far superior language in any other way.

Financial institutions also hire programmers who are not necessarily econ/finance people at all to write web sites, high performance (real time) trading software, etc.
Obscura.304
Profile Blog Joined September 2010
150 Posts
Last Edited: 2011-02-13 17:18:16
February 13 2011 17:17 GMT
#15
So, he's not learning his first language?

With even the tiny bit of procedural and OO experience he has, Ada, Perl, and FORTRAN should be no problem at all. Once you know how to program, learning a new syntax and set of reserved words is easy.

EDIT- got ninja'd, obviously this is in response to Cambium.
Cambium
Profile Blog Joined June 2004
United States16368 Posts
February 13 2011 17:23 GMT
#16
Unless you know one language very well, it's hard to pick up additional languages. He's essentially saying he's learning it from the beginning.

I also don't know exactly how you interpreted my definition of "pick up", what I meant was to be productive with it. If you mean to just write for-loops, yes, I agree, it would only take 5 minutes to "pick up" a language.
When you want something, all the universe conspires in helping you to achieve it.
JodoYodo
Profile Blog Joined May 2009
Canada1772 Posts
February 13 2011 17:33 GMT
#17
Well, your pure math is not exactly pure math, it's just first year math. Pure math is when you get onto things like abstract algebra, real analysis, complex analysis, etc.

You can try applying for jobs at Bloomberg; they are always looking for financial coders. They hire a lot of co-op students year-round in New York.
Dance dance dance 'till we run this town!
Obscura.304
Profile Blog Joined September 2010
150 Posts
February 13 2011 17:34 GMT
#18
On February 14 2011 02:23 Cambium wrote:
Unless you know one language very well, it's hard to pick up additional languages. He's essentially saying he's learning it from the beginning.

I also don't know exactly how you interpreted my definition of "pick up", what I meant was to be productive with it. If you mean to just write for-loops, yes, I agree, it would only take 5 minutes to "pick up" a language.

Assuming we narrow this down to procedural languages, algorithms are the same all over (aside from some strong vs. weak typing stuff which takes about an hour or two to pick up).

If you can use the syntax of a language to create the flow control structures and data structures (which should be easy to learn), you can program anything in that language that you can in any other language where you know the syntax for creating flow control and data structures.
Cambium
Profile Blog Joined June 2004
United States16368 Posts
February 13 2011 17:59 GMT
#19
On February 14 2011 02:34 Obscura.304 wrote:
Show nested quote +
On February 14 2011 02:23 Cambium wrote:
Unless you know one language very well, it's hard to pick up additional languages. He's essentially saying he's learning it from the beginning.

I also don't know exactly how you interpreted my definition of "pick up", what I meant was to be productive with it. If you mean to just write for-loops, yes, I agree, it would only take 5 minutes to "pick up" a language.

Assuming we narrow this down to procedural languages, algorithms are the same all over (aside from some strong vs. weak typing stuff which takes about an hour or two to pick up).

If you can use the syntax of a language to create the flow control structures and data structures (which should be easy to learn), you can program anything in that language that you can in any other language where you know the syntax for creating flow control and data structures.


This is going on a very far tangent already, so I'm concluding it with one final remark.

Take C++ for instance, it takes years of experience to write "bug-free" and secure code in any sizable application. Even if you are an experienced Java programmer, unless you know the fundamentals very well, you can't just pick up C++.

Also, data structures and algorithms are not easy to learn given how many there are, and knowing when to use which, again, takes a lot of practical experience. Then you factor in concepts like concurrency which is implemented differently in every language, it's not easy to just learn it from the books. Then there are a ton of language specific features/libraries that are completely insular, and the only way to learn them is through serendipitous discoveries, practice and trial and error.

My point is, self-learning a programming language from the start with very limited background (which is clear in OP's case) is a daunting task, and I am surprised and baffled that any experienced programmer (that you proclaim to be) would disagree.
When you want something, all the universe conspires in helping you to achieve it.
Cambium
Profile Blog Joined June 2004
United States16368 Posts
February 13 2011 18:07 GMT
#20
On February 14 2011 02:33 JodoYodo wrote:
Well, your pure math is not exactly pure math, it's just first year math. Pure math is when you get onto things like abstract algebra, real analysis, complex analysis, etc.

You can try applying for jobs at Bloomberg; they are always looking for financial coders. They hire a lot of co-op students year-round in New York.


Bloomberg is not exactly finance related. They service the industry by providing data, but I don't think you would ever get to touch the business side (if there is any) of things.

You are much better off doing internships with investment banks and try to do a few front office jobs (front office really sucks for interns because you are essentially their bitch during the day and they teach you a few things after the market closes) and a few back office jobs and see which one you prefer. Of course, these can be rather competitive.

You mentioned that you are from the UK, and I know for fact that almost all major banks take interns in the summer, some to consider:

GS, MS, BarCap, Barclays, UBS
When you want something, all the universe conspires in helping you to achieve it.
Please log in or register to reply.
Live Events Refresh
Next event in 12h 52m
[ Submit Event ]
Live Streams
Refresh
StarCraft 2
ZombieGrub250
Hui .198
UpATreeSC 154
Nathanias 146
JuggernautJason68
ForJumy 20
StarCraft: Brood War
Larva 941
ZZZero.O 146
scan(afreeca) 133
Aegong 84
Dota 2
syndereN817
NeuroSwarm111
League of Legends
Grubby4510
Counter-Strike
Stewie2K573
flusha486
byalli350
oskar272
Super Smash Bros
Liquid`Ken24
Heroes of the Storm
Liquid`Hasu618
Other Games
tarik_tv8612
summit1g4309
FrodaN2806
Beastyqt782
ToD296
C9.Mang0165
Skadoodle89
Trikslyr61
Sick50
PPMD36
Organizations
Other Games
gamesdonequick2658
StarCraft 2
Blizzard YouTube
StarCraft: Brood War
BSLTrovo
sctven
[ Show 18 non-featured ]
StarCraft 2
• LUISG 13
• musti20045 10
• IndyKCrew
• sooper7s
• AfreecaTV YouTube
• intothetv
• Kozan
• Migwel
• LaughNgamezSOOP
StarCraft: Brood War
• HerbMon 2
• STPLYoutube
• ZZZeroYoutube
• BSLYoutube
Dota 2
• masondota22614
• Ler77
League of Legends
• TFBlade965
Other Games
• imaqtpie2161
• Shiphtur219
Upcoming Events
CranKy Ducklings
12h 52m
Epic.LAN
14h 52m
CSO Contender
19h 52m
Sparkling Tuna Cup
1d 12h
Online Event
1d 18h
Esports World Cup
3 days
ByuN vs Astrea
Lambo vs HeRoMaRinE
Clem vs TBD
Solar vs Zoun
SHIN vs Reynor
Maru vs TriGGeR
herO vs Lancer
Cure vs ShoWTimE
Esports World Cup
4 days
Esports World Cup
5 days
Esports World Cup
6 days
Liquipedia Results

Completed

JPL Season 2
RSL Revival: Season 1
Murky Cup #2

Ongoing

BSL 2v2 Season 3
Copa Latinoamericana 4
Jiahua Invitational
BSL20 Non-Korean Championship
CSL Xiamen Invitational
CSL Xiamen Invitational: ShowMatche
Championship of Russia 2025
FISSURE Playground #1
BLAST.tv Austin Major 2025
ESL Impact League Season 7
IEM Dallas 2025
PGL Astana 2025
Asian Champions League '25

Upcoming

2025 ACS Season 2
CSLPRO Last Chance 2025
CSLPRO Chat StarLAN 3
BSL Season 21
RSL Revival: Season 2
SEL Season 2 Championship
uThermal 2v2 Main Event
FEL Cracov 2025
Esports World Cup 2025
Underdog Cup #2
ESL Pro League S22
StarSeries Fall 2025
FISSURE Playground #2
BLAST Open Fall 2025
BLAST Open Fall Qual
Esports World Cup 2025
BLAST Bounty Fall 2025
BLAST Bounty Fall Qual
IEM Cologne 2025
TLPD

1. ByuN
2. TY
3. Dark
4. Solar
5. Stats
6. Nerchio
7. sOs
8. soO
9. INnoVation
10. Elazer
1. Rain
2. Flash
3. EffOrt
4. Last
5. Bisu
6. Soulkey
7. Mini
8. Sharp
Sidebar Settings...

Advertising | Privacy Policy | Terms Of Use | Contact Us

Original banner artwork: Jim Warren
The contents of this webpage are copyright © 2025 TLnet. All Rights Reserved.