I got to a point where I was happy with how my high poly had turned out, and while there is always something that can be made better, it is important to remember that you also need to finish projects as well.
Once I finish a high poly, I will export it out to serve as my detailed mesh for baking. Then, instead of jumping right to decimation master, I will actually dynamesh the mesh down to about 1 or 2 million polys. The reason for this is I don't need the high level of detail for my low poly, so by using dynamesh to reduce it first, I can save a lot of time during the pre-process step of decimation master. You can literally go from waiting a few minutes or more to only waiting 10 seconds or so simply by throwing in a quick dynamesh to reduce the polycount.
Once the process is complete, I will play around with tri-counts for the final low poly until I get something I am satisfied with that fits within the polygon budget for the environment. Once that's done I export it to Maya for a final cleanup as decimation master often times creates geometry with artifacts or holes, and often times some overlapping vertices.
Once everything is cleaned up, I start by deciding where my cuts for my uv's are going to go, then go through my least favorite part of unwrapping the mesh. Rocks are always a tricky thing to unwrap simply because you have such random geometry, and no two unwraps are ever the same. I generally try to keep my seams as minimal as possible, but sometimes you need to make more cuts for less distortion on the final mesh.
Last step is to export the final unwrapped lowpoly, bring both it and the highpoly in to Xnormals and start to bake.
For this rock I decimated down to about 1500 tris, a tad higher than I would normally use if this was going in to a game, but seeing this will just be for a portfolio the count will be fine.