Role : Sr. Java Programmer ( Banking + Electronic Trading experience ) MUST
Experience : Minimum 15+ years , 12+ in hardcore programming & writing codes
Location : Charlotte , NC
Onsite : 5 days onsite , NO Hybrid
Non-Negotiable Skills REQUIRED:
o Corporate Bond [HY or IG] Electronic Trading market structure
o Deep understanding on Financial calculations, such as conversion of Yield to Price and basic understanding of Spread
o Deep understanding of BWIC/OWIC negotiating protocol, including nuances with LP/ECN/ATS
o Deep understanding of Offer Management including concepts of Tiering levels
o Deep understanding of Market Data including Aggregated, Consolidated and Montage books
o Understanding of Post Trade Feed flows including calculations for settlement
• Must Have
o Understanding of micro-market structures and typical areas exploited by Algorithmic partners within Banking space.
o Understanding of any Regulatory organizations / Banking
Technology Skills:
o Deep Java expertise including low latency techniques such as memory maps, ring buffers, thread pining and cache line consistency
o Deep Experience with Distributed Memory Fabric
o Deep experience with Messaging [JMS or native]
o Experience with raw TCP/IP and UDP/Multicast [prefer to see how implemented reliable Multi-cast]
o Understanding of Spring, Gradle and Docker
o Experience with Relational Databases [Postgres or Oracle preferred]
o Highly skilled in Linux scripting, troubleshooting and host tuning
o Experience with Chromium Engines, HTML5 and Angular or React Javascript libraries
• Nice to Have
o Experience with C/C++, Rust or Python
o Familiarity with Java Unsafe memory access model
o Experience with Kubernetes configuration and Jenkins scripting
o Big Data experience – prefer Hadoop with PIG or Hive
o No SQL Experience, even Mongo DB is ok here
o Tick Database and Market data streaming understanding
o Complex Event Processor experience