As of May 2015, Ubersync no longer works due to a change Facebook made. How can I keep my Android contacts book synced with my Facebook contacts now? I imagine other apps have suffered a similar fate.
If you add Facebook IDs to the note field of your contacts (or you have been using a HTC Sense device which had probably done it for you), you can try ContactSyncDuck for Facebook.
Disclaimer: I am affiliated with this application.
Try Eyecon which automatically syncs your contacts with pictures from Facebook (and other social media sources)
Disclaimer: I work for Eyecon