My college major was Computer Information Systems, then I worked as a network engineer for IBM. So I had literally years of formal training.
I’ve added a FAQ topic on learning more about Z-Wave specifically:
I’m actually falling a bit behind with regard to zwave plus, as I no longer have that access nor work with this stuff every day. I tripped up on explorer frames the other day, although @duncan kindly corrected my error.
So I’ll likely be back to discussing topology generalities by the next generation of zwave in another few years. I’m definitely not paying for a personal developer’s license!
In terms of programming for SmartThings specifically, it uses a Groovy variant. But documentation is a long way from being finished, although they’re working on it. @tgauchat or @slagle could probably make suggestions on a learning path to become an ST coder.