I see people here doing some really complex things with GE--it's a tool like any other--you get out of it what you put into it.
If you use it intensively with C script---I think it's not easy at all. It's very challenging. And it works. : )
It delivers results which is all you can ask of any game engine.
I've been comparing and contrasting a lot of game engines (because curiosity has always been a failing of cats) and there are pluses and minuses to all of them. With many of them you have to learn some off the wall script created by the author of the game engine. Not so with GE. It uses C script which is the fastest and most efficient for gamemaking, imho. : )
If you wrote your own game engine in whatever coding language you chose , it would have its own pluses and minuses and would probably take you a lot of time you could better use in making a game in GE. (Like Bee-Ant's Winter Blast game in the Game Development thread.) : )
So my suggestion is---until you have made an uber game in ge--don't move go elsewhere. : )