Players write them for the most part, but I'll make suggestions, especially to give the characters reasons to work together. I've been in several campaigns where that common thread was not strong enough and it became a problem. For example, in my current party, I had three somewhat disreputable characters from the same area who wanted to be working together as mercenaries and such. I gave them a name and description for their employer. They've gradually developed more and more details about their style of work and relationship, partly as background and partly it's just emerged as chatter and characterization during the game. For the elf, I suggested that she have some kind of relationship with a particular elf NPC (relative, mentor, teacher, employer, etc); she decided he would be her uncle. The dwarf had written a fairly elaborate history which noted that he had scholarly contacts in various areas especially outside the dwarves, so I made one of those contacts the same NPC elf. Then for the priestess, her primary contact/hook was her high priestess. Then I made these three NPCs allies and in contact so they could task the party to work together. I gave all of them some specific background material relating to what they were doing; e.g. the elf knew a particular artifact had been stolen from her uncle and some details of that event, the mercenaries were delivering a related item to the high priestess, and the dwarf had been the original discoverer of the item that was stolen. So, adding some details but trying to build on what they had created rather than change it.