Вопрос сугубо специализированный. Разработчик — это специалист, который создаёт программное обеспечение: от сайтов и мобильных приложений до игр и сложных систем для бизнеса. Конечно, нужны знания, опыт и личностные качества. Осмелюсь предположить:
1. Язык программирования
2. База данных
3. Алгоритмы
4. Английский язык
5. Коммуникация
6. Системное мышление
еще много чего нужно знать и уметь...