Help with Snapping Workflow

It’s not necessary to change origin point to snap object, but origin point likely will be changed as consequence of using the default way to snap.

If in 2.79- and if using default, right click on the vertex which should be center of new position of the object. Once it’s selected select the rest of the mesh while leaving that first vertex as active, enable Snapping, set it to Active mode (Which part to snap to) to Active Vertex, and grab mesh hovering over vertex of another object to snap to.
snapping-in-Edit-mode

That will break origin point of the snapped object though but it’s the fastest default way to snap.

If in 2.8 the same can be done as described above but without exiting Edit mode since you can work with several object in Edit mode without joining them. However origin point of the snapped object will be changed.

There are addons to make solution simpler without repositioning of origin point. One solution is NP Station addon and its tool NP_point_align, see NP Station. However it’s not quite updated for 2.8 (only partially from what I know).
There is Mesh Align Tools addon which also addresses snapping, see https://github.com/egtwobits/mesh_mesh_align_plus/wiki for gif of usage. It is updated for 2.8 and exists for older versions.