# Shahbaz Chaudhary > Shahbaz Chaudhary is a software engineer and data scientist in Chicago with over 25 years in financial services. Shahbaz spent about 15 years as a software engineer, including real-time, low-latency trading systems, and wrote FIX Parser, a tool for reading FIX messages used by thousands of people every month. Shahbaz is also an Adjunct Associate Professor at the University of Chicago, teaching Python and software engineering. ## About - Trading systems (2006–2016): real-time, concurrent, low-latency systems that dealt with live markets, at Wachovia/Wells Fargo Securities (algorithmic execution engine), Marco Polo Network/Omega Trading (a complete Java trading system, market data feed handlers), S. J. Levinson (algo container, VWAP/TWAP/IS strategies) and Wolverine Trading (latency testing tools, exchange gateway simulators, C++). Before and between these, financial software at Knight Securities, UBS, Bank of America and StreamingEdge. - FIX protocol: has worked with FIX since 2006, from connecting an execution engine to order management systems to building a complete FIX 4.2 trading system. Author of FIX Parser (since 2012), FIX Tester, the fix.js library (since 2012) and nodefix (2010), a FIX engine for Node.js. - Data science and AI (2017–present): Senior Manager, Data Science at Charles Schwab, in its AI/ML center of excellence. Work includes NLP on client conversations, lead models for sales, an agentic data scientist, and U.S. Patent 11,609,805. - Teaching (2019–present): Adjunct Associate Professor at the University of Chicago, teaching Python for data science, Python for ML engineering, and software developer tools for finance to graduate students. Over 600 students in about 30 sections. - Education: MS in Analytics, University of Chicago; BS in Computer Science, University of Michigan. - Resume: the [complete resume in Markdown](https://shahbazac.com/resume.md) has every job since 2000 in full, plus courses taught, patents and publications. The [web page](https://shahbazac.com/resume) is a short, human-readable version of the same resume. - Contact: shahbazc@gmail.com · [GitHub](https://github.com/falconair) · [LinkedIn](https://www.linkedin.com/in/shahbaz-chaudhary/) ## Apps - [FIX Parser](https://fixparser.targetcompid.com): Paste FIX messages or drop a log file and read every tag by name, in a timeline of orders and executions. Parsed in your browser, so logs stay on your computer. (since 2012) - [FIX Tester](https://fixtester.targetcompid.com): A hosted FIX server to test your FIX engine against. Point your engine at it, log on, send test orders, and acknowledge, fill or reject them from the page. - [Agent Debugger](https://agentdebugger.sh): See what your coding agent actually did: every read, retry and wasted step in a Claude Code, Codex or GitHub Copilot session. - [Class Planner](https://classplanner.io): Plan a course by what depends on what. The schedule flags any topic taught before its prerequisites, or a class that runs over time. - [postcell.io](https://postcell.io): Real-time feedback for Jupyter classes. A cell magic sends each student's code to the instructor, who sees every latest attempt live. (since 2020) - [SQL Forever](https://sqlforever.com): Practice SQL on six real databases, from a digital music store to a company data warehouse. No signup and nothing to install, and any query can be shared as a link. (since 2020) - [Interactive Trainer](https://trainingdata.fit): Build training labels when there is no ground truth. Mark a few examples on a 2D map of your data and it ranks every remaining row for review. ## Reference - [Skill Tracer](https://shahbazac.com/skills/): Read how professionals write agent skills. Over 900 skills, each with its text annotated, what starts it and how it connects to the others. A model drafts the notes, and every quote is checked against the skill's own text. ## Open source - [fix.js](https://github.com/falconair/fix.js): A FIX protocol library for building trading tools. Client and server sessions with logon, heartbeats and resends handled, and messages with FIX names. Tested against QuickFIX/J. (since 2012, rewritten 2026) - [sklearn-embeddings](https://github.com/falconair/sklearn-embeddings): Sentence-transformer embeddings as a scikit-learn pipeline step, so a text classifier encodes, fits, predicts and saves as one model. On PyPI. (since 2025) - [Lecture notes](https://github.com/falconair/lectures): Jupyter notebooks from my University of Chicago classes: Python, pandas, time series, machine learning, the shell and git. (since 2019) ## Writing - [Writing Trading Utilities in JavaScript - part 1](https://shahbazac.com/2017/05/15/trading-tools-in-javascript.html) (2017): In this blog post, I will show JavaScript code for utilities which should be helpful to programmers who work on professional financial trading systems (including HFT or high frequency trading and algorithmic trading) - [Seriously, we need multi-column editors](https://shahbazac.com/2015/03/03/we-need-multicolumn-editors.html) (2015): We need editors for high resolution monitors - [Adventures in financial and software engineering](https://shahbazac.com/2015/01/30/composingcontracts.html) (2015): This post describes how to implement a DSL for pricing financial contracts in Scala - [Simulating a financial exchange in Scala](https://shahbazac.com/2015/01/05/financial-exchange.html) (2015): This post describes how to build a financial exchange in Scala ## Optional - [Complete resume (Markdown)](https://shahbazac.com/resume.md): full work history since 2000, courses taught, patents and publications - [All projects on GitHub](https://github.com/falconair)