Any kind of lawyer can handle this for you.
Trouble is, you'll pay him $200 to $300 per hour with at least $1000 retainer up front.
I suggest you talk to your insurance company, especially if they sent you to that repair shop.
If you don't get anywhere that way, you'll probably have to take the car somewhere else, get it fixed and sue the first body shop in small claims court (CA limit is $7500) and you wouldn't need a lawyer to do that.
Just make sure you properly document the bad repair job.