What jobs should I look for before pursuing MFE?

  • Thread starter Thread starter hnsc
  • Start date Start date
Joined
3/25/12
Messages
12
Points
11
I'm a CS undergrad who will be graduating in Spring 2013. I will be interning Chicago over the summer, but it's not at a financial company. I would like to pursue an MFE to break into finance a few years later, but I want to gain some experience BEFORE I enroll.

What kind of jobs should I apply for? My internship will be in Java web services development, but I'm willing to switch over to any other technology stack as long as it will look favorable to employers once I enroll in an MFE program.

*I know 'learning to code' in general is far more important than targeting a particular technology stack, but I'd like my real-world experience to be as relevant as possible to quant finance.

===== A little about me ====

I've been pulling up my GPA, so by the time it's my final semester in college, I'll have a 3.5x/4.00 GPA and a 3.8x/4.00 CS GPA. "Descent" interviewing and networking skills.
 
why not take a finance course or two next year, start running your own brokerage account (paper is fine if you don't have the money), and writing up weekly macro newsletters/stock pitches? then you can potentially target entry level roles in chicago prop shops instead of continuing along the programming track with little to no knowledge of the financial markets.
 
Thank you mfegrad for your reply. I think that is a fantastic idea - most ideal, that is.

Would you say that starting projects related to finance (i.e. demo trading platform with real-time stock api, web application for pitching stocks, etc.) would be beneficial as well? Or do you think that these prop shops are more concerned with entry level workers having actual domain knowledge (finance)?

*I have two chief concerns about applying to prop shops:

-My quantitative skills are not the strongest - I will only have Calculus I, II, III, and Linear Algebra by the time I graduate. I can't fit other courses into my schedule.
-Prop shops in Chicago (i.e. Spot, Jump, etc.) seem to recruit at top schools. I attend a non-target school, and OUTSIDE of the state of Illinois. So I'm not sure if they'd even want to have anything to do with me.
 
Would you say that starting projects related to finance (i.e. demo trading platform with real-time stock api, web application for pitching stocks, etc.) would be beneficial as well? Or do you think that these prop shops are more concerned with entry level workers having actual domain knowledge (finance)?

nope, those would be fine, as well. it's too both show that your interest is real and inform you about financial markets.

*I have two chief concerns about applying to prop shops:

-My quantitative skills are not the strongest - I will only have Calculus I, II, III, and Linear Algebra by the time I graduate. I can't fit other courses into my schedule.
-Prop shops in Chicago (i.e. Spot, Jump, etc.) seem to recruit at top schools. I attend a non-target school, and OUTSIDE of the state of Illinois. So I'm not sure if they'd even want to have anything to do with me.

even more reason to find a way to stand out. :) start going to your career services office now. look up some alumni from your school at firms in chicago and see if they'll take time to speak with you when you're there this summer. you can learn the math; you can't learn genuine enthusiasm.
 
Aside from jobs that are directly related to finance, what "type" of programming is generally more useful in a quant finance setting? I could see CSS and Javascript being almost useless. But how would web app development jobs be viewed?
 
It depends on what you want to do after your MFE. All reputable MFEs come with C++/R/SQL in stock, and those are usually targeted for front office desk jobs. Java (enterprise software) and Linux will open doors to more developer roles (and pay higher...)

C++: A common suggestion here on QuantNet. It's the legacy language of finance and has a huuuuuuge library of code (the popular QuantLib was written in C++/Boost library, so was the free FIX engine QuickFIX). The flexibility and efficiency make C++ a popular choice especially for heavy duty calculations such as pricing and simulations. It is the standard MFE language (and if your program doesn't drill that into you hard enough, DominiConnor will give you a piece of his mind soon).

R/S+/Minitab/SAS/Matlab/Octave: These statistical packages are generally required for data analysis. R is a popular FREE package, but SAS seems to be acceptable to UC Berkeley as well. SAS has a very well-structured certification curriculum. For R in finance, check out "Statistical and Data Analysis for Financial Engineering" by professor Ruppert from Cornell's FE program.

SQL: .... duh?

Java/C#: MFEs usually don't teach them, but I've seen quite a number of job postings looking for these. Their support for multithreading make them popular for firms looking to develop automated trading systems. I personally have used some automated trading platforms in C# (OpenQuant, TradeLink) and they aren't bad.

