From personal experience I see nothing can enhance your English speaking level except speaking itself
Practicing with native speakers has it's own benefits as it can help you to correct your mistakes and pronunciation, beside replicating their way of magic usage to the language.
Practicing with learners is extremely important as well in order to overcome your shyness while talking and to see their ways of learning.
Even practicing with beginners I see it has it's unique benefits because it can help you to boost your self confidence.
Exchanging small texts in English can help as well to force your mind to think in English all the time. And to give you enough time to use new vocabulary in order to use them verbally in the future
Keep doing what you are doing.