Hey there, I am a software engineering and when I was in school and took some game design courses so I thought I would just give you some advice. I would recommend trying to make your own game that way you feel that sense of accomplishment. you can start of small. what they made us do is a 2d game and then a 3d game. creating an entire little game will let you practice and it will let you see something to completion. as you work on new games you can make then more complex and learn more.
I had class mates that were really into game design and that's what they would do. they would create interesting small levels for their game ideas. They made on simple 2d platformer that was very cool. you played as a simple character that had a flash light. you had to get to the finish avoiding enemies and using your light on them. your light would drain and it would slowly recharge. half way thru the level a giant dragon came out that chased you. you could freeze it for a few second with your light to keep moving.