I've integrated Kixie with one of my clients and they've really been enjoying it. Really simple integration and workflow. I did have to change some automations triggered by dispositions from Kixie instead of through Pipedrive though so beware of that.
One issue that I'm not sure how to resolve however is multiple deals on one organization. With Kixie the first Deal you call from using that dialer is associated with that number forever. So if you call from another deal associated with that organization it still puts the call information inside the original deal you called from. Besides that one quirk, it's a great platform.
I would also recommend using Pipedrive native caller feature. You can learn more about it here - https://support.pipedrive.com/en/article/caller.
Kixie is also a good recommendation and we also integrate with AirCall and Toky.
We have quite a few options available here - https://marketplace.pipedrive.com/apps/phone-solutions.