How does matchmaking work?

The disparity of ratings in my last group was insane. Horde ranged from 1600 - 1400. For alliance I was the only person above 1k. Most were in the 700’s. Yet their rating was almost ours?

You are only matches based off mmr. Your cr means absolutely nothing when it comes to being matched.

and mmr is weird

MMR has a lot to do with win/loss ratio, and a lot of teams will win several games in a row where people rank up and have members peace out to keep the rating they just gained.
If you have win streaks your MMR will go up very high causing you to battle teams way above your current level.
If you join a group on a solid win streak their next opponent is going to be significantly higher than you would expect.
Also works the same way when you invite a new player coming off a win streak. They will bring that MMR increase with them.

A simplistic way to look at it is:

-Each win will increase your MMR by 200.
-Each loss will decrease your MMR by 200.
-CR means nothing when making matches.

is there a way to see your personal contribution to the mmr?

also, is mmr constant? does it reset after a server reset or just after a play session? Can my season long w/l ratio be a good indicator of my mmr?

I do not believe it resets as it continues to have effects going into new PvP seasons.
Win/loss might give you a good idea, but there are other definitely other factors unknown to the player. Not to mention, you are only 1/9th of that team MMR and you likely won’t have the data needed to audit player win/loss stats.
Winning streaks greatly effect your current MMR.

Thank you!