Game design can be divided into two parts, front-end and back-end. The front end allows you to design everything the players can see in the game and the back-end is where all the more invisible parts live, like systems and servers.
You can find a range of professions specialising in either front-end or back-end development. A Fullstack Programmer undertakes a stack of technical layers and works in both ends of game development.
An appreciation for game design and gameplay will help you get ahead in this role. On top of being a brilliant communicator and inventive problem solver you also must possess a vast scope of technical knowledge and skills in programming.