Подборка самых популярных текстов за первую половину января на Medium: гайд для разработчиков по Web 3.0, очень дорогой вопрос на собеседовании, уязвимости Python и другие статьи.
- Ответ на собеседовании, который стоил мне работы с зарплатой $314 000
- Самые глупые уязвимости Python
- Как стать разработчиком в Web 3.0
- Пять признаков программиста-самоучки без опыта
- Как разработчику на React Native повысить свой профессиональный уровень
Ответ на собеседовании, который стоил мне работы с зарплатой $314 000
История о том, насколько непредсказуемым может быть интервью со старшими разработчиками, которая наглядно демонстрирует, насколько программисту важно иметь развитые софт-скиллы. Это касается даже сеньора с двадцатилетним опытом работы и идеальным (по его собственным словам) знанием технической части.
Автору статьи предложили работу в крупной европейской IT-компании с зарплатой около $314 тыс. в год (учитывая опционы). Он успешно прошел стартовое собеседование с рекрутером, ответил на вопросы о своем опыте на втором этапе и решил программистские задачи на третьем лучше других кандидатов.
Проблемы начались во время финального собеседования со старшими разработчиками. После нескольких вопросов про ООП и теорию программирования автора текста попросили рассказать, как он будет действовать в ситуации, когда другой разработчик из команды отказывается предоставлять ему нужную информацию. Тут вместо системного подхода к решению проблем автор рассказал о частных случаях из своего опыта. На следующий этап собеседования его уже не пригласили.
Самые глупые уязвимости Python
Хотя общество и разработчики Python постоянно работают над устранением уязвимостей в языке программирования, некоторые проблемы в нем остаются до сих пор. Разработчик Сабина Карпентер приводит пять примеров:
- Выполнение injection-команд. Ошибки ввода — один из главных недостатков этого языка программирования.
- Использование старых версий языка. Все просто — новая версия создается не только ради новых возможностей, но из-за уязвимостей в старой.
- Создание временных файлов. Их имена генерируются случайным образом и иногда они заменяют важные файлы с данными.
- Проблема с оператором Assert. Ошибка в языке программирования, которая может привести к пропуску операторов проверки.
- Проблема с путями импорта. В частности, с неявным путем, который делает код уязвимым для кибератак.
Читайте также: Как сохранять фокус на протяжении всего обучения: советы от Хекслета
Как стать разработчиком в Web 3.0
Гайд для разработчиков, которых хотят начать работать в области Web 3.0. Это концепция, сформулированная главой Netscape Джейсоном Калаканисом, которую можно определить как «взаимодействие интернета с физическим миром». В первой версии Web был доступен только для чтения, во второй — для чтения и изменения, в третьей — для чтения, изменения и владения.
Для работы в Web 3.0 автор советует изучить блокчейн, смарт-контракты, Solidity и другие технологии — и дает ссылки на источники, по которым это можно сделать.
Пять признаков программиста-самоучки без опыта
Чек-лист программиста и наставника Санджая Приядарши из пяти пунктов, который позволяет определить, есть ли у программиста-самоучки реальный опыт разработки.
Разработчики, которые учились программировать самостоятельно, предпочитают использовать один стек технологий на разных проектах и пишут код в своем стиле, редко задумываясь о его качестве — главное, чтобы он работал.
Самоучки без опыта разработки часто дублируют код и не проводят модульное тестирование, считает автор статьи. Последний пункт в чек-листе касается использования самых разрекламированных технологий. «Самоучки считают, что если разработчик не работает с последним фреймворком и языком, он тратит свою жизнь впустую», — заключает Приядарши.
Как разработчику на React Native повысить свой профессиональный уровень
Разработчик мобильных приложений Саад Хан приводит семь шагов, которые помогут разработчикам на React Native повысить свой профессионализм. Среди них — создание анимации, изучение архитектуры фреймворка, современных подходов к отладке и производительности и практик тестирования кода.
Под каждым шагом указана ссылка на источник, где можно подтянуть тот или иной навык.
Никогда не останавливайтесь: В программировании говорят, что нужно постоянно учиться даже для того, чтобы просто находиться на месте. Развивайтесь с нами — на Хекслете есть сотни курсов по разработке на разных языках и технологиях