Настоящему программисту работать с кодом всегда интересно, он воспринимает свою деятельность как творчество, хотя большинству людей этот труд покажется скучным и монотонным. Как результат, кодеры зарабатывают хорошие деньги, но за стабильную результативную и ежедневную работу. Халявы здесь нет.
Эта профессия подходит людям с инженерным складом ума, любящим точные науки, алгоритмы, упорядоченность и четкость. Но при этом творческим и высокоинтеллектуальным, пытливым и сообразительным, стремящимся оптимизировать процессы и готовым к рутинным операциям.
Каким людям не подходит?
Думаю, ты уже знаешь ответ на этот вопрос. Людям энергичным, любящим общение, которые с утра до вечера делают миллиарды дел, желают вдохновлять других и предпочитают все… кроме рутинного сидения за компьютером по 10 часов в день. Да, такие люди много где хороши, но только не в программировании. Но бывают и исключения.
Так что прислушайся к себе. Если ты готов писать код даже без денег, просто ради удовольствия и интереса, в никуда, «в стол», и ты реально тратишь на это свободное время – да, ты программист. Но если ты больше хвастаешься друзьям, как у тебя классно получается писать код, чем что-то делаешь, – скорее всего, ты маркетолог или евангелист.
Одним словом, профессия программиста, скорее всего, не подойдет для экстравертов, импульсивных и эксцентричных людей.
Одна из самых важных вещей, которая очень ценится в индустрии, – умение доводить начатое до конца. В начале карьеры это может быть не так очевидно. Сложные и объемные задачи всегда требуют уточнений. Не хватает чего-то по дизайну – сходите к дизайнеру и обсудите это с ним. Нет понимания, что должно происходить, когда пользователь выполнил определенные действия? Добейтесь этого понимания от владельца продукта, менеджера или заказчика. Задача готова только тогда, когда ею пользуются реальные люди, а конечный заказчик с гордостью показывает всем новый функционал. Можно потратить сколько угодно времени на написание кода, но в этом не много смысла, если им не будут пользоваться. Всегда старайтесь быть тем, кто доводит задачи до конца. Это прямой путь и к эффективной работе команды и компании и конкретно к вашему карьерному росту!
Как начать?
У будущего программиста часто пятерки по математике, физике и другим точным наукам. Тут важно получить фундаментальные знания и классическое образование. Можно через онлайн-курсы, но оптимальный вариант – пять лет в университете.
И главное, уже со школьной скамьи ты можешь попробовать свои силы в создании игр на популярных движках. Начни разрабатывать свой инди-проект. Можно самому, но лучше с друзьями. Так ты подтянешь и теорию, и практические навыки. Конечно, твоя игра, может, и не будет красивой, актуальной, востребованной… Но это твой ценный опыт, который поможет тебе понять, как в принципе делаются игры, чтобы потом ты применил эти свои навыки при создании какого-нибудь Apex Legends volume 2.
Начинай изучать с помощью видео, мультимедийных учебников и книг различные языки программирования: C# и C/C++, Java, Javascript, SQL. Прямо сейчас! Найди наставника, черпай информацию с форумов.
Если планируешь связать будущую карьеру с робототехникой и не только, не помешает знание языка программирования Python.
Советую также уже начать изучать внутренность движков Unity и Unreal Engine. Придется сверять код каждый день, для этого есть репозитории систем контроля версий, например Git Github.
Сколько зарабатывает программист?
В среднем – выше рынка. Они крайне востребованы. Зарплата начинающих программистов в игровой индустрии России и СНГ обычно находится в диапазоне $1000 (Junior, начинающий разработчик) – $2000 (Middle, разработчик, имеющий несколько лет опыта). Стабильные senior-программисты с хорошими академическими знаниями зарабатывают от $3000 до $5000 в месяц (часто такой программист отвечает за глобальное видение, проработку архитектуры проекта и менторство младших разработчиков). Программисты-гении, frontend, backend, которые умеют еще и хорошо геймдизайнить, вставлять графику, писать приложения, – от $5000 до $10 000.
Структурных программистов с фундаментальным знанием математики и языков программирования, разбирающихся в современных движках, – единицы. Компании постоянно переманивают их друг у друга, они всем нужны. Но повторю важную вещь: