
Ксения Фурдман
Педагог-воспитатель, системный администратор ПО с применением технологий ИИ, QA-инженер, специалист в области GameDev
Рассказываем, как подготовить ребёнка к профессии в сфере ИТ.
ИТ-сфера — огромный пласт специалистов с самым разным опытом. Разные направления, навыки, стэк (набор инструментов, используемый в компании). А ещё профессиональный сленг: выпадашка, драй, репа, движок, апишка, «не баг, а фича».
На самом деле программист пишет код для определённой разработки. Стук клавиш продолжается долго, упорно, по несколько часов за компьютером, а чаще всего — полноценный рабочий день. Windows при большом желании тоже переустановит, хотя это больше делает системный администратор, а вот на ремонт сдать технику программисту не получится.
ИТ-специалист учит оборудование (в основном — компьютеры) делать то, что нужно конечному пользователю. Что входит в его обязанности?
Написание кода или создание инструкции для компьютера на специальном языке программирования (Python, Java, C# и другие), чтобы тот выполнял определённые задачи.
Тестирование программ — самостоятельная проверка кода перед тем, как отдать его команде тестирования или выпустить в свет, чтобы продуктом могли пользоваться все желающие.
Исправление ошибок — если программа работает неправильно или от тестировщика пришёл баг-репорт (отчёт о найденной ошибке).
Работа с другими отделами разработки и своей командой. Продукт разрабатывает, проверяет и сопровождает не только один IT-специалист, а целые команды — аналитики, менеджеры, PR-сотрудники, другие разработчики, тестировщики и многие другие. Со всеми надо найти общий язык, спокойно откликаться на советы, чтобы работа была в радость, а код оперативно улучшался и исправлялся.
Поддержка и обновление программ — другими словами: «Сопровождение». Программист вместе со всей командой следит за тем, чтобы программа работала стабильно, и добавляет новые функции по мере необходимости.
ИТ-специалист
Это общее описание деятельности ИТ-специалиста в области программирования. Каждая компания или небольшая команда использует свои инструменты разработки, и обязанности могут меняться. Ещё надо помнить, что направления у профессии разные:
веб-разработка: создание и поддержка сайтов и веб-приложений. Разделяется на фронтенд (интерфейс пользователя) и бэкенд (серверная часть);
мобильная разработка — приложения для мобильных устройств на iOS и Android;
разработка игр: создание компьютерных, консольных и мобильных игр;
Data Science и машинное обучение: анализ данных с применением программирования, обучение нейросетей, алгоритмов, программирование ботов с использованием искусственного интеллекта;
встраиваемые системы: программирование микроконтроллеров и встроенных систем, используемых в умной бытовой технике, автомобилях и так далее.
С помощью языков программирования ИТ-специалисты создают программы, сайты, приложения, игры. Если кратко — код нужен для того, чтобы человек мог легко объяснить машине, что делать. Языки программирования заменили сложные методы — раньше работа велась с помощью нулей и единиц, перфокарт и перфолент.
Дети могут начинать свой путь в разработке с разных языков программирования.
Scratch (для детей 6-12 лет). Визуальный язык программирования, где код создаётся путём перетаскивания блоков. С его помощью легче понять основы программирования, логики и алгоритмов.
Python (в среднем для детей от 10 лет). Достаточно прост в освоении, если сравнивать с тем же С#, используемым для разработки интерфейсов и игр. «Пайтон», или «Питон», позволяет анализировать данные, писать программы, создавать простые игры;
Swift (с 10 лет) — используется Apple для программирования своих устройств и приложений. Компания создала для детей специальную площадку для обучения — Swift Playground, где код усваивается через игровые задачи.
Java (с 12-14 лет) — используется в разработке как мобильных приложений, так и сайтов. Игра MineCraft тоже написана на Java. У языка программирования строгий синтаксис, поэтому для совсем маленьких детей без подготовки он не подходит.
C# (с 12-14 лет) — используется для написания приложений под Windows и в игровых движках — Unity, например. Из-за строгой типизации не подходит для совсем начинающих, так как будет тяжело понять синтаксис и логику работы.
Помимо языков программирования стоит изучить HTML и CSS — на них создаётся основа для будущего сайта. Все надстройки кода происходят уже после.
Дальше — углублённое изучение выбранного направления. К языку программирования добавляется среда разработки (Atom, Visual Studio, Pycharm и другие), где удобнее писать код. Программист выбирает для себя инструменты сам и изучает дополнительные уже во время работы.
Помочь в изучении могут образовательные платформы с бесплатными курсами. Например, бесплатный курс по Python можно найти на Stepik, как и многие другие. На YouTube тоже найдутся видео для всех возрастов от программистов со всего мира.
Разработка и изучение тонкостей языков программирования — это здорово. Но о портфолио тоже не стоит забывать. Во время практики надо отбирать удачные проекты или пытаться сделать свои собственные — простые сайты, приложения. Так потенциальный работодатель увидит, что знания применяются не только шаблонно, а ребёнок разработает что-то своё.
Портфолио можно хранить на диске, но лучше зарегистрироваться на GitHub — сайте, который объединяет разработчиков со всего мира, где каждый может выложить свой код или проекты в общий доступ, поделиться знаниями и взять чью-то разработку за основу.
Практика тоже важна — кодом надо заниматься постоянно. Принцип такой же, как в изучении иностранного языка — каждый день по чуть-чуть. Иначе забываются операторы, синтаксис, массивы и сам принцип работы.
А для дополнительного подспорья в знаниях можно почитать полезные книги.
«Программирование для детей. Иллюстрированное руководство по языкам Scratch и Python», К. Вордерман, Д. Вудкок
«Как создать сайт. Комикс-путеводитель по HTML, CSS и WordPress», Н. Купер
«Swift для детей. Самоучитель по созданию приложений для iOS», Г. Уинквист, М. Маккарти
«Python для детей. Самоучитель по программированию», Д. Бриггс
«Scratch для детей. Самоучитель по программированию», М. Маржи
Сленг программистов — чтобы лучше понять слова в начале статьи
Педагог-воспитатель, системный администратор ПО с применением технологий ИИ, QA-инженер, специалист в области GameDev
Понравился материал? Расскажите другим