If you are the "Build from Scratch" type, I have a word of warning for you: Be very careful that you are not becoming a victim of the "Not Invented Here" syndrome. It's very common for engineers.
If you are debating whether to build an engine from scratch, I ask you to very carefully question your motives. It's 2015. There are free game engines (UE4, Unity) which can accelerate your game development process. Writing your own engine should mostly be an academic exercise to understand engine architecture. If you're using it as a means to create a game, you're probably doing it wrong -- unless you've got a very compelling business case for it.
I speak from experience on this... I wrote my own game engine and it took me a year. It was alright, it worked, but it wasn't professional grade and it was also a bit buggy. If I wanted to add a new capability to my game, I'd have to spend several weeks adding it into my engine. I finally got smart and used UE4, and I have not looked back.