predict next 3-5Y job satisfaction #engaging is a slightly different perspective. I decide to keep both separate for now.

The “table” is subject to frequent change, so I have to post it on github:

[1] Note “Engaged/engaging” means level of mental engagement, including traction, level of interest and positive feedback.

This depends on many things such as trySomethingNewStrategic. In retrospect this may not mean much, but this does affect my satisfaction then and there.

When I was into option math, I didn’t want any low latency or connectivity projects.

I think soon I will lose interest in mkt data or latency.

However, even in a 5Y java/c#/python job, I believe can find engaging challenges.


##questionable tsn bets: past+future

  • boost beyond shared_ptr
  • functional programming
  • dotnet
  • quant dev
  • — above are questionable ones ranked by level of surprise
  • — vindicated i.e. paying off above minimum expectation
  • bash + scripting
  • automated trading components like
  • bond math
  • py
  • c++
    • c++ multi-file build, gdb, valgrind
    • c++11 — recently it started to pay off
    • pthreads — recently it started to pay off
    • template details — recently it started to pay off
  • sockets! wasn’t convinced but what an unexpected success!
  • — next 10Y
  • FIX?
  • algo trading?
  • risk analytics?
  • data analytics?
  • scala?

learning nothing Strategic@a job@@ Normal !

Suppose after I stay on a job for 2 years, I now only have some “familiar, un-fresh” tech topics to learn (beside lots of local system knowledge), like 2 of the following

  • Java — serialization, Eclipse, ..
  • Linux commands
  • Some domain jargons
  • Perl, or python
  • SQL
  • git
  • A bit of math # always turns me on!

… but none of the following

  1. algos
  2. low latency
  3. quant
  4. .. other hot domains

Q: Would I lose interest and feel bored? Note 80% of my peers are in this situation. They are coping fine!
A: I think I will but need to see the reality. Looking at my past “strategic” learning, I think they are similar to my TriTech direction — my naive preference for opamps design in my 1997 third year IA at TriTech — Nothing strategic after all.

Hoping for a job with something engaging and challenging is realistic and reasonable. Hoping for “strategic” is naive. For many years, I was driven by this TriTech motivation which inevitably made me feel I’m in the wrong job. (Only Barclays job felt “strategic” for 6 months.) Now looking back, ## past vindicative specializations shows a small number of vindicative examples. I feel that’s 30%, so most of my trySomethingNew or other specializations didn’t prove strategic.

However, Quartz is different. Learning something familiar but generic like java is still better than learning Quartz. Quartz is a killer.

checklist@tsn + examples

As I said in learning nothing Strategic@a job@@ Normal ! and ## practical 10Y career planning guidelinesI don’t realistically expect to learn some fancy stuff, but I do want to keep myself engaged.

On a score up to 5

  • 5 algo trading? poor market depth
  • 4.9 pricing, risk analytics? poor market depth, thick->thin
  • 3 data analytics, possibly poor portability, market depth and churn
  • 4.1 market data, connectivity
  • 4.0 generic risk system
  • 5 non-trivial c++
  • 4.1 any C/c++ since my “muscles” still needs strengthening
  • 3 cloud enabled app? but the Mac experience was underwhelming
  • 4 hadoop, nosql
  • 4 challenging java projects
  • 3 stagnating in java, not trying anything brand new or enhancing my java zbs. low orgradient
  • 3 dotnet? unconnected. I gave it 5 for a long time
  • 3 python data analytics
  • 2 regular python tasks
  • 1 many other topics
  • 0.1 support job? still better than Quartz…. At least I get some spare time
  • 0.0 Quartz? stressful + zero python learning
notes/firm score topic

