Берете NP задачу и прямо в ее условии имеем область куда прикладывать
Задача коммивояжера / доставки / транспортная задача
Задача раскроя
...
Проблема в том, что в таких областях уже сидят компании с професорами, которые сделали продукты для бизнеса. И чтоб работать в етой нише вам не нужно знать математику, а нужно уметь пользоваться уже готовым продуктом
Если у вас есть квалификация написать устойчивое оттестированное приложение на чистом JS, то фреймворки не нужны
У большинства людей не получится отточить и фронт, и бек
Потому используют фреймворки, как каркас, чтоб не напортачить
Если все же хотите совместить в себе разработчика фронта и бека - смотрите на тулзы, которые позволят писать код одновременно для обеих частей
aka ClojureScript
Хероку используется, когда есть деньги, непонятно когда придет вал запросов, админить никто не хочет
AWS - когда админить есть кому, понятно когда приходит вал запросов, примерно понятно, что делать с наплывом