## 9 unexpected success@tsn

I have explored far and wide… for new domains, new challenges. Explanation marks means Surprise

skill discovered proven over %%strength 1-5 val 4 GTD val4IV
unix shell + unix admin 2000 Catcha 2Y 3 4 1
! perl 2000 Catcha 3Y 4 #many years ago 2 1
LAMP+js 2000 1Y 2 0 0
? python no surprise 1Y 2 #xp@Mac 2 3
! socket #and tools 2017 never 1 #lowLevel 3 if relevant 2
!! threading concept+java impl 2010 4Y 5 #theoretical 0 5
! x-lang collections 2010 5Y 4 #lowLevel+theoretical 1 5
! x-lang OO 2010 NA 4 #lowLevel 0 4
white board coding [1] 2011 2Y 2 @WallSt 0 3
swing 2012 never 2 not my direction
! bond math 2010 Citi 1Y 2 1 if relevant 2
! option math 2011 Barc 1Y 3 2 if relevant 1
fin jargon 2010 4Y #@MS 3 #know what’s relevant 2 2
finSys arch #abstract 2010 2Y 2 3 3

[1] Am more comfortable on whiteboard than other candidates.


predict next 3-5Y job satisfaction

Q: did the learning actually help with my job interviews? This is a key feedback.
A: Yes to some extent

The “table” is subject to frequent change, so I keep it in a spreadsheet in recoll. Here some notes:

  • appreciation/respect(zbs) — turns to be the #1 key to job satisfaction, but appreciation is tricky. Bonus can break it, performance review can break it, other things can break it too. I often felt like “damaged goods”.
    • In Mac and Stirt (and OC too), managers considered me good enough for transfer to other teams.
  • income — turns out to be insignificant when I have inner confidence and self-esteem. It is still one of the most important factors. When it’s very high, it overrides everything else.
  • distractions — do hurt my O2 for GTD, zbs development and self-learning
  • traction — positive feedback, includes zbs growth, instrumentation, self confidence, IV, catching up or surpassing peers
  • strategic orgro/stagnation — turns out to be a white elephant.

! OC job was actually not bad if there were some appreciation from boss. However, the new, strategic specialization didn’t bring enough satisfaction.

! Verizon job experience was rather positive. I was on the rise, in my prime. It all ended when I moved to GS. I should have quit GS earlier. Citi was the start of another prime period. Prime mostly in terms of self-confidence, self-esteem …

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, which is important according to Theodore Rubin

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

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

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

My prediction — to have a satisfying (not necessarily strategic) job next time,

  • I need the #1 factor — appreciation.
  • A well-paid java job will mostly likely make me feel good.
  • LearningSomethingNew will NOT be a deciding factor (Recall c#/py experiences). I will still make time to learn something, just like in 95G


##questionable tsn bets: past+future

  • boost beyond shared_ptr
  • functional programming
  • JMS?
  • sendmail, makefile,
    • In contrast better bets at that time include apache, freeBSD, dns
  • option math?
  • quant dev
  • —— above are questionable bets
  • —— a subset of vindicated bets i.e. paying off above minimum expectation. See also ## past vindicative specializations
  • sockets!
  • bash + scripting
  • bond math
  • py
  • FIX
  • 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
  • —— next 10Y

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 many 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.

j4 c#: brief review

See post on j4 stick2c++: Score big{losing@quant/c#

This review is mostly for future planning, not nostalgia

  • — Q: what were the motivation/j4
  • c# was #1 on front end in banks + some buy-side… Now it is losing mind share to web GUI. Very little heard on WPF
  • c# was challenging java in a small number of banks … Now it has taken too long to mount that challenge
  • After “conquering java, I felt (and still feel) c# is closer to Java.
  • I witnessed a few systems with java back-end and c# front-end and a demand for versatile developers….Now there are very few.
  • On Wall St I saw more c# than c++ jobs… Now I still think so.
  • Q: why I stopped pushing on the c# front?
  • I don’t like the Windows platform. My focus has shifted away. No single big reason.
  • — Q: how was my planning and execution? I feel 80% successful. I feel in my c# first 12M I gained more confidence (5/10) than my java first 12M
  • attend interviews remotely… Worked
  • take on a wide range of c# tasks … worked, including WCF, Excel, WindowsService, vbscript integration, …
  • chip away at the biggest rock — MSVS .. worked. Now more confidence

#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 in 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 category

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