I read Python for Algorithmic Trading.
This is an introductory book by Yves Hilpisch for getting started with algorithmic trading in Python.
It covers a full pipeline in a single book: setting up a Python environment, retrieving data, data analysis with NumPy/pandas, trading strategies (simple moving average, momentum, mean reversion), vectorized backtesting, prediction with machine learning and deep learning, event-based backtesting, real-time data handling, and trade automation against concrete broker APIs such as Oanda and FXCM.
One caveat: data sources and APIs (Eikon, Oanda, FXCM, etc.) can change in spec and availability over time, so running the book's code as-is may require account setup and tracking those differences.
For a software engineer, this is an approachable entry point for bringing programming intuition into the financial domain.