Вообще стартапы нанимают cto ну или хотя бы грамотного и опытного менеджера в первую очередь.
Это не обязательно отдельный человек, дефакто это вполне может один из программистов - но в команде обязательно должен быть технически и организационно сильный человек, имеющий полномочия по выбору стека технологий, сроков и прочего. Иначе все скатывается в лютую кашу.
В общем же случае (если речь идет про нативные приложения), роли в команде такие:
1. тот кто будет писать тз (product manager)
2.1 тот кто будет делать дизайн (ux дизайнер)
2.2 тот кто будет делать графику/иконки (дизайнер-иллюстратор)
3. разработчик серверной части (язык по вкусу, мейнстрим php/ruby/java )
4. разработчик мобильной java для приложения под android
5. разработчик objective c / swift для приложения под ios
6. тот кто будет тестировать приложения/сервер
Как это все ложится на живых людей - зависит от их квалификации, сроков и объема задач.