You need to have a very good understanding of Object Oriented Programming (OOP) to be able to work in Unreal, period. It is absolutely built 100% on that concept, although I think there’s a lot of people out there who have a very good understanding of Unreal, and have no idea that they actually 100% know OOP. 
You also basically cannot work in C++ without some form of OOP concepts. OOP is pretty much completely out of favor with Javascript programmers, and the support for it in PHP is absolutely terrible, and has been for quite a long time, despite some people’s claims that PHP is amazing at it. Those people either don’t understand PHP or don’t understand OOP.
But, what’s even more important, is flat out experience. Spend time getting to know things in the game. Follow tutorials, and learn how things in the engine work. You’ll get the rest of it.