Solo practice guy here. I used to have an inhouse biller. She was excellent. She could do reception, billing, and medical assistant work. Then she went to R.N. school and went on to bigger and better things.
Currently rather than outsource, I "co-source" billing and pay about 5%. We enter charges into the practice management system. They are scrubbed immediately and checked for errors. If any obvious errors we correct them (ie, like "patient is enrolled in a hospice, if you are not an employer of hospice enter modifier GV to indicate such".
Then the claim goes off to the billing company. They send it to the primary /secondary/tertiary insurance. They pay clearing house fees. They apply the insurance and patient payments. They get on the phone and followup on unpaid claims. They adjudicate complicated claims where there are takebacks and rebills. This is where I think billing companies excel. They do this stuff all the time. Clean claims that go through on first pass that are paid are easy for a solo office. Throw a monkey wrench into the claim and it's no longer easy.
So in summary, I think that the doctor should choose the codes. However, if you are in solo practice, In my opinion , better to let professional followup on claims, unless you are just dang lucky enough to be able to employ an experienced biller.
One more point, I will second what Leslie and someone else said. We switched billing systems back in 2002. We just kept the old billing computer going for like 4-6 months and put all new charges on new system and manually inputted patient data into new system. Maybe things have progressed since then, but there is little incentive for old billing company to hand you data on silver platter in easy to import format.