На чем написан бекенд в крупных приложениях?
==============================================

 Привет всем. На чем написан бекенд крупных приложений? И на чем вообще стоит делать? Как вы относитесь к бекенду на php или phyton?  
  

Просьба отвечать знающих людей, а не теоретиков или новичков. 

 На C#, ASP.NET, PHP, Python, Node.js, Go, RubyOnRails, ... 

 1) Зависит от сферы применения приложения. Например, если это Финтех или какие-то Гео-сервисы, то там принято писать на Java. За столько времени применения Java в этой сфере было разработано определенное количество библиотек и платформ заточенных четко под эту сферу, и на других языках этого ничего нет. Следовательно ни у кого не появляется желания тратить время на изобретение велосипеда и выбирают Java.  
  

2) Чаще всего сервисы реализуют связку. Например, php + node.js / java + go итд. Естественно сначала все пишется на голом php/java условно, а потом по мере роста сервиса ключевые элементы выносят в отдельные подсервисы на технологии, которые для этого лучше подходят.  
  

3) Стек:   
  

- PHP (Symfony/Zend) - интерпрайз на php  

- Python (Django/Tornado) - интерпрайз на python. Насчет Фласка (Flask) ситуация следующая, что его начали применять для микросервисов, ибо он легкий. Но потом все же решили делать микросервисы, где каждый микросервис это монолит на Django (так получается удобней).  

- Ruby(ROR) - но его лучше не использовать в России. Ибо после 2008 году он стремительно потерял свою популярность и найти спецов под него будет геморно.  

- Java(spring)/.Net (ASP NET CORE) - тут все понятно.  
  

\_\_  
  

Если вам надо писать какой-то онлайн-банк, то очевидно лучше выбрать Java.   
  

Если вам надо писать что-то веб-ориентированное для РФ рынка, то PHP.   
  

Если надо, например, сервис автоматизации для Twitch, то лучше выбрать Python (ибо у буружев считается хорошей практикой писать нативную апи либу под Python).  
  

.net, например, хорош для каких-то гос.сервисов. Например, в свое время писал систему учета грузов для морских портов на Балтике. Там очень удобно было весь документо-оборот делать. 

 Все новые сервисы Вконтакте старается писать на Go, старые поддерживают - php.  

у Telegram бекенд в основном написан на C++. 

 Этот вопрос решается руководителем команды продукта.  

Кто то хочет golang, кто то php, кто то erlang. Поэтому в крупных компаниях разные продукты могут быть на разных языках. Например команда яндекс браузера делает api для браузера на golang, а команда яндекс погоды делает все на python хотя казалось бы одна компания.  

Если спрашиваешь с целью не ошибиться со стеком технологий, то посмотри вакансии ближе к своему дому и самые высокооплачиваемые.  

Язык это всего лишь инструмент, поэтому выбирай тот где меньше напряга и больше денег.