We have a tendency to dive into a project and start coding prematurely. Sometimes we forget that we need to take a step back and ask "How do I best achieve the goals of this project?". Before writing the code, we need to understand the problem, the difficulties, and the architecture of a proposed solution. We need to understand the different layers of the architecture we are proposing. In this talk, I will be showing attendees the proper design for these layers. * Application * Service * Data I will show you the responsibilities for each of these layers, where they fit into your application, and how they should properly interact with each other. Before you fire up your text editor and start writing code, stand back and take a look. See the beauty of the layers.