Oh my goodness, after so many years of a love/hate relationship with Dynamics, I feel like I have to defend it a little bit, only a little bit though :)
I must admit that I've not looked at Salesforce since 2014 so I can't really provide a comparison
>* Had to hire a PFE to set up the Exchange integration. This should be turnkey if you are in the same company's stack, IMO. Instead it took thousands of dollars and days of work by the PFE, our centralized Exchange admins, and myself.
I've never had any major issues setting integration with Exchange up. I can't say the same thing for other email servers, I'm looking at you postfix
You do get issues with syncing every so often, YMMV
You do say that you were on Government Cloud so maybe that was the source of the issue, the extra limitations.
>* Little things like hiding the freaking nav bar cards are literally disallowed in Dynamics.
Agreed, these things used to irritate the hell out of me as they seem to be so arbitrary. Although you also have limitations on Salesforce.
>* The Dynamics 365 App for Outlook is a dumpster fire that didn't work at least half the time. Search queries returning no results, no useful error messages, and an overall appalling UX. It single-handedly killed adoption.
Agreed, the old app was a nightmare and I've not tried the new. Hopefully you are referring to the latter.
>* I spent many hours trying to figure out how to send timed emails. That's because you have to use the advanced logic tools which are a nightmare. I was able to spin up the same timed email in SFDC in a matter of minutes. I truly wish this was an exaggeration but it's not.
I'm pretty sure that this is a google search away, set DelayedEmailSendTime. I say this as we had a requirement for this and we implemented it but the customer changed their mind and we went with a bulk email process in the end.
>* D365 documentation is utter garbage when compared to the SFDC Trailhead. The only option for getting off the ground for our technical staff was to pay for training through one of MS's sketchy vendors. It was overpriced (about $3k) and not at all great.
This is a fair criticism. I had a friend whose company landed a Dynamics CRM contract and they struggled to get started precisely because of this. The SDK was fine but they ended up doing all manner of apps with Angular inside Dynamics when they could've used the platform, they just struggled to find out what it could do.
>* The only way to programmatically interface with D365 APIs is through using the ancient SOAP API or their REST endpoint with OData syntax only.
There is an SDK with APIs for C# and Typescript(Javascript) that abstracts this away. If you're using something else then it's not great, I do remember having fun times trying to integrate with Java.
>* Oh BTW, if you were hoping for a modern development workflow, think again. You are going to be stuck manually uploading files into Dynamics for things like editing the internal interfaces of Dynamics. Oh and you have to register every single function against every single trigger, manually through a GUI.
There are so many tools/frameworks out there that this seems like very petty criticism. I was using tools to automate this away back in 2014 (custom but there are frameworks now)
>* Their customer facing website options are a joke. I can create a fully fledged web app with complete control over the HTML/CSS/JS using the SFDC community, this is definitely not the case with Dynamics. You are limited to the point of only being able to choose layout templates with Dynamics. The last time I checked, you couldn't create your own.
MS is pushing powerApps so this is unlikely to change