I played it for a while (like 20 minutes) and I enjoyed it quite a lot. It is a simple game but I can see that you put a lot of work to polish it. I especially like how movement was made and how the cannon moves and shoots.
Only if player upgrades were random just like enemies have. I think small rework of how Player gets buffs could also help improve your game. Player can store upgrade points by killing enemies but they have to upgrade themselves and enemies at the same time. Just like enemies work but with player upgrades. Of course, these upgrades aren't active until they die. I think it could work better and by this system you could add more overpowered upgrades.