Writing shaders for UE4

Writing your own shaders and compute shaders in UE4 appears to be hidden from the public eye like a dark, ancient secret. This is something that’s been keeping me away from UE4 ever since it came out. But since it’s been a long time since I last asked, here I am again;

Does anyone have a comprehensible and straightforward guide, preferably with examples, on how to write your own shaders and compute shaders in UE4?

Just to clarify, I’m not talking about the shading language or the theory behind how to write shaders. For now I’m just interested in where to start if I want to use different shaders than the standard PBS

Thanks