Когда задаёшь себе вопрос «разработка программного обеспечения», в голове сразу появляется образ кода, серверов и бесконечных задач. Но за этим процессом стоит целая экосистема людей, каждый из которых вносит свою часть в создание готового продукта. В этой статье разберём, кто именно пишет код, кто проверяет его, кто планирует работу и как все эти роли взаимодействуют, чтобы ваш любимый сервис работал без сбоев.
Ниже перечислены самые распространённые позиции, которые встречаются в любой ИТ‑компании. Каждая роль имеет свои задачи, но часто границы размыты - люди иногда совмещают несколько функций.
Роль | Ключевые обязанности | Требуемые навыки | Средняя зарплата (RUB) |
---|---|---|---|
Разработчик программного обеспечения | Пишет и поддерживает код, участвует в ревью, внедряет новые функции. | Один или несколько языков (Python, Java, C#), алгоритмы, Git, тесты. | 120 000-250 000 |
Тестировщик (QA) | Разрабатывает тест‑кейсы, автоматизирует проверку, ищет баги. | Selenium, JUnit, аналитическое мышление, внимательность. | 90 000-180 000 |
Менеджер проекта | Планирует спринты, координирует команду, отслеживает сроки. | Scrum, Jira, коммуникация, риск‑менеджмент. | 110 000-220 000 |
DevOps‑инженер | Автоматизирует развертывание, поддерживает CI/CD, следит за инфраструктурой. | Docker, Kubernetes, Bash, мониторинг. | 130 000-260 000 |
UX/UI дизайнер | Проектирует интерфейсы, проводит юзабилити‑тесты, создает прототипы. | Figma, Sketch, принципы дизайна, психология пользователей. | 80 000-170 000 |
Бизнес‑аналитик | Собирает требования, формирует спецификации, общается с заказчиком. | UML, BPMN, аналитика, коммуникация. | 100 000-190 000 |
Технический писатель | Создаёт документацию, руководства, API‑описания. | Markdown, Swagger, внимание к деталям. | 70 000-150 000 |
Архитектор программного обеспечения | Разрабатывает высокоуровневую структуру, выбирает технологии, контролирует масштабируемость. | Большой опыт, системный дизайн, знание паттернов. | 180 000-350 000 |
Представьте, что команда собирается создать мобильное приложение для онлайн‑заказов еды. Сначала Бизнес‑аналитик собирает требования: какие блюда, способы оплаты, геолокацию. Затем UX/UI дизайнер превращает эти требования в макеты экранов.
После утверждения макетов Разработчик программного обеспечения пишет код клиентской части (например, на Kotlin) и серверной (Java Spring). Параллельно DevOps‑инженер настраивает пайплайн CI/CD, чтобы каждый коммит автоматически собирался и деплоился в тестовую среду.
Когда первая версия готова, Тестировщик проверяет приложение, ищет баги, пишет автоматические тесты на Selenium. Менеджер проекта следит за сроками, проводит ежедневные стендапы и планирует следующий спринт.
В процессе разработки Технический писатель готовит API‑документацию и пользовательские руководства. На финальном этапе Архитектор программного обеспечения проверяет, что система выдержит нагрузку в пиковый вечер, и вносит корректировки в инфраструктуру.
Большинство специалистов стартует как Junior. На данный момент в России средний возраст Junior‑разработчика - 24 года, а средний опыт - 1,5 года. Дальше возможны такие вехи:
Для тестировщиков аналогичная лестница: Junior QA → QA Engineer → Senior QA → QA Lead. Менеджеры часто переходят в роли Project Manager → Scrum Master → Delivery Director. DevOps‑специалисты могут вырасти до Site Reliability Engineer (SRE) или Platform Engineer.
Важно помнить, что переход на новый уровень требует:
С 2010‑х годов большинство компаний перешли на Agile‑подходы. На практике это выглядит так:
Инструменты, которые чаще всего используют:
Эти практики помогают сократить «прокалывание» между ролями и делают процесс более прозрачным.
Рынок труда в IT быстро меняется, но есть несколько навыков, которые стабильно находятся в топ‑10 запросов работодателей:
Если вы только начинаете, сосредоточьтесь на одном языке программирования, изучайте Git и базовые алгоритмы, а потом добавляйте облако и CI/CD.
Если вы только определяете, в каком направлении двигаться, задайте себе несколько вопросов:
Ответы помогут сфокусировать обучение: курсы по Python и JavaScript для разработчиков, курсы по Test Automation для QA, обучение Scrum для менеджеров и т.д.
Качество кода контролируют несколько ролей: разработчики проводят code review, тестировщики ищут баги, а DevOps‑инженер настроивает автоматические проверки в CI/CD‑пайплайне.
Практически нет. Архитектору нужен глубокий опыт в нескольких технологиях и понимание системных ограничений, которые приходят только после нескольких лет разработки.
Оптимально 1‑2 часа в будние дни и 3‑4 часа в выходные. Главное - регулярность, а не количество часов за один раз.
Сертификат помогает, но реальный опыт управления спринтами и коммуникации с командой ценится больше.
Docker и Kubernetes для контейнеризации, Istio для сервис‑меша, а также системы мониторинга вроде Prometheus и Grafana.