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

Advertisements

engaging #marketableDomainXp.xls

Let’s keep this in blog , not spreadsheets.

Engagement is a real contributor to job satisfaction. Because of it I walked away from CVA, Barx and other higher, easier java jobs.

This factor is notoriously n inherently elusive, unstable (strategic). Engagement is impermanent, then-and-there, like joy and sadness. I once found wafer fab spacesuit fashionable! Big data, wpf, quant, swing, FIX, kdb, … were once attractive to me. What’s engaging used to be stategic trySomethingNew, but look at other blog posts… It’s hard to identify some activity as long-term engaging.

Q: On marketable-tech-xp.xlsx, which factors on row 2 help keep my mind engaged?
– Some form of complexity is always helpful. There are some on Row 2.
– Poor “market value” always decimates my “engagement”. There are some protective factors on Row 2.

The job_satisfaction_predictor spreadsheet compares past jobs in terms of engagement.

 

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.

(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? I see low chance of increasing my income, but I could be wrong
  • some specialist role, perhaps
    • risk/pricing analytics? questionable premium
    • low-latency algo trading in c++/java? unlikely … Get Real
  • hands-on architect (different from specialist role)
  • (perhaps maintenance mode) app owner, and grow in a big company?
    • must be a high value application
  • high-end contractor? practical
  • coding practice? practical 🙂
  • portable instrumentation zbs

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 ROTI
  • 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.

+! trySomethingNew] sg, what could I have(possibly)got

See also past vindicative specializations

  • I would still do my MSFM
  • I would still fail to get into algo trading or quant dev — too few jobs and extremely high bar
  • I would likely fail to get into leadership roles. I was considered for leadership roles at 1 to 3 companies

However,

  • I could possibly have focused on a specialization such as risk system + some analytics
  • would probably have joined citi, barc, baml, UBS, SC or .. in sg
  • probably java or swing or connectivity
  • would Not have achieved the c#/py/c++ ZBS growth
  • would Not have the skills to get this ICE raw mkt data job or the other c++ job offers.
  • no guarantee to become a manager or app owner. There could be many old timers in the team.
  • possibly less stress and pain. Lower chance of performance stress (#1 biggest stressor), because my GTD/KPI would be higher due to my java/SQL zbs.

[17]orgro^unconnecteDiversify: tech xx ROTI

Update — Is the xx fortified with job IV success? Yes to some extent.

Background – my learning capacity is NOT unlimited. In terms of QQ and ZZ (see post on tough topics with low leverage), many technical subjects require substantial amount of /laser energy/, not a few weeks of cram — remember FIX, tibrv and focus+engagement2dive into a tech topic#Ashish. With limited resources, we have to economize and plan long term with vision, instead of shooting in all directions.

Actually, at the time, c#+java was a common combination, and FIX, tibrv … were all considered orgro to some extent.

Example – my time spent on XAML now looks not organic growth, so the effort is likely wasted. So is Swing…

Similarly, I always keep a distance from the new web stuff — spring, javascript, mobile apps, cloud, big data …

However, on the other extreme, staying in my familiar zone of java/SQL/perl/Linux is not strategic. I feel stagnant and left behind by those who branch out (see https://bintanvictor.wordpress.com/2017/02/22/skill-deependiversifystack-up/). More seriously, I feel my GTD capabilities are possibly reducing as I age, so I feel a need to find new “cheese station”.

My Initial learning curves were steeper and exciting — cpp, c#, SQL.

Since 2008, this has felt like a fundamental balancing act in my career.

Unlike most of my peers, I enjoy (rather than hate) learning new things. My learning capacity is 7/10 or 8/10 but I don’t enjoy staying in one area too long.

How about data science? I feel it’s kind of organic based on my pricing knowledge and math training. Also it could become a research/teaching career.

I have a habit of “touch and go”. Perhaps more appropriately, “touch, deep dive and go”. I deep dived on 10 to 20 topic and decided to move on: (ranked by significance)

  • sockets
  • linux kernel
  • classic algorithms for IV #2D/recur
  • py/perl
  • bond math, forex
  • black Scholes and option dnlg
  • pthreads
  • VisualStudio
  • FIX
  • c#, WCF
  • Excel, VBA
  • xaml
  • swing
  • in-mem DB #gemfire
  • ION
  • functional programming
  • java threading and java core language
  • SQL joins and tuning, stored proc

Following such a habit I could spread out too thin.

##xp@career diversification #instead of stack-up/deepen

  • biz wing — in addition to my tech wing. I learned a bit but not enough. Not strategic
  • quant? diversify. The on-the-job learning was effective and helped me with subsequent interviews, but further push (UChicago) are not bearing fruits
  • data science? diversify
  • big data java jobs? stack-up
  • —-diversify within the tech space, where I have proven strengths
  • py? bearing fruits. Confidence.
  • swing? positive experience
  • unix -> web dev -> java? extremely successful
  • c++? slowly turning positive
  • dotnet? reasonable
  • FIX? diversify

9 income sacrifices: often2avoid stagnation

I have this habit of giving up higher income, in order to keep learning something of strategic value,

  • before it’s “too late” — i.e. before the opportunity disappears
  • The prospect of blood-letting (wasted cycles) is too painful.
  • I felt my peers were moving ahead of me, while I stood still.
%loss higher income forgone lower income to gain … ROI realized intangible ROI strategic?
2002 50% Zed ->SCS presales none brave
2003 40% SCS ->self-employ entre none brave
2004 70% Sperion ->self-employ entre none brave
2007 7% Barks FX offer OC 100% c#, quant dev learned enough to crack some c#IV confidence no:(
2017 10%+ Pimco C++/FI offer ICE 100% c++ more c++ offers yes 🙂
2017 10% java jobs ICE c++ more c++ offers yes 🙂
2018 10% java jobs mvea c++ c++ job market cracked c++ skill is harder, rarer conviction
2018 15% CVA mvea real time trading unsure
—-  —- —————
2013 not a job UChicago formal math training Master’s degree, branded uni confidence in math; self-confidence no:(

For the UChicago motivation, there’s a separate blog post.

In 2017, I felt my c++ had not reached the critical mass despite my long self-study. A power drill was required to break the stone wall.

no IV muscle growth]sg..really@@

Common reason: no IV to give feedback on any “muscle growth”

Common reason: Most if not ALL of the growth areas have since become non-strategic, due to the limited job market

  • c# —  Actually my c# had tremendous and fast growth, no slower than my 2010-2012 peak period, but there was no IV to verify it
  • py — was growing fast in Mac, but no full time python jobs
  • quant — I went through a hell of growth in quant-dev, but gave up
  • c++ tool knowledge — was growing in Mac but not a QQ topic at all.
  • c++ optimization for HFT — I read quite a bit but can’t pass the interviews 😦 so I gave up