Найти тему
VK Cloud

Как не превратиться в бомжа, если ты разработчик

Оглавление

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

Времена, когда можно было прийти на собеседование, умея лишь писать программы в стиле “Hello world” и уйти с него с жирным предложением, закончились. А за средний набор скиллов сегодня можно получить только среднюю зарплату. Почему это происходит и что нужно делать, чтобы всегда работать на топовых проектах и получать много денег? Сейчас расскажем!

Юристы, сантехники и менеджеры тоже хотят кодить!

Большие зарплаты в IT манят людей. И сегодня на этот рынок лезут все — студенты, менеджеры, домохозяйки, сантехники, математики и юристы. Они осваивают определенный набор языков и технологий и идут заколачивать бабло, уютно устроившись в офисном кресле. Двухмесячные курсы верстки на HTML – и новая боевая единица рынка информационных технологий готова производить на свет простенькие веб-страницы за довольно посредственную зарплату.

Лучший способ сохранить свои позиции на рынке — копить опыт. Под словом “опыт” мы имеем в виду не количество человекочасов, втупую проведенных за решением однотипных задач. Опыт — это разнообразие проектов, рабочих ситуаций и инструментов, с которыми вам приходилось сталкиваться. Специалист, проработавший 5 лет и запустивший 20 разнообразных проектов, имеет куда большую техническую смекалку и интуицию, чем специалист, запустивший за 5 лет 50 однотипных проектов.

Сфокусируйтесь на разнообразии своей работы и инструментов — это выгодно отличает вас от тех, кто работал с ограниченным наборов проектов и технологий.

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

Источник: https://www.survivalistboards.com
Источник: https://www.survivalistboards.com

Дом начинается c фундамента

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

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

Разберитесь в том, как компьютеры работают с памятью, дисками и сетью, как устроены операционные системы и каким образом буквы из вашей программы превращаются в машинные инструкции. Рекомендуем книги о сетях и операционных системах профессора Танненбаума, теорию компиляции кода Ахо и Ульмана, пратики написания кода Стива МакКоннелла.

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

Источник: https://archive.4plebs.org/
Источник: https://archive.4plebs.org/

Программирование стандартизируется

Задачи в IT с течением времени становятся все более похожими друг на друга: запиши вот это в базу данных, обрежь картинку вот так, сделай вот такую витрину магазина с вот такими кнопками. Растет число людей, которые легко справляются с однотипными задачами. Найти специалиста, который напишет серверное приложение для, допустим, электронной коммерции, становится всё проще и дешевле. И поэтому зарплаты таких инженеров растут не так активно — всегда найдется кто-то, кто сделает работу относительно недорого.

Хотите больше денег — идите в нетривиальные области разработки: искусственный интеллект, анализ данных, сложные алгоритмы, высокие нагрузки. Чем сложнее предметная область — тем меньше инженеров в ней работает. Легко найти программиста для разработки торговой площадки. Сложно найти спеца, который сделает высоконагруженную обработку видеопотока нейронными сетями.

Все решает мозг

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

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

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

Мощный базовый интеллект делает из вас разработчика совершенно другого качества, чем специалисты, которые лишь умеют гуглить алгоритмы и засовывать их реализацию в очередной фреймворк. Быстрый и ясный ум всегда хорошо оценивается в материальном эквиваленте.

“Специализация — удел насекомых”

Так говорил писатель Роберт Хайнлайн.

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

Специалист, который знаком с мобильной разработкой, системным администрированием, backend-системами и системным программированием, способен решить практически любую задачу (ну или правильно сформировать команду и пути решения для разруливания любой инженерной проблемы). Специалист с широким техническим кругозором — большая редкость и удача для любой IT-компании.

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

Способность смотреть на задачи с разных сторон дает вам огромное преимущество на рынке.

Источник: http://forum.feldsher.ru/
Источник: http://forum.feldsher.ru/

Бег на месте

Чёрная Королева сказала Алисе, что нужно бежать, чтобы просто оставаться на месте. А чтобы куда-то попасть, нужно бежать ещё быстрее.

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

И тогда у вас всегда будут мега-интересные проекты в работе и много койнов на счету.

Оригинал статьи размещен здесь: https://mcs.mail.ru/blog/kak-ne-prevratitsya-v-bomzha-esli-ty-razrabotchik/