«Им проще общаться с компьютером, чем с другими людьми»: что нужно знать о разработчиках

Профессию программиста окружает много стереотипов. Кажется, все давно решили, что айтишники — немногословные интроверты в грязной одежде. А их работа — просто вбивать символы в чёрный экран и получать за это немаленькую зарплату.

На самом деле писать код — интересная и творческая задача. А программисты решают реальные бизнес-кейсы и приносят компаниям большие деньги.

Я ответила на основные вопросы соискателей, предпринимателей и тех, кто только начинает строить карьеру в ИТ.

«Им проще общаться с компьютером, чем с другими людьми»: что нужно знать о разработчиках

Что должен уметь программист, чтобы получить работу в хорошей компании в 2019 году?

Трудоустройство зависит не только от грандиозных умений кандидата.
Немаловажно и то, что ждёт работодатель от конкретной вакансии. Бывает, что компании просто невыгодно брать на относительно простую работу специалиста с супервысокой квалификацией.

Во-первых, это будет бестолковая трата денег.

Во-вторых, сильный разработчик быстро заскучает и перейдёт в другое место.

HR индивидуально подбирает кандидата под вакансии, и программисты тут — не исключение.

При этом в любой компании есть нижняя граница навыков, без которых кандидату будет сложно пройти собеседование.

Нижняя граница у наc:

  • Умение алгоритмически мыслить.
  • Знание основ разработки.
  • Непрерывное самообразование.

Без этого мы точно не предложим кандидату работу.

Все три направления равноценно важны:

  • Плохое алгоритмическое мышление не позволит писать код.
  • Без знаний основ программирования компания потратит слишком много ресурсов на подготовку новичка.
  • Остановка в развитии не даст кандидату быть конкурентоспособным.

Дальше идут знание языков и технологий, опыт и навыки.

Нас не интересует пол и любые другие характеристики кандидата. В «1С-Битрикс» девушки прекрасно работают в отделах R&D, документации, безопасности, администрирования. В ИТ нет места дискриминации, всё решают компетенции.

Нужно ли знать разработчику математику? На каком уровне? Можно ли научиться кодить, если плохо дружишь с цифрами?

Брать поверхностный интеграл по замкнутому контуру для прикладного разработчика, как правило, не требуется. Но всё равно нужно уметь считать и использовать математическую логику. Без этих знаний в коде появятся нелепые баги.

Прикладному программисту не надо быть математиком, но надо уметь мыслить как математик.

Какими качествами, помимо знания технологий, должен обладать разработчик, чтобы получить хорошую работу?

Мы всегда стараемся брать на работу кандидатов с определёнными человеческими качествами. Вот некоторые из них:

  • Любознательность. Хорошо, когда программист не просто использует какой-то метод фреймворка, а выясняет, как он работает. Не просто знает стандартные методы защиты от SQL injection, а разбирается в векторах атаки. Если слышит о новой технологии, то пытается понять, как она работает.
  • Быстрая адаптация к новым знаниям и технологиям. ИТ-отрасль быстро развивается. В ней постоянно появляется что-то новое: возможности в языках программирования, технологии, инструменты. Разработчик должен обладать навыком быстро схватывать новое и уметь подружить его со старым.
  • Умение сотрудничать. Многим программистам нелегко общаться с другими людьми. Но без этого не получится работать в команде. Поэтому важно, чтобы разработчик умел общаться, доносить свои мысли и слушать чужое мнение.
  • Профессиональная честность. Важно, чтобы айтишник умел признавать свои ошибки, реалистично и критично смотрел на разные вещи. Программирование — это прикладное искусство. А в искусстве, в отличие от математики, не всегда есть место строгому доказательству. Поэтому в разработке много технологий и подходов, которые часто противоречат друг другу. Любую задачу можно решить разными способами. И основная задача разработчика — выбрать наиболее адекватный метод.
  • Скрупулёзность. Главная проблема программирования — компьютер делает не то, что хочет человек, а то, что человек «сказал» компьютеру делать. Поэтому для разработчика очень важны точность и аккуратность. К тому же подход «и так сойдёт» даже при сиюминутной выгоде в дальнейшем оборачивается гораздо большими потерями.

Чем мотивировать айтишников, кроме денег?

