Since being a young boy, I have always had a fascination with programming and problem solving. I learnt the hard way that growing up wanting to be a software engineer is unusual. I'm very particular about using the software design process within developme