• Что нужно знать для backend разработки?

    @FullStackAlex
    Веб-разработчик, электрик, кочевник
    Бэкенд разделяется как минимум на четыре части:
    - язык для программирования приложения
    - администрация базы данных
    - администрация сервера и операционной системы
    - DevOps

    Языки для программирования приложения:
    - JavaScript + Node.js/Express.js любимчик хипстеров и стартапов: так как у вас или как минимум у меня нет конкретных представлений о том что вы хотите не нужно далеко идти. Знания Node.js поможет вам и с фронтондом, так как Webpack работает с Express.js а индивидуальная настройка Webpack огромный pain in the ass и с поиском работы среди хипстерских компаний.
    - PHP/Symfony. PHP - любимчик пролетариата - всегда хороший выбор. Язык написан как и JavaScript специально для вэб-приложений. Маленькие проекты реализуются очень быстро благодаря отсутствию каких либо рамок со стороны языка. От сюда же и плохая репутация этого языка так как очень много (с точки зрения ООП архитектуры) не грамотно созданных проектов на PHP, среди которых самый известный это WordPress. Но PHP полноценный язык программирования и нет больших объективных поводов поливать его грязью как это любят делать сектанты JavaScript, Java, Ruby, Python итп (хотя и каждый из этих языков поливается грязью сектантами других языков). Фреймворк для enterprise level: Symfony + Doctrine ( ужасное дерьмо, нужно только реально для enterprise level - для личных проектов Doctrine лучше избегать и использовать PDO). Практически все популярные eCommerce системы написаны на PHP (WooCommerce, Magento, Shopify, Shopware). Ну а про WordPress вообще говорить нечего. 35% сайтов работают с WordPress. WordPress с технологической точки зрения не самый лучший Framework, но так как самый популярный среди пользователей, то экспертиза в этой сфере всегда поможет вам с работой на фрилансе. Хотя пользователи WordPress в среднем не самые платежеспособные клиенты. Но есть (где то) и клиенты которые готовы платить десятки тысяч долларов за проект на основе WordPress.
    - Java/Spring - любимчик корпораций: практически все индивидуальные разработки больших корпораций делаются на Java (если не учитывать языки Microsoft). Популярный fullstack генератор для проектов на Java: JHipster. Сектанты Java ненавидят всех и являются главным источником шитстормов против всех остальных языков. По крайней мере мне так кажется. Одно из больших преимуществ Java: можно писать приложения как для вэба, так и для мобайл и десктопа.
    - Kotlin - язык программирования от русской компании JetBrains который должен в длительной перспективе заменить Java для Android, из-за каких то разногласий между Google и Oracle. Kotlin был развит на основе Java и на сколько я знаю можно всё что написано на Java (как то) использовать с Котлин. Котлин любят все как мне кажется. Ребята от JetBrains знают на генетическом уровне что нужно разработчику. По крайней мере мне так кажется когда работаю с их продуктами (PhpStorm/WebStorm + DataGrip).
    - Python/Django: супер универсальный язык который популярен как для разработки веб-приложений так и в научной сфере и сфере искусственного интеллекта. Говорят его так же легко выучить как и PHP. От сюда же наверное и шитстормы в его сторону, хотя конечно их меньше чем в сторону PHP. Язык так же популярен среди хакеров и является главным языком для программирования crawler ботов. YouTube написан на Python
    - Ruby (on Rails): ничего не знаю об этом языке/фрэймворке кроме того что относительно много компаний среднего уровня его используют.
    - C/C++: веб-фреймворков для этих языков практически нет. Но это самые быстрые языки из всех перечисленных. Эти языки используются для всего где скорость играет большую роль (видео обработка например). JavaScript, все программы от Adobe CC, а также Ableton Live написаны на C++. Linux Kernel и PHP написаны на C. Также это главные языки для электроприборов/микроконтроллеров и поэтому в сфере IoT. Возможно эти языки начнут также играть большую роль во фронтенд!!! благодаря WebAssembly, что делает (теоретически) возможным переносить такие программы как Photoshop, Illustrator, Premiere Pro, After Effects, Ableton Live или же игры как Counter Strike полностью в броузер. 
Если бы я начинал учить новый бэкенд язык я бы начал с C/C++.
    Ответ написан
    Комментировать