Программистов, которые любят свою профессию, важно мотивировать не только деньгами, но и интересной работой. Многие разработчики любят сложные задачи, с помощью которых можно научиться чему-то новому. Одно дело — собирать под копирку сайты в конвейерном режиме на готовом движке. А другое — проектировать этот движок.

Не менее важен хороший коллектив. Мы проводим на работе половину жизни, поэтому микроклимат в команде очень важен. В офисе происходит основной обмен опытом между разработчиками. Именно коллеги могут поддержать, если возникнут какие-нибудь трудности.

Также важно признавать заслуги. Работа программиста не всегда видна поверхностным взглядом — основная её часть скрыта от глаз непосвящённых. А хвалят обычно то, что на виду. Поэтому важно поощрять айтишников.

Как меняется профессия разработчика? Что изменилось за последние три года?

Профессия программиста очень молодая. Она бурно развивается. Появляются новые языки, технологии, инструменты. Бизнес и клиенты меняют свои требования.

Сегодня на цифровизацию экономики Россия планирует потратить 2 трлн рублей. Почти любая компания становится ИТ-компанией. На рынке четырёхкратная нехватка программистов.

Сравните интернет десять лет назад и сейчас. Меняются аппаратная база и возможности вычислительной техники. Раньше все пользовались стационарными компьютерами, а сейчас — мобильными устройствами. Программисту нужно всегда учиться, осваивать новые технологии и применять свои знания.

Как правильно ставить задачи и управлять разработчиками? В чём их психологические отличия от обычных менеджеров?

С одной стороны, программисты занимаются творчеством. С другой стороны, у каждой задачи есть прогнозируемый конечный результат. Поэтому управление программистами строят на комбинации разных приёмов.

Надо подобрать способ руководства, который не задушит творческую жилку, будет мотивировать делать больше и лучше. И при этом учитывать требования бизнеса. Универсального совета нет.

Нужно ли высшее образование разработчику в 2019 году? Зачем?

К нам регулярно приходят кандидаты без высшего образования, которые заявляют: «Вышка ничего не даёт, это бессмысленная трата времени». Часто после интервью хочется сказать: «Да… зря ты не учился». Высшее образование учит учиться.

Мне не важно, есть ли у кандидата диплом. Но практика показывает — разработчики без образования реже проходят собеседование успешно.

Правда ли, что большинство программистов — интроверты, и с ними тяжело общаться?

Да, опыт показывает, что большинство айтишников — интроверты. Им проще общаться с компьютером, чем с другими людьми. Или общаться с помощью компьютера.

Но значительная часть работы — общение с коллегами. Всегда нужно выяснять подробности задач, меняться опытом, сдавать отчёты. Поэтому надо уметь разговаривать. К счастью, этот навык поддаётся развитию.

Иногда проблема в общении между программистами и менеджерами возникает из-за того, что они мыслят по-разному.

Менеджер может попросить разработчика сделать: «Семь красных линий. Все они должны быть строго перпендикулярны, некоторые нужно нарисовать зелёным цветом, а ещё некоторые — прозрачным». Для некоторых это — нормальный запрос, а у программиста может начать нервно дёргаться глаз.

В этом случае обеим сторонам лучше попробовать переформулировать ТЗ.

Какой карьерный рост есть у программистов?

Если говорить именно о карьере разработчика, то прямой путь развития: Junior — Middle — Senior/Lead.

Junior решает сравнительно простые задачи под присмотром. Для этого уровня самое главное — желание учиться и развиваться.

Middle работает над довольно сложными проектами под минимальным контролем.

Senior — опытный разработчик, который самостоятельно реализовывает практически любые решения.

Lead — это менеджерский навык, умение вести за собой коллег. Часто большие ИТ-отделы делятся на команды из 4–10 человек. Каждой проектной группой управляет Lead, который отчитывается о результате своему руководителю.

На этом развитие не заканчивается, к уровню Senior можно добавлять регалии технического эксперта, архитектора, ведущего специалиста.

А успешные Lead могут претендовать на должности руководителей.

Несколько советов тем, кто хочет начать карьеру разработчика

Есть такие понятия — вертикальная и горизонтальная карьера. Вертикальная карьера — это громкие должности, огромные деньги, большая ответственность. Горизонтальная — это знания, умения и навыки.

