I went through a few KiCad tutorials (it's improved a lot over the past few years), and a lot of trial and error. With PCBWay and JLCPCB making it super cheap and delivered in a few days, it means you don't have to worry about mistakes so much.
My process is largely:
- mock it up with arduino boards
- mock it up on a breadboard with straight chips wired up like an Arduino but without all the stuff I don't need
- make a KiCad design that matches that
- make the PCBs, realize I made a few holes the wrong size, make more PCBs
- build, test, use
- plan to do it without the Arduino parts, but then give up after trying and failing to make Atmel Studio do anything