Тут надо знать несколько вещей:
1. Как создавать интерфейсы и кое-что из мира вебдизайна
2. Выбранный вами язык программирования (я так понимаю это PHP)
3. Основы программирования (не веб-программирования, а именно программирования). Вот эти все непонятные вещи типа ООП, классов, инкапсуляции, наследования и прочее, прочее, прочее. Сервисы такого уровня требуют базовой подготовки в этом направлении.
4. Что такое веб-фреймворки и как они могут помогать при разработке
5. Как работать в базами данных
Это вкратце. А вообще нужно уметь много чего. Но можете не париться и начинать что то делать, выбрав какой нибудь фреймворк для php. Главное по ходу дела что то читать про программирование в целом, про сам язык PHP, про архитектуру проекта (образно говоря, как организовать где какие папки в проекте лежат (я знаю что лежит на самом деле за словом архитектура, это упрощение)).
Разбивайте проект на небольшие модули и постепенно пишите их. А потом соединяйте.