The only means for me to enforce conventions is through code reviews and PRs. Especially for developers new on the project how else would they learn? The fact that the existing code has bad patterns is a sad fact of life and can only slowly be overcome but is not an excuse to continue bad practices. I can only work on educating the use of better patterns, but it's rare that devs go back fix their code once it's in use. Do it upfront.