Find a private driver in Tehran that is reliable and speaks English. Chose your driver ahead of time so you can ensure that you have a ride available. Plus, you can probably get a pretty good price because you can connect with the driver directly via Synotrip instead of going through a middle man.
Who should you choose?
Try to pick a driver that is active on the site. Those that post material and have positive reviews posted about them should be the most reliable.
Drivers should be able to provide you with a digital copy of their certification, such as a driver's license or tour guide license.
If you have certain requirements, make sure to bring it up with your driver ahead of time. Remember that driving norms might not be the same in Tehran as they are in your home town, so it is worth discussing even the more-obvious safety requirements such as seat belt usage and speeding.