I think about this a lot... I'm a live pro in Vegas, I play cash and tournaments.
Cash especially makes me feel like a shark like you said. I mean, I go to the Bellagio every day and seek out weak players to prey on. I table select vigorously and can smell blood from across the room.
Often I find myself feeling weird about the whole experience, however after much soul searching I have the following that keeps my sane:
1) The fish are degen gamblers mostly. If its not me who's getting the money, its another player, or the casino, bookie, etc. So, why not me?
2) I am nice and courteous at the casino and never berate the fish - they have a good experience when they play with me, and they get to take their shot at a Las Vegas pro.
3) I use the money to take care of my family and tip well in life, spread the money around, and give to charity frequently...
Anyways, sure its a bit of an ethical dilemma sometimes, but in the end I am comfortable with what I am doing and try to give back in other ways in society to balance the fact that really my job is just mostly selfish ...
my 2 cents