For me, one key aspect of finding tricky bugs is getting a very good understanding of what the code is supposed to do on a higher level by reading the documentation.
Once I have that, I can start at an important part of the code and jump through the codebase following the flow of logic instead of going over a single file line by line.
"Analyze reports of code you have context about"
The best way to continue learning is to look at all the confirmed findings I missed, after a contest.
I don't like going over old reports where I did not compete since I don't have the context of that codebase.
If I review findings from codebases I spent a lot of time on, I can more easily identify why I missed a certain issue and learn from that.
"Take care of yourself"
What I also realized, is that treating myself as well as possible in life translates to better results in contests.
When I am not stressed and feel good physically, that directly impacts my auditing performance. Working out also helps a lot with mental clarity