without using NavMesh, How to avoid autonomous moving agents/obstacles

when it comes to avoiding non moving obstacles, distance is the only factor to consider when it comes to determining the “most threatening obstacle” and the new direction of velocity . but when it comes to moving agents however, there are more factors such as velocity to consider , for example the fact that an object is closest to my agent or within a defined radius doesn’t necessarily mean that it’s the most threatening or even a threat at all; it could be moving away so by the time I reach the “future collision point” it would be gone or it could be moving a slower speed than objects further away.

what’s a simple way of implementing such steering behavior?

You can start with the things specified in this answer: physics - How is RTS Local Avoidance Done? - Game Development Stack Exchange

There is lot of literature available on local avoidance which you can Google.