Write well designed, testable, efficient code by using best software development practices Create website layout/user interface by using standard HTML/CSS practices Integrate data from various back-end services and databases Gather and refine specifications and requirements based on technical needs