the two main things that I have noticed thus far for performance issues is draw calls, combine your meshes to save draw calls, or even better yet and is more efficient all around as it will not render offscreen geometry is to use batching.
secondly, with about 60 ish FSM's running per frame I noticed a sharp decrease in performance on my sony experia S, they wernt complex at all, needless to say that these where leftover FSM's I didnt need and deleted/disabled them once I finished with them, and the Xperia S is now just under top performance phone along with the galaxy S2 (only a few beat it like the S3 and phones with the built in nVidia tegra chips) so this came as a little surprise as there wasn't much going on.
I havnt worked too much with ausio and sound so not sure on that front
and can agree with shaders, these will be handled by the gpu, large maps with pixle shaders will multiply the time it takes to render.
best way to see if it is the shaders is to lower the resolution of the textures (again in the quality settings this can be done) and see if you get a large performance increase, this is the easiest way, failing this go change your shaders to something like mobile diffuse and re-test.
but if you havnt done any work with draw calls then my guess is that this will be your killer atm.