system design for front end developer