The thought of process behind writing effective blueprints is almost identical to that of normal programming.
My background before I started using UE4:
- computer sciences education
- made a custom game engine (hobby, so had plenty of glitches and roughness)
I can say that having gone through the trouble of making a custom engine really kickstarted my UE4 blueprints skill. I could almost jump in seamlessly, since I knew what sort of functions I was looking for.
So basically I would recommend advancing your normal programming skills, perhaps even making a small game yourself with for example C#. You'll be alot more comfortable with the blueprint system after that. Add to that doing a bunch of tutorials, constantly achieving more and more, and you'll find yourself all set!
Good luck, and feel free to ask any specific questions on the forums :-)
Cheers and beers,