[18] 2nd in-depth job]c++ : critical-mass ] GTD


  • After Citi-muni, even though I had enough experience to pass similar job interviews, I didn’t feel confident in GTD, so I took a 2nd real time trading system job in Baml, and reached critical mass
    • I did learn more in the ensuing 3 months than I would have over another 3 months in Citi
  • RTS is similar. I could already pass real time c++ interviews, but I didn’t feel confident in GTD.

Q: How about c#? I actually feel confident about GTD in a future c# team, so I didn’t ‘need a 2nd c# job?


[19] attitude@jxee^coreJava

jxee (esp. web java) is fashionable … high growth, big job pool

  • –in terms of churn resistance and shelf life .. jxee << core java

Q: Is there some jxee component with stable demand and accu? Spring? Servlet is very relevant from 1999 to 2019 but not quizzed in IV!

  • –in terms of project LOE … core java =< jxee

Some developers are afraid of the unique challenges [1] in core java, but I’m more afraid of complexities in jxee packages esp. when combined in non-standard combinations. See my blogpost on python routine tasks and my blogpost on spring.

[1] threading, latency, collections .. but I don’t want to elaborate here.

  • –in terms of IV body building and entry barrier, jxee < core java < cpp. I struggled with cpp IV for years but was able to crack c# IV within 2 years.

Without enough evidence, I feel jxee skills are less elite, easy to self-study, and shallow until you hit project issues.

  • –In terms of salary, jxee = core java = cpp .. I was proven wrong! Even though c++ and core java IVs are arguably harder and more elitist, they don’t pay higher than jxee jobs.
  • –in terms of market depth+size, cpp < core java < jxee

core java is mostly limited to ibanks + buy-side. jxee presumably offers better market depth and breadth. Without enough evidence, I feel job pool is growing for jxee not for core java or cpp. Similarly, job pool is growing for javascript, mobile, big data, cloud..

No need to experiment at home or read books like I did on JMS, EJB, Spring. It takes too much time but doesn’t really give me …

##real reasons I didn’t take 2011 c++job]U.S.

Reason – the salary gap between my c++ offers and java offers. I think the highest c++ offer was PIMCO, around $100/hr paid to agency (Huxley?). Most of the time, the java offers paid me (significantly) more than c++.

Reason — I also felt I could fairly easily crack the typical c++ interviews from then on. Now (2017) I doubt it.

Reason — some of the c++ jobs were not so “glamorous” less trading, less mainstream. Now (2017) I don’t care so much

voluntary pay cut – often unnecessary

A few times in my career I considered to (or did) take a pay cut, mostly to break into some domain or learn something hard to acquire, things like

* quant
* C++ HFT
* dotnet
* oracle DBA
* technical pre-sales
* threading, MOM for trading engine

Each time, it’s crucial to question and be critical about the promised benefits. Most of the time, we would regret the sacrifice.

https://bintanvictor.wordpress.com/2015/11/14/c-learning-aids/ has some c++ learning aids that could possibly reduce the need for those pay-cuts

personal advantages: trying west coast

See also https://1330152open.wordpress.com/2016/06/27/stickyusa-sgp-5-advantages-each-personal-view-610/

  1. Advantage: no kids with me. Easier to adjust
  2. Advantage: no house yet. Easier to move
  3. strength: algo interviews
  4. strength: I could be good at optimizing, research, scalability — natural not artificial complexities
  5. strength: attention to details — more valued in product companies than on Wall St
  6. Advantage: web technology is probably easier than c++
  7. strength: I’m a calculated risk taker

y i like eq and drv

I like equities systems because

* volume – upstream
* latency – upstream
* algo – upstream
* connectivity – upstream
* messaging – upstream
* technology-wise, upstream to FX, rates, treasuries…

I like derivatives (esp. options) because

* math, pricing. More mature and entrenched than other derivative instruments – upstream
* m-risk. Non-derivative positions go flat soon. – upstream
* life cycle management

These are mature products and mature technical implementations. Ahead of the curve.

In contrast,

– IRS is extremely popular (even in Asia) and growing, but volume and math is “downstream”.
– CDS is low volume. Mathematically, I still feel option pricing is upstream.
– Mortgage is big business, but not in Asia.

y spend precious spare time learning swing

* Unlike c++, python, socket …, this is real project, real value to me, real requirement from myself. I tend to finish much faster and with tangible outcome
* Even though I did a few swing projects in AutoReo, this is relatively new territory, so ascent is fastest.
* Together, swing and wpf are in a class of their own. Specialized skill and experience.
* I live nearby and with no family. This is one of the best ways to utilize the advantage.

* SQL and Unix are more “civil-engineering” but very hard to make visible, lasting progress.
* Unlike WPF, i can leverage on my strong java foundation including threading.
* Also, my previous professional experience needs “something” to reach critical mass and hit the next level. That something is probably hands-dirty experiments. I recall my java design experiments in ErrorMemos.

y i don’t focus on 1 vendor’s product

By age 30, many peers have decided to focus on Cisco, on Oracle, on Microsoft dotnet, on IBM, on SAP, on Powerbuilder. Other choose to focus on a domain like online gaming, financials …

(By “focus”, i mean 50%-100% of their tech experience is related to the chosen field.)

I always feel what if one day you discover you don’t like your role in that particular ecosystem, or the vendor starts making questionable moves, or you don’t like the vendor’s tech support, or u notice their discrimination policy .. you would feel locked in, cos you have invested too much into it, putting all your eggs in a single basket.

In my case, i have several years experience in each of
– solaris, linux, hpux, freebsd
– Oracle, mysql
– java, C, perl, php
– weblogic, tomcat, sunone