В IT-сфере существует огромное количество профессий. Новичкам непросто сориентироваться в них: программирование, веб-дизайн, аналитика данных или геймдев — в каждом из этих направлений существует множество профессий, ответственных за каждый этап работы. Как выбрать то, что подойдёт именно вам? В школе программирования и анализа данных Mathshub разобрали десять популярных профессий в IT. Читайте в статье: — Чем отличаются Frontend и Backend разработчики и за что они отвечают?— Python или JavaScript?— Какие навыки необходимы тестировщику?— Как разобраться в data-профессиях? Разбор отличий.РазработкаРазработка любого ПО делится на несколько основных шагов. Ей занимается целая команда специалистов, каждый из которых имеет в проекте свою роль. Чтобы войти в IT-сферу, важно понимать, как работает весь процесс: чем отличается Frontend и Backend-разработка, какие языки программирования необходимо знать для выполнения разных задач и чем вам в принципе предстоит заниматься.Мы разделим разработчиков по двум основным категориям: языки и роли, занимаемые ими в разработке. Так будет понятнее.Python разработчик.Python – многофункциональный язык программирования. На нём можно написать приложение или нейросеть, проанализировать данные или, например, автоматизировать многие рабочие процессы. Он универсален и одинаково пригодится вам сразу в нескольких IT-профессиях:— В аналитике данных;— В веб-разработке;— В программной инженерии.Python-разработчику необходимо разбираться в Python, HTML, API, Django, ETL (Extract, Transform, Load)/ELT (extract, load, transform), а также понимать основные принципы объектно-ориентированного программирования.Средняя зарплата в месяц у Python-разработчика:🔹Россия 104 000 ₽🔹США 7,000 $🔹Европа 6,000 €JavaScript разработчикJavaScript-разработчик создаёт приложения и сайты, проверяет и анализирует код и помогает проектам поддерживать кодовую базу и актуальные версии.У JavaScript-разработчика есть три пути развития:— Frontend-разработчик: отвечает за клиентскую, визуальную часть.— Backend-разработчик: серверная, внутренняя часть.— Fullstack-разработчик: frontend и backend вместе.JavaScript позволит вам заниматься разработкой интерактивных веб-страниц и приложений, нативных приложений, дескпотных приложений и серверной части Node.js. А ещё вы сможете заниматься программированием оборудования и бытовой техники. Словом, вариантов для развития довольно много. Какие навыки от вас будут ожидать: — Frontend-разработчик: JavaScript, HTML и CSS.— Backend: Python, PHP и JavaScript-фреймворки: Node.js/Meteor.— Fullstack: JavaScript, Node.js, PHP, Python и/или Golang (Go), Java, C++, C#, Ruby.Средняя зарплата в месяц будет такая: 🔹Россия 100 000 ₽🔹США 8,000 $🔹Европа 6,000 €Теперь давайте подробнее разберёмся, в чём же отличия Frontend от Backend разработки.Frontend разработчик: обязанности и необходимые навыки. Frontend-разработчик занимается переводом готового дизайн-макетав код.Он отвечает за визуальную часть сайта или приложения, которую пользователи видят и с которой взаимодействуют.Такие разработчики нужны каждому приложению, коммерческому или информационному сайту, всевозможным сервисам. Они могут быть как в постоянном штате, так и наниматься компаниями в качестве независимых подрядчиков. Чтобы работать Frontend-разработчиком, вам необходимо: Знание HTML и CSS, JavaScript, дополнительных фреймворкови библиотек (jQuery, Angular.JS, React.JS и т.д.), DOM, инструментов контроля версий (Git, GitHub), баз данных и языков запросов.Сколько такой специалист получает в месяц:🔹Россия 150 000 ₽🔹США 8,000 $🔹Европа 4,500 €Чем занимается Backend разработчик?В отличие от Frontend-разработчиков, которые контролируют видимую часть веб-сайта, Backend-разработчик занимается созданием внутренней части сайта, приложения или программы, выдачей информации на основе конкретных запросов, серверным кодом, безопасностью и другими серверными функциями, которые не видны пользователю.Как и Frontend-разработчики, Backend нужен везде, где есть сайт или приложение.Например, Backend-разработчик может настроить оплату для онлайн магазина или возможность аутентификации для приложения.Что вам нужно уметь, чтобы работать в Backend-разработке:— Знать Python/Java/С/C++/C# /Ruby, PHP.— JavaScript-фреймворки:Node.js/Meteor.— Уметь работать с базами данных: MySQL/MongoDB/Oracle и веб-серверами (Apache/NGINX/Lighttpd/Microsoft IIS).Средняя зарплата в месяц:🔹Россия 150 000 ₽🔹США 8,000 $🔹Европа 4,500 €Fullstack разработчикFullstack-разработчики создают веб-приложения или сайты с нуля – и клиентскую, и серверную части. Они нужны везде, где нужны Fontend и Backend-разработчики, а кроме того они могут претендовать на позицию тимлида в проекте, так как разбираются и в разработке, и в дизайне продукта. Какие навыки ожидают от Fullstack-разработчика:— Знание HTML и CSS, JavaScript, Git и GitHub, HTTP, REST и SOAP, реляционных и нереляционных баз данных, DOM-хранилище, форматов XML и JSON.— Знание одного или нескольких языков: JavaScript, Node.js, PHP, Python, Java, Golang (Go), C++, C#, Ruby.Средняя зарплата в месяц:🔹Россия 180 000 ₽🔹США 16,000 $🔹Европа 4,500 €Тестировщик – кто это?Следующим этапом после разработки всегда идёт тестирование. И тут на помощь приходит тестировщик. Такой специалист может заниматься ручным или автоматизированным тестированием, но в этой статье мы рассмотрим именно автоматизированное. QA automation engineer.QA-инженер занимается тестированием системы для проверки корректной работы всего функционала. Этот специалист улучшает процесс разработки ПО, предотвращает дефекты и выявляет ошибки в работе создаваемого продукта – его работа крайне важна.QA automation занимается автоматизированным тестированием и помогает реализовать программные проверки быстрее, чем при ручном.Где нужен QA-инженер?В любом проекте, который так или иначе связан с IT. Тестировщик может разрабатывать методику тестирования банковского ПО, проверять верстку или дизайн интернет-магазинов, оценивать функционал и локализацию игры.Какие навыки необходимы, чтобы быть тестировщиком?— Знание Python и основ веб-разработки.— Уметь работать с HTML, CSS, DOM, JS, UI элементами, иметь навыки проектирования фреймворков, понимать ручное тестирование и методологии разработки. — Знать SQL на базовом уровне (join, агрегация), Selenium WebDriver/Selene, PyTest, Request, DOCKER, SMOKE, SOAP, CI CD.Средняя зарплата в месяц:🔹Россия 100 000 ₽🔹США 6,000 $🔹Европа 3,000 €Data профессии.Как правило, новичкам бывает труднее всего разобраться в многообразии Data-профессий. Может возникнуть путаница в отношении обязанностей специалистов: за сбор, систематизацию и хранение данных могут отвечать разные IT-специальности. Давайте разберём несколько основных задач в сфере работы с данными и какие специалисты за них отвечают. Аналитик данных.Аналитик обрабатывает большие данные, изучает их и делает выводы. Он помогает узнать клиента, глубоко изучает продукт и напрямую влияет на бизнес-процессы.Эти специалисты проводят A/B тесты, выявляют тенденции в поведении клиентов и проверяют гипотезы.Без такого специалиста не обойтись ни в одной компании – это один из ключевых сотрудников для бизнеса. Его работа помогает в снижении рисков, принятии объективных решений и оптимизации процессов. Какие навыки необходимы:— Знание SQL, Bl Tool, Excel и Python.Средняя зарплата в месяц:🔹Россия 110 000 ₽🔹США 6,000 $🔹Европа 4,000 €Data ScientistДата-сайентист сочетает в себе знания программирования и математики. Он выявляет закономерности и аномалии данных, создаёт модели для предсказания результатов и тестирования гипотез.Специалист по Data Science часто берёт на себя обязанности аналитика данных или программного инженера.Дата-сайентисты нужны везде: они помогают повысить эффективность бизнеса с помощью прогнозной аналитики и машинного обучения. Data Science решает проблемы бизнеса, поэтому они востребованы во всех компаниях. Что нужно, чтобы работать в Data Science:— Необходимы навыки аналитика данных и программного инженера;— Знание Python, SQL\NoSQL, NLP\ML;— Знание статистики и высшей математики.Средняя зарплата в месяц:🔹Россия 150 000 ₽🔹США 12,000 $🔹Европа 5,000 €ML-инженерML-инженер обучает нейросети и разрабатывает проекты на основе алгоритмов машинного обучения.Он создаёт и оптимизирует модели машинного обучения. Его задача – доработать модель до её релиза в продакшн. ML-engineering – это ответвление от Data Science, которое больше работает с искусственным интеллектом.ML-инженеры востребованы во всех компаниях, где есть продукты, работающие с нейросетями, а нейросети сейчас внедряются практически везде. Чаще всего это банки, операторы связи, технологические корпорации, маркетинг и реклама.Какие навыки вам нужны:Знание Python, SQL, инструментов DevOps, продвинутой статистики и высшей математики. Умение проводить A/B-тесты.Средняя зарплата в месяц:🔹Россия 120 000 ₽🔹США 10,500 $🔹Европа 4,800 €Data EngineerData Engineer или инженер данных занимается построением и обслуживанием инфраструктуры для работы с данными, а также их предварительной обработкой.Инженеры по работе с данными нужны в разных отраслях, связанных с Big Data. В основном, позиции дата инженеров присутствуют только в крупных компаниях: — Информационные технологии, телеком.— Банки, финансовые организации, платёжные системы.— Ритейл, онлайн-продажи товаров и услуг через маркетплейсы и мобильные приложения.— Транспортные, логистические компании.— Промышленные и производственные холдинги.Что нужно, чтобы работать Data-инженером:Знание Python, умение работать с командной строкой Linux, знание СУБД и SQL, также HIVE, Spark и Kafka.Средняя зарплата в месяц:🔹Россия 200 000 ₽🔹США 10,900 $🔹Европа 8,300 €В статье мы разобрали популярные направления в IT. Надеемся, что вам стало понятнее. Ну а если вам всё ещё сложно определиться с тем, какая сфера вам интересна и как вы можете использовать свой бэкграунд в новой области, оставляйте заявку на консультацию со специалистами Mathshub.