Проблема вертикальной карьеры в том, что всех её достижений можно легко лишиться. И остаться ни с чем. Топ-менеджеру, который не обладает прикладными знаниями, очень тяжело найти новую работу.

При этом достижений горизонтальной карьеры вы не лишитесь в любом случае. А значит, в любой ситуации останетесь «на плаву».

К тому же хорошая горизонтальная карьера автоматом приводит к вертикальной карьере.

Поэтому начинающим разработчикам надо приложить все усилия к развитию «по горизонтали».

Не забывайте, что вся наша жизнь — учёба. Такая уж профессия. Поэтому надо читать, изучать, выяснять и раскладывать по полочкам. Учите новые языки программирования, смотрите на подходы более опытных коллег. Используйте не только те технологии, которые нужны вам сегодня, но и на уровень глубже.

Мы обычно разделяем программистов-кодеров и программистов-разработчиков. Первые могут писать код. Вторые решают проблемы пользователей — учитывают задачи бизнеса и переводят их в технические решения. Скорее вcего, со временем потребность в кодерах будет сокращаться, а в разработчиках — расти. Поэтому важно не ограничиваться только кодом, а смотреть на всё шире.

Если хотите задать мне вопрос — напишите на e.zoloshkova@1c-bitrix.ru

1818
90 комментариев

О, эйчаров пост. Вопрос к вам, дорогие эйчары. С одной стороны вы все время ноете про то, что разработчика днем с огнем не найти, с другой спамите предложениями на линкедине, а с третьей не реагируете на отклики на вакансии по несколько дней. Можете пояснить смысл происходящего?

14
Ответить

Вы пытаетесь поймать на улице кошку и выяснить у неё, почему вообще все коты царапаются. Иными словами, HR-ы везде очень разные. Вы имели дело с ноющими, навязчивыми и нерасторопными. Это не здорово, но данное стечение обстоятельств всё же никак не характеризует общее состояние дел в отрасли

17
Ответить

Понимаю ваше возмущение. Не могу говорить за всех HR, но я стараюсь разбирать все отклики и отвечать всем кандидатам.

2
Ответить

1) Это кумулятивное - "много работы потрачено на Х" превращается в "Х очень сложный и дорогой"
2) Эти "много работы" уходит на спам врукопашную, потому что среднему рекрутеру не оч понятно где норм программер, а где нет. А он еще кобенится и нихрена о себе не пишет.
3) Потому что у канала "запплаиться на резюме" приоритет нижайший. Ну это как "телочка которая тебе клеит" vs "телочка которую клеишь ты". Ясен красен, что вторая лучше и желаннее.

Ответить

Зависит от компании и организации процесса, но у нас резюме кандидата оценивает дежурный разработчик (дежурный по HR). Отсюда и временной лаг: день пока HR соберет отклики и передаст разработчику (у HR есть и другая работа помимо передачи резюме). Дальше дежурный разработчик должен найти время посмотреть резюме, иногда надо посовещаться с коллегами в спорных ситуациях. А бывает что и позвонить бывшим коллегам, навести справки про человека. После этого ответить HR и она уже (тоже по мере наличия времен) даст ответ кандидату, отказ или согласовать время интервью.

Просто в процессе участвует далеко не один человек, потому иногда может и затягиваться. Но ожидать что HR ответит прям через час после отклика, это прям как-то уж через чур оптимистично. Пара дней нормальное время.

Ответить

На самом деле писать код — интересная и творческая задачаВ действительности все не так как на самом деле (с)

18
Ответить

Программистов, которые любят свою профессию, важно мотивировать не только деньгами, но и интересной работой

интересной работой которой у вас нет, а на деньги вы жмётесь. Как пишет Нестерук - hr в компании для того, чтобы вас обмануть.

Высшее образование учит учиться.

Бред. Учиться учит сама учёба (хочешь научиться плавать нужно плавать), а учиться можно как в ВУЗе так и самостоятельно. Если человек освоил значительный объём информации то он уже знает, как ему осваивать материал дальше. А если нет то не важно в ВУЗе ли он не смог освоить или самостоятельно. Он не смог и не знает как.

16
Ответить