My father in law owns a Plumbing, Excavating, Sewer business. Are you on public sewer or have a septic tank?
If you have a septic tank there most likely is a clean out somewhere, but depending on the type of system it may be under the ground. How long have you lived in the house and have you ever had to have the tank pumped?
If you're on public sewer there doesn't have to be a clean out, unless it's required by code where you live. You should be able to call you local "sewer district" office and get a survey for where the lines SHOULD be, they don't always get updated so...
Either way if a plumber came out I'm surprised they didn't do a video inspection, fairly common with most of them now. But, from what I know dirt in the lines is almost always a sign of a broken pipe and dirt is getting in. Like others said in the short term you could use some chemical to dissolve the roots, if it's a tree, and break down the dirt in the line. The dirt will keep getting in until the break is fixed though. If it's in your backyard and your comfortable running a small excavator you could do this fairly inexpensively, just the cost of renting the excavator and some pipe. The hard part is figuring where the break(s) are. If it's broke near where it connects into your public main then it can get expensive due to having to involve your local sewer district and dealing with the main.