Шаг 2. Осознанный выбор технологий
У нас уже есть какие-то представления об IT-индустрии в целом. Теперь нам пока выбрать свой IT-путь в рамках работы разработчиком.
Ниже мы перечислим различные критерии выбора. Вы можете составить таблицу на основе этих критериев и для разных направлений создать оценочную таблицу.
Критерии выбора технологий:
- Вам это нравится. Если вам не нравится работать с версткой – то вероятно вам не надо становиться frontend веб-разработчиком. Понимаю, что у вас нет опыта работы с версткой, но вы можете поглубже изучить для каждой области какие там есть проблемы. Если вам не нравится решать такие проблемы – то лучше займитесь другой областью.
- Ваша смежная область. Если вы сейчас работаете программистом PHP, то вам относительно будет несложно перебраться на ASP.NET или Ruby. Если вы раньше программирования скрипты для каких-то плат и контроллеров, то веб-часть от вас сейчас далека. Если вы бухгалтер, то вероятно вам имеет смысл работать в решениях, ориентированных на этот сегмент (у вас преимущество – вы хорошо знаете бизнес-логику!).
- Что будет востребовано еще много лет? К примеру спорный вопрос – нужно ли начинать изучать нативную мобильную разработку? Не исключено, что HTML5 будет расширен до всех функций телефона и по сути приложение можно будет создавать на нем (1 приложение для всех платформ). Все большие языки конечно будут еще долго существовать, но все дело в нюансах технологий и их применения.
- Быстро и просто попробовать. Если вы можете что-то быстро попробовать – то пробуйте. Много вы не потеряете, но получите реальный опыт. Если выстрелит – отлично. Если нет – то просто переключитесь на что-то другое. Есть конструкторы мобильных приложений – почему бы не попробовать работать на них? Есть готовые CMS – почему бы не попробовать поковыряться в них?
- Оцените объем рынка труда. Побудьте немного маркетологом – зайдите на HeadHunter и посмотрите зарплаты по выбранным технологиям. Посмотрите средние значения, посмотрите потолок.
Очень важный чит-код. Есть такая штука, как статистика ключевых слов в Яндексе wordstat.yandex.ru. Забивайте туда “C# вакансия”, “C# программист”. Разделите одно на другое.
У вас получится некая величина, характеризующая спрос и предложение на C# программистов по данному региону. Сравнивая таким образом различные языки и технологии вы сможете понять что больше востребовано, где предложения на рынке труда недостаточно. Т.е. изначально вы довольно обоснованно выбираете более выгодную специализацию.
Направления разработки
Вкратце расскажу какие бывают в целом направления
По типу приложения:
- Веб-приложения. Это сайты, порталы, веб-системы.
- Мобильные приложения. Это нативная разработка под IOS и Android. Есть кроссплатформенные решения, например, Xamarin.
- Настольные программы. Это то, что устанавливается на вашу операционную систему. См. ASP.NET Win Forms
- Утилиты, драйвера, эксплойты и прочее. Это различные программки для решения каких-то узких специфических задач.
Разработка обычно делится на несколько уровней и как раз по уровням можно разбить специализацию программистов:
- Работа в базе данных + уровень доступа к данным. Это создание хранимых процедур, проектирование структуры базы данных и т.д.
- Работа с бизнес-логикой. Бизнес-логика – это слой, в которым программируются основные последовательности действий. Более подробно про все эти моменты мы рассказываем в своем курсе Core 2.0
- Работа на front end. Это вывод интерфейса и реализация логики интерактивности на интерфейсе пользователя.
Также можно разделить на специфические роли:
- Автоматизатор процесса разработки. Какие-то моменты можно автоматизировать (тесты, скрипты для обработки файлов и т.д.).
- Оптимизатор производительности (это тот, кто улучшает скорость работы системы и контролирует, чтобы кто-то из программистов не нагадил в ней – такое бывает).
- Программист-ревизор / наставник. Его задача – проверять код, который пишут другие программисты. Также к нему бегут по сложным вопросам в плане языка и технологий.
И последняя классификация – по типам предметной области:
- Вы можете делать приложения для бизнеса
- Вы можете делать приложения с кучей графики
- Вы можете делать игры
- Вы можете делать программы по информационной безопасности
- Вы можете заниматься какой-то конкретной технологией, например блокчейн
Задание. Сейчас у вас есть вся необходимая информация, чтобы сделать начальный обоснованный выбор в пользу какого-либо направления. Выберите несколько подходящих вариантов и создайте таблицу сравнения по критериям. Не торопитесь. Если хотите побольше узнать о какой-то технологии – вперед в Ютуб, смотрим по конкретной технологии обзорные видео. Результат задания – выбранный сегмент в мире программирования.
Теперь вы готовы к следующему шагу. Ни в коем случае не приступайте, пока твердо не решите с своим выбором.
А также изучите нашу статью о четырех мифах разработки программного обеспечения.
Периодически мы проводим обучение и даем возможность стажировки на базе нашей платформы с управлением на SQL. Если вам это интересно, то пожалуйста посмотрите информацию об обучении/стажировке по SQL.
← Как начать программирование. Шаг 1 | Как начать программирование. Шаг 3 → |