My kids all went through this at about three years old (I have 4)-- it is a normal, but not fun part of the development process. It's like they wake up one day and realize there is a defiant little creature living inside of them and they have to let it out. Eventually, with a lot of parental guidance, they learn to listen to it less and less. It probably isn't because you work and he's mad at you, I'm a sahm and mine all did it to me. I found keeping calm, being sweet but firm helped. Hitting you is never an acceptable behavior, so discipline--however you normally do--consistantly. Reward when you see changes (When I pick you up and you act sweet, you get a spiderman sticker to put on your shirt"--or whatever would entice him).
Also, think through your time after you pick him up: how much time are you spending with just him? Try to set everything aside to do an activity he likes like coloring, reading, snuggling, playing with cars. This is a helpful tool even when they get older! they never get too old for one-on-one time doing something they like.
Try not to react when he acts out-- he may just be trying to see how much of a rise he can get out of you. Just act like it doesn't bother you when he won't hug you or throws a tantrum. If the game doesn't work anymore, he'll get tired of it quickly.
Hope this helps! Remeber how much you love him when all you want to do is pull your hair out.