I'm still somewhat new to the Azure world and one thing that something you'll only learn from failing is that there's setting up Azure DevOps easy or right
Typically like so many Microsoft products Microsoft likes to provide easy solutions, well you click, something searches and then you select an option and like magic it connects. This is how a service principal (automatic) connection works.
Don't ever Fucking do it
This is guaranteed to cause you more tears and angst with ARM and possibly other pipelines for deployment than any single shortcut on the planet. The problem is it doesn't alert you to various missing pieces. For starters you'll have contributor level access to a subscription, but there are some tasks he running infrastructure building you'll need to have Owner privileges. It won't grant you directory read to the AAD. You'll have no idea why somethings fail, they do and that's all the knowledge you'll have.
I'm sure there are a few extra things which no doubt you'll blindly stagger around like a 21-year-old on the night club dance floor at 2 am wondering why it's not working the 21 year old is thinking the same thing when he's trying to meet that girl. You'll feel about as awesome as well while you wondered why stuff doesn't work.
Enjoy your days building Azure infrastructure with ARM. Infrastructure as code is awesome but don't let this bite you on the arse