QPSK sync sequence detection problem
In this case you have very clear symbol transitions and the appearance of RRC shaped symbols with a small frequency offset. What you could do is pass the waveform as is through a second RRC filter (matched filter) assuming you know the RRC parameters and then estimate the decision locations in the preamble (since simpler there with just two symbols) as the midpoint between transitions where a 1010 pattern exists and observe successive complex decisions for rotation; from inspection it appears that rotation will indeed be less than 90 degrees from symbol to symbol in which case you should be able to determine the frequency offset and correct that with an opposite complex rotation (stop the symbol decisions from rotating).  Once that is done all successive symbols at the decision location should be clustered around their expected positions.
In practice a timing recovery loop (Gardner loop for example) can determine the symbol locations and a carrier recovery loop can remove the carrier offset; along with equalization when significant multipath interference exists- but this waveform looks to be of very good SNR with little distortion that doing it manually as described above will be a good learning exercise as to what those algorithms need to do in a tracking and acquisition loop.