Subsurface Modelling method And Advice (PS4 joystick) I tried to venture into subsurface modelling to start practising and gain more knowledge. My aim 
was to try using the tools and methods which I have learnt the past 6 months learning Blender. 
So my final result doesn't look the best. So I wanted some advice what would be the proper or correct
method to have had a better result of this PlayStation control. 

The initial top sample had less loop cuts which gave a better shape and clean mesh, but the more I was adding loops to get the bevelled circle bumps the more unclean it would look resulting in bad topology.

So what would be a better method to get a better result?

Thank you.
Maybe you should begin with the top face as a blueprint (try to follow the shape as much as possible so that you'll easily add edge loops if needed), then extrude up to give its volume, move the edge loops, etc, like that:



But you can also begin directly in 3D, roughly model the whole shape, then use the knife to bring details and additional edge loops: