Software engineer coding challenge

This is my solution for the software engineer coding challenge.