Поддержка  •  Дневник  •  Без рекламы  •  О сайте  •  Реклама  •  Поставить баннер  •  Fleshlight  •  Прислать  •  Хроника  •  Translate Гости: 9    Участники: 0 Авторизация Авторизация   Регистрация 
Метод Научного Тыка
RULVEN
Поиск  
Blackball iMag | интернет-журнал
Каталог


Начало » Разработка ПО » Программист 2020: Терминатор отдыхает
Мне повезёт!

Программист 2020: Терминатор отдыхает


Программист 2020: Терминатор отдыхает
Добавлено: Пн 12.10.2020 • Sergeant
Источник: источник
Просмотров: 497
Комментарии: 0


Программист сегодня не то что прежде — одного знания языка (или языков) программирования мало, чтобы быть действительно конкурентным на рынке труда. Ты можешь сколько угодно прописывать в коде на С++ указатель на указатель на указатель, но какой в этом толк, если твой работодатель плачет (менее ванильные ребята орут, лишают премии, угрожают и стоят на стороне клиента — в смысле живого клиента и пользователя вашей программы, а не того, что обменивается информацией с сервером)? Какое-то время назад что гаджеты, что концепции управления, что тенденции подбора персонала тяготели к одному и тому же: модульности, дискретности, а то и даже примитивизации и узкой специализации сотрудников, софта, инструментов. Но эволюция повернула не туда и теперь мир требует умные устройства, которые умеют всё, многофункциональные программы и приложения (привет, Яндекс Go) и, конечно, универсальных специалистов. Концепция «человека-оркестра» вернулась в тренд, не успев уйти из него.

Итак, что вам нужно для полного программистского счастья соответствия набора в конце 2020?

▍ Структуры данных и алгоритмы

Сейчас очень много программистов-самоучек с хорошими скиллами кодинга на конкретном языке программирования. Это переученные с других профилей технари, «вхожденцы в айти», любители самообразования и т.д. они действительно понимают, как писать код, прекрасно разбираются в функциях и синтаксисе, владеют некоторыми фишками, а особо продвинутые вникли в ООП и паттерны. Это уже много для того, чтобы быть конкурентным на рынке труда.

Но в первые же рабочие дни на хорошем проекте начинаются проблемы и становится очевидно, что учебные задачки, которые сделали тебя классным кодером, не имеют ничего общего с кодом в продакшене. Чтобы написать хороший, профессиональный код, нужно разбираться в структурах данных и алгоритмах, уметь проектировать программное обеспечение. Мне приходилось видеть весьма толковых программистов, которые не использовали в работе массивы, деревья, связанные списки, сортировки и т.д. У таких ребят две отличительных черты: 1) они упрямы и уверены в своём превосходстве; 2) они тратят адски много времени на написание того, что уже существует как структура — я видел изобретённые заново сортировки и деревья, это страшно и странно. Молчу уже о ресурсах.

Поэтому программист любого уровня должен легко оперировать структурами и существующими алгоритмами. К слову, HR-специалисты и CIO страшно любят использовать эти темы на собеседовании. Стоит ли превращать собеседование в экзамен, тема отдельной статьи, но факт остаётся фактом.

▍ Бизнес-процессы

Я ещё помню благостные времена, когда можно было создавать продукт своей мечты, а продуктологи, маркетологи, продажники превращали его в продукт мечты клиентов компании. Сейчас, конечно иное: и коммерческие ребята расслабились, и клиент стал разборчивым, и конкуренты научились делать красивые штуки вместо прежних оглоблей на коленке. Сейчас любой программист и любой разработчик должен разбираться в бизнес-процессах, для которых он создаёт программное обеспечение, должен минимально разбираться в сфере деятельности компании. И здесь не пойдут аргументы вроде «Хирург не обязан быть десять раз прооперированным», потому что это подлог аргументации и софистика: хирург, кроме места разреза и конкретного органа, разбирается в анализах, фармакологии, реаниматологии, общей анатомии, физиологии и проч.

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

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

▍ Математика

