DBSCAN is most cited clustering algorithm according to some literature and it can find arbitrary shape clusters based on density. It has two parameters eps (as neighborhood radius) and minPts (as minimum neighbors to consider a point as core point) which I believe it highly depends on them.
Is there any routine or commonly used method to choose these parameters?
There are plenty of publications that propose methods to choose these parameters.
The most notable is OPTICS, a DBSCAN variation that does away with the epsilon parameter; it produces a hierarchical result that can roughly be seen as “running DBSCAN with every possible epsilon”.
For minPts, I do suggest to not rely on an automatic method, but on your domain knowledge.
A good clustering algorithm has parameters, that allow you to customize it to your needs.
A parameter that you overlooked is the distance function. The first thing to do for DBSCAN is to find a good distance function for your application. Do not rely on Euclidean distance being the best for every application!