Criteria ranked:

  1. tangible traction, positive feedback
    • thin->thick->thin
  2. talent and personal advantages such as theoretical, analytics ..
  3. observable market depth
  4. lasting accu, low churn? I find this rather hard to achieve.
  5. robust demand
  6. —secondary criteria
  7. specialist domain — some level of inherent depth and complexity, but this is often oversold.
  8. defensible entry barrier and reasonably steep learning curve. HFT is really an out-lier — just too hard to break into
  9. orgro, not “unconnected”
  10. strategic, based on my short-term prediction, which is frequently and grossly inaccurate
  11. sustained focus, which is a determined by Traction and Depth

trySomethingNew : avoid perm jobs@@

There’s a high risk of under-performing. In a perm job, that invites warning, perf improvement, bonus fear — all forms of stigma-phobias.

With contract jobs, I can operate without the fear of stigma!

Here, “under-performing” mostly refers to “figure-things-out slower than team peers”, which (usually but) doesn’t always attracts those stigmas. Ultimately it’s the manager’s assessment.

Stirt/Quartz – For example, my figure-things-out speed was not slower than my peers and not slower than Barcap 2nd half, but still i got the stigma.

Citi — for an opposite example, my figure-things-out speed was rather slow but I didn’t get the stigma. I got renewed once.

#1 career SAFETY enhancer@past5Y #muscleBuild`IV

See also I can professionally qualify as …

From 2010 to 2015, “IV muscle building” was my #1 career safety enhancer. That’s why I had so much “joy”. That’s where I invested so much time and money.

  • MSFM to open “new market” or at least cement my position on the quant-dev job market
    • SQL is, intriguingly, similar
  • c++, c#, py
  • swing– as a distinct job market segment

Now (2017) I don’t see it as my #1 career safety enhancer. In retrospect, I find it not very simple to reach a conclusion.

One factor — I think core java skill demand turned out to be extremely robust (whereas c# and c++11 were underwhelming)

One factor — traditional pricing quant is shrinking as a job market

One factor — For both high end c++ and quant domains, bar is much higher than anticipated.

(IncInc)most effective 10Y direction to INCrease INCome

Reality! We better embrace reality, not ignore it.

  • Quant? no. Get Real
  • new skills like py, hadoop, data science? low chance of increasing my income
  • some specialist role, perhaps
    • risk/pricing analytics?
    • low-latency algo trading in c++/java? unlikely … Get Real
  • hands-on architect (different from specialist)
  • (perhaps maintenance mode) app owner
    • must be a high value application


dare2fail: trySomethingNew

Q: With family, do I have more or less capacity for dare2fail?
A: I would say less.

Actually, I feel there are very few new things worth trying. Nothing strategic!

  • xp: Mac — I did learn hardcore python (rare), hardcore devops, hardcore MSVS, some c++build…. Low respect, damaged self-esteem.
    • At a younger age, I would take the blow (like a tough boxer) and move on.
    • I was relying on very few of my traditional strengths — unix. So this job choice was high risk.
    • verdict? Yes I did dare to fail, with courage , and endured the pain.
  • xp: Qz — superficially learned a bit of real time ticking risk + yield curve building. Learned a bit of secDB style framework. failed to learn what I wanted.
    • verdict? Yes I did dare to fail, with courage, and endured the pain.
  • xp: OC c# — the technical challenge was within my capacity
    • verdict? I did’t fail in terms of c# learning. Technically, I didn’t fail. I failed to impress mgr
  • xp: MSFM — I did learn something tough, and earned a top uni degree, but I failed to break out
    • verdict? Yes I did dare to fail — fail to realize ROI
  • xp: citi-muni — I didn’t do such a good job, without high respect, though I felt great about the experience
    • verdict? I didn’t fail actually. I achieved what I wanted — income, valuable experience….
  • xp: barc analytics — new to me but I took it up very well
  • xp: 95Greene — MOM and threading framework was new to me
  • xp: Verizon java — one of my first heavy-duty java jobs. Until then, I only did some JSP/Servlet stuff
  • xp: GS java — I was about 6M experienced in core java, but I move up the curve very quickly
    • I rejected the familiar perl/php jobs
  • xp: ICE — I started with about 1M c++ professional experience, and moved up the curve quickly.