If you're a software engineer interested in UX, I think Live will fit your brain like a hand in glove. It reminds me very much of emacs or vi where the app is designed to disappear from view and let you focus on your content.
Also, it's incredibly programmable and generative at many many different levels:
* Session view lets you build arrangements on the fly in realtime.
* Follow actions on clips let you automatically build sequences of clips, loop, them, randomly chain them, etc. It's like control flow for clips.
* The various built-in synths and effects support all sorts of dynamic modulation to make timbres evolve on their own.
* Then, of course, there is Max4Live, a full-fledged visual programming environment integrated deeply into the app.
You, of course, can ignore all that stuff and just make completed fixed tracks. But if you're interested in the live aspects of Live, then the software really feels like a substrate that you can use to build your own bespoke instrument for playing your music in real time.
I love it so much.