Hello! I am Daniel Stahl.
I am a leader in the data science and machine learning operations space, and I moonlight as a software engineer.
My academic background, and my intellectual passion, is in the mathematics underlying financial models. I have published two papers in the Journal of Credit Risk and the Journal of Operational Risk extending this mathematical framework to portfolio credit and operational risks. I've made the Latex and PDFs available in my CreditRiskPaper repository and OpsRiskPaper repository. I've implemented the results of these papers in the following repositories:
- Credit loss:
- Spark for big data applications
- Rust for streaming or low latency applications
- Example implementation comparing my credit model with Risk Metrics
- Working example on my personal site
- Operational loss:
- Rust for low latency applications
- Working example on my personal site
I've created computationally efficient calculators for pricing options on underlyings with very complex dynamics. Examples, documentation, and related material can be found at the realoptions Github organization, as well as at finside.org The bulk of the work is done in the option_price_faas library. These calculators can be accessed from my developers site or at my rapidapi page. I also have a free web app exemplifying how the calculators may be used, and a free mobile app for Android.
Software development is my hobby and my passion. I believe software is a craft. Software engineering requires not only a sound technical understanding, but also a feeling of pride and ownership for a product well crafted. Software should be used and re-used. My preferred development languages reflect this belief. Rust is a phenomenal language that encourages best practices, enforces memory management, and retains performance that is comparable to C++. It is my preferred language for micro-services and server-side development. Flutter and React or my two favorite languages for client-side development. React has become more and more geared towards functional programming, making client applications quick to develop and easy to maintain. Flutter takes this one step further and introduces stronger guarantees due to its fully-fledged typing system, as well as being the language that introduced the BLoC pattern for state management.
I have spent my career in financial institutions. In my current role, I am responsible for machine learning operations and providing the tools for data scientists to safely, responsibly, and efficiently deliver robust data products for our internal and external customers. I use our internal continuous integration and continuous deliver platform and a "Gitops" style approach to enable models to be promoted to production continuously, while retaining the controls, lineage, and provenance needed for a highly regulated institution. The model development platform has been created to enable this style of promotion without the Data Scientists having to write their own continuous integration scripts. Data Scientists can focus on what they are best at: creating incredible models.