Царица полей. Ну или наук, не суть. Как бы мы с вами в айтишном мире ни избегали математики, с каждым годом её важность возрастает. Ни машинное обучение, ни нейронные сети, ни искусственный интеллект без знания математики разработать не получится. И если вы, разработчик сайтов или фронтендер, сейчас хмыкнули и пошли читать следующий пункт, остановитесь, это касается всех. Потому что в скором времени программы без хоть каких-то зачатков ML/AI/нейросетей/BigData будут в ряде отстающих. Поэтому, выход простой: пока не поздно, изучайте необходимый срез математики.

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

▍ Базовые знания в смежных областях

Этот пункт может возмутить любого, но да — программисту и его коллегам будет лучше, если все они будут чуть больше знать о работе соседа по опенспейсу, кабинету, команде. Если вы программист, вам лучше знать какие-то основы UI/UX, фронтенда и бекенда, системного администрирования, тестирования и т.д. Это позволит выстраивать продуктивный рабочий диалог без взаимных обвинений и подозрений. Не нужно вникать в самую глубину предмета — достаточно базового учебника, онлайн-лекций и интернет-курса. Если вы реально заинтересованы в карьере разработчика, можно пройти какую-нибудь очную программу комплексной разработки ПО — там всё будет дано в умеренных объёмах, правда, чаще всего платно.

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

▍ Техно-трио, без которого в будущее не пустят

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

  1. Облачные технологии. Облако — это не только экономия и простая масштабируемость для компаний, это ещё и огромные вычислительные мощности, которые доступны любой компании (а вот собственные сервера на такие мощности практически недоступны по стоимости и сложности управления). За облачными системами наше с вами инфраструктурное будущее. Поэтому понимание и умение использовать Amazon Web Service (AWS), Google Cloud Platform (GCP) или Microsoft Azure гарантированно увеличат стоимость программиста на рынке труда.
  2. Микросервисы. Микросервисная архитектура решает многие проблемы безопасности, управления и эксплуатации высоконагруженных проектов, работы с огромными базами данных. Микросервисные архитектуры пока востребованы, в основном крупными компаниями, но совсем скоро они шагнут и средний бизнес. Спрос на программиста с таким навыком будет ещё долго (пока наносервисы не изобретут).
  3. Контейнеры (пока это конкретно Docker и Kubernetes) упрощают процесс развёртывания ПО на проекте, облегчают тестирование приложений и процесс управления зависимостями, гарантируют масштабирование на лету. И самое интересное, что в отличие от микросервисов, контейнеры используют компании любого уровня, поскольку это удобно, просто в изучении и широко распространено.

▍ Софт скиллы не дичь какая-то

Я люблю токсичных сотрудников компаний. Если пиарщица или менеджер проектов нервно поправляет каре и говорит, что в компании «джавист Сергей токсичный», я знаю, что скорее всего джавист Сергей угнетает коллег своим объёмом знаний, профессионально находит ошибки и из лучших побуждений их занудно объясняет, а из-за раздражения окружающих замыкается в себе и ведёт себя грубовато. Но он профи — и таких немало. Но, увы, люди — существа социальные, с тонко организованной психикой и поэтому не выносят людей без эмпатии, социального вектора и, простите, эмоционального интеллекта. Поэтому пока джавист Сергей морозится и ведёт умные разговоры с гарбадж коллектором, питонист Савелий уже и сеньор, и метит в тимлиды, и побывал на трёх конференциях, и с начальством дружбу водит, и с клиентом на выставку в Барселону летит (вы же уже поняли, что примеры выдуманные и все совпадения случайны, ведь никто в 2020 в Барселону не летит).

Сейчас время коммуникаций, которые чем реже, тем ценнее, поэтому записывайте, что вам нужно прокачать:

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

У меня для вас хорошая новость: большинство из софт-скиллов установлены у человека по умолчанию, нужно просто грамотно из себя вытащить эти навыки. Не ходите к тренерам и коучам, 2-3 базовые книги по организационной психологии, конфликтологии и социальной психологии сделают вас продуманным собеседником.

