The heron leaves little gifts like that on my dock. Owls too will cough up pellets full of fur, bone, and feathers.
I'm thinking Raccoon or 'possum. Birds don't have teeth, so they tend to swallow things whole with the exception of Raptors that are feeding their young or caught something too big to swallow in one gulp.
I have plenty of herons and raccoons. I'm glad no one suggested an otter.
I doubt Raccoon unless it found the dead fish on the dock already, they don't normally go to far with a meal.
If it were a Heron it would be from the "back end" since they swallow fish whole.
Hard to tell from the photo if that pile has passed through something or if it's just remnants. If it's remnants, my guess is otter (sorry). Most birds wouldn't eat the bones, and otters are the most likely furry critter to carry a fish up on the dock to eat. If it's back end leftovers, my guess is you had a heron standing there recently.