Python/Perl: Sell-side usually seems to stick with C++ or C#, but I've seen buy-side asking for all sorts of languages. At my old firm, developers are also traders who basically build their own systems, and scripting languages are very handy.

Linux: As a CS major, you probably have already used it. But for those who haven't, I recommend starting with Macbook's command line before switching to full-blown Linux. My dad was a sadist and started me with slackware, but you should probably try more popular variances such as Fedora or Suse or whichever other QuantNet members recommend.

The nature of FE's work revolves around data manipulation and calculation, so they generally don't do websites. With that said, you can still make a quite compelling case if you're responsible for the backend of a high traffic website such algorithm optimization, multithreading, and load-balancing. A few firms on the street have very very strong tech focus including Jane Street, Two Sigma, and BlackRock (they license an analytics web application to non-BlackRock users). Personally, I think any form of software development would give you an edge over most MFEs cuz... a lot of them aren't very good at it :p
 
API for what? For connecting to broker, you basically have to use whatever the brokers supports. Interactive Broker supports C++ and a number of other popular languages. However, they are definitely not for beginners. (C++ really isn't a beginner language... high schools don't even teach it anymore :cry:)

I generally divide trading platforms into tick-based and non-tick-based systems. For non-tick-based systems, the lowest resolution is generally one min (I think ninjatrader has 1 sec). Your price signal is synchronous, so all your price signals have been preprocessed to open, highest, lowest, and close (for each bar). You can also add some variety through strategic use of limit orders. These are suitable for beginners with technical analysis-based strategies. Popular platforms include metatrader, thinkorswim, and ninjatrader. These platforms usually have their own languages for algorithm scripting, and they are great for strategy prototyping.

For tick-based systems, your input are now asynchronous aka "event-driven". You basically have to write methods for every event / change to the book (hit bid price, last trade size > 5000, etc), so you need a solid grasp of algorithm efficiency and object oriented programming. I only used C# before, but I've seen people building their systems in Python, Perl, and C++ (I've heard people trading in R somewhere, but I'm not sure). Tick-based strategies can become quite complex (and dangerous), so I don't recommend them to beginners. I actually know a buddy who went bust (and subsequently in debt) because his program was not thread-safe even when his strategy was profitable. So yeah... trade with extreme caution
 
Thanks a lot for your input bullion. I guess if I really can't find a job in a financial setting, I'd have to search for jobs that generally revolve around writing C++ code and data manipulation.

It seems that you've had lots of experiences in developing systems for financial services - do you have any recommendations on learning how to build the trading tools that you described on your most recent post? I haven't been able to find any books, especially on C++, that introduce you to developing those type of tools.
 
hnsc,
I am in no way experienced (at least not in this forum). I'm just another MFE applicant like everyone else. But I do try to do my research and ask questions before I sink 100k for a piece of paper.

I don't know if you really need to find a job in a financial setting. A few of my friends jumped from Google / Microsoft to quant trading, and many MFE students have no financial industry experience before going into their first internships. Finance is merely one application of software development, so you should focus on writing good codes instead of working in finance. Trading firms are very happy to train good software developers into financial wizards, because good programmers are really hard to train/find/attract.

In terms of writing trading tools, pricers and monte carlo simulations are completely useless if you don't work for certain desks (how many of us ever get to trade a swap.... EVER?) They are also standardized which you can learn from Daniel Duffy's book or Mark Joshi's book. Both are highly regarded authors, and Daniel Duffy is one of the principals leading the C++ course here on QuantNet.

I've actually found surprisingly little information about building trading systems. Some recent book providing bird eye views of system architecture include Rishi Narang's "Inside the Black Box" and Ernie Chan's "Quantitative Trading." The most coding intensive books are Benjamin Vliet's "Building Automated Trading Systems" and Yogesh Shetty's "Practical .NET for Financial Markets." (Both in C++ I think) Some information may be a bit dated, but you can still gain valuable insights of the trade cycle and technical difficulties of building real-time systems.

Again, I've not developed systems for financial services before, so I merely read/study/code for my own pleasure.
 
For what its worth, there are 3 jobs in Technology at SAC Capital (a finance firm) posted on Street of Walls. Maybe take a look and see if its interesting to you.
 
Back
Top Bottom