Developing gamesense

So I’m currently Onyx rank and I’m really struggling. I have very little “gamesense”, I rarely ever know where the enemy team is and what they are trying to do, resulting in me positioning myself poorly and being a bad team player. How do I develop good gamesense? To me it seems to be the main thing separating good from bad players. The only thing I can think of right now is learning all of the callouts for the maps (I only know about half of them) and finding players who also use callouts so that I know whats going on in the match. I’ve heard that spawn prediction and manipulation helps also, but there is not much info out there on the topic. Thanks.