What are the roles and responsibilities of a web developer