Understanding how neural circuits coordinate to drive behavior and decision making is a fundamental challenge in neuroscience. Unfortunately, finding a stable link between the brain and behavior has been difficult--even when behavior is consistent, neural activity can appear highly variable. In this talk, I will discuss ways that my lab is tackling this challenge to form more robust and interpretable readouts from neural circuits. The talk will focus on our recent efforts to use self-supervised learning (SSL) to decode and disentangle neural states. In SSL, invariances are achieved by encouraging "augmentations" (transformations) of the input to be mapped to similar points in the latent space. We demonstrate how this guiding principle can be used to model populations of neurons in diverse brain regions in both macaques and rodents, and disentangle different sources of information in the neural representation of movement. Our work shows that by establishing a more stable link between the brain and behavior, we can build better brain decoders and find common neural representations of behavior across individuals.