Вообще, интересно развивается наша жизнь: я сейчас вспоминаю, какими прорывными были Google Glass, как чётко зашли Pokemon Go, как взлетели и тут же рухнули разные системы управления проектами. Это были волны хайпового спроса, спроса на трендах. Поэтому перечисленные навыки программиста в 2020 году кажутся такими «кондовыми»: они долгосрочные, а не на пару сезонов. То есть с ними можно дожить примерно до 2030 года без особого напряга. А остальной мир держится на этих слонах. Ну, а языки программирования, конечно, черепаха под слонами, основа основ.

К чему это мы? С днём программиста, друзья! Вы меняете жизнь к лучшему с помощью кода, вы делаете требования рабочими приложениями, вы читаете ТЗ между строк и знаете, что думает заказчик или тимлид. Любите свою работу, растите над ней и над собой, и пусть не будет пропущена ни одна «;». Всем hello world и меньше багов.



Мне нравится 0   Мне не нравится 0



Комментарии

Чтобы добавить видео с YouTube, нужно написать [@youtube=xxxxx] , где xxxxx – ID видео.


Комментарии: 0
Нет ни одного комментария.
RSS-лента
Поделиться ссылкой:
Удаление грудей
Все тонкости анального секса Все тонкости анального секса
Анальный секс для начинающих Анальный секс для начинающих
Рыба с картофелем в духовке: 9 рецептов Рыба с картофелем в духовке: 9 рецептов
Тестирование PRTG Network Monitor и сравнение с Zabbix Тестирование PRTG Network Monitor и сравнение с Zabbix
Грог: рецепт в домашних условиях, правила приготовления Грог: рецепт в домашних условиях, правила приготовления
10 удивительных древних театров 10 удивительных древних театров
25 самых дорогих видов шоколада в мире 25 самых дорогих видов шоколада в мире

Новое
Soft skills: 18 самых важных навыков, которыми должен владеть каждый работник 2 дня назад, 09:08
Soft skills: 18 самых важных навыков, которыми должен владеть каждый работник
30 вопросов на собеседовании фронтенд разработчика Пн 15.04.2024
30 вопросов на собеседовании фронтенд разработчика
15 соусов для креветок, которые ты захочешь приготовить Сб 13.04.2024
15 соусов для креветок, которые ты захочешь приготовить
10 простых рецептов рыбы в кляре Пт 12.04.2024
10 простых рецептов рыбы в кляре
2 простых рецепта алкогольного пунша в домашних условиях Пт 12.04.2024
2 простых рецепта алкогольного пунша в домашних условиях
20 рецептов соуса барбекю, которые готовятся проще простого Пт 12.04.2024
20 рецептов соуса барбекю, которые готовятся проще простого
8 лучших рецептов мегрельского соуса Пт 12.04.2024
8 лучших рецептов мегрельского соуса
15 лёгких рецептов соуса Унаги в домашних условиях Пт 12.04.2024
15 лёгких рецептов соуса Унаги в домашних условиях
Ср 10.04.2024
Секреты здоровых ногтей: Уход и питание для красивого маникюра
High performance object-oriented data access with Dapper Ср 10.04.2024
High performance object-oriented data access with Dapper
Книги
Coding clean, reliable, and safe REST APIs with ASP.NET Core 8 3 дня назад, 10:09
Coding clean, reliable, and safe REST APIs with ASP.NET Core 8
Год: 2023
Building IoT Visualizations using Grafana Вт 09.04.2024
Building IoT Visualizations using Grafana
Год: 2022
Getting Started with Grafana Вт 02.04.2024
Getting Started with Grafana
Год: 2022
Prometheus: Up & Running Вт 26.03.2024
Prometheus: Up & Running
Год: 2018

Разработано на основе BlackNight CMS
Release v.2024-04-16
© 2000–2024 Blackball
Дизайн & программирование:
О сайтеРеклама
Visitors
Web-site performed by Sergey Drozdov
BlackballРекламаСтатистикаПоддержка | МузыкаПлейлистыКиноВидеоИгрыАудиоПрограммыСтатьиКартинкиЮморФорумДневник сайтаПрислать контент