I’ve put together a few tips for designers that have to deal with programmers in their everyday life. Most tips are what to do to avoid annoying developers or how to have a better communication and workflow.
If you are working on a game, try to understand some game design concepts
Once you start working on some games you will notice there are many concepts and techniques you will need to apply to make the developer’s life easier. You should get familiar with how to work with frame-based animations, tilemaps, seamless textures, naming conventions,etc.
IMHO none of these is a “game design” concept. It’s technical stuff that has nothing to do with gameplay directly. I’d consider concepts like “having a boss monster” or “powerups” to be game design concepts/patterns.