MAX7221 always hangs on first power on
Partial answer, so it won't get lost in comments.
The reason for MAX7221 (seemingly) not responding to any command is the &quot;Display Test&quot; mode. this mode is activated by 0xF command with data LSB set to one. Because other bits are insignificant, it can be enabled by clocking in 16 &quot;1&quot; bits (that is DIN constant high) for example or possibly by some of-by-one error or race condition while sending other command.
In the display test mode all other control (including shutdown mode) is overridden and all segments are permanently enabled regardless of any setting. Received commands will still affect internal state/data in the chip, but not display output.
From the datasheet:

Display-Test Register
The display-test register operates in two modes: normal and display test. Display-test mode turns all LEDs on by overriding, but not altering, all controls and digit registers (including the shutdown register). In display-test mode, 8 digits are scanned and the duty cycle is 31/32 (15/16 for MAX7221).


The MAX7219/MAX7221 remain in display-test mode (all LEDs on) until the display-test register is reconfigured for normal operation.

What exactly causes enabling the test mode after &quot;cold&quot; start is unclear without providing more details about SPI bus controller and behavior under start-up.