Сергей Кузнецов @SergeyKuznetsov
22 Марта, 16:15
Периодически я участвую в конкурсах по программированию. Их когда-то проводил ВКонтакте, DST Global, сейчас проводит Телеграм, изредка Яндекс, Мэйл.ру (фуу) и другие компании. В студенчестве доводилось и в соревнованиях ACM участвовать немного.

Но сейчас расскажу, наверное, про худшую попытку провести конкурс по олимпиадному программированию — от компании Ozon.

Начнём с того, что я не смог найти нормальных официальных анонсов — ссылку на ozondev.ru подсовывают в основном в виде рекламы в ВК (при этом в шапке сайта стоит Ozon Tech, а не Ozon Dev).

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

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

Утверждается, что якобы легкие и средние задачки проверяются автоматически (что было бы логично для конкурса по программированию), но это ложь: все решения зависают в статусе «On review» на несколько дней, а потом приходит письмо с текстом «Наши эксперты проверили решение; к сожалению, сегодня твой код не оказался в числе лучших». Это всё: никаких пояснений, что именно «экспертам» показалось не так, не приходит. Даже самому посмотреть свой код уже не получится: только попробовать решить ещё одну задачку в категории (авось теперь эксперту понравится).

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

Короче, сил Озона хватило только на то, чтобы сверстать красивый лэндинг. Возможно, ребята пытались создать впечатление технологически продвинутой компании и привлечь крутых специалистов, но кажется по факту у них получилось добиться обратного.
Сергей Кузнецов @SergeyKuznetsov
18 Марта, 23:52
Джон проснулся, выпил кофе и начал карьеру (junior developer). Получает Джон полтосик (50 р), в ус не дует, кодик набирает, на ревью он отправляет. Старший разработчик (senior developer) Сеня помогает Джону, таски с ним решает, про свои не забывает, 150 р он получает, очень даже молодец. Сеня когда-то был мидлом (middle developer), как сейчас Мутунду. Мутунду зеленый чай чифирит, Сеню не тревожит, добрым словом всем поможет, тасочку замержит, соточку (100 р) в карман. Что Сеня с Джоном, что два Мутунду бабос куют, не ведая печаль. Порочный круг - чтоб стать сеньoром, нужно стать джуном (или как бы сказали инженеры лады калины: чтобы стать хорошим дизайнером, нужно стать плохим). Мутунду ощущал сеньoрство всем нутром: зп сейчас 100р, а будет 150р - вроде в плюсе он, но чувствует подвох. Интроспективно Мутунду работает полдня, а полдня пинает то, что пинают обычно футболисты (многие Мутунду обычно испытывают страх, что нет задач на след полдня, и редко когда осознают, что они стали работать в два раза быстрее). Стань Мутунду Сеней, вторые полдня вместо пинания был бы кодинг с Джоном, а что лучше - хер поймешь. Контора ратует за помощь Джону и тимфит, предлагая позицию тимлида, намекая, что связка джун-сеньер лучше масштабируется.
Сергей Кузнецов @SergeyKuznetsov
18 Марта, 23:52
В предыдущем посте на эту тему мы предложили несколько сервисов, которые могут помочь в работе программиста. Сегодня речь пойдет о ресурсах, которые позволят расслабиться в процессе работы, не теряя в мотивации.

• Habitica
Представьте, что вы – главный персонаж RPG-игры, и, чтобы копить опыт и повышать свой уровень – нужно выполнять рабочие задачи. В Habitica даже есть игровое имущество и система вознаграждений. Объединяйтесь с коллегами в гильдии и выполняйте групповые квесты.
• Сайт musicForProgramming
Это музыкальный генератор для повышения производительности. Интерфейс сайта имитирует редактор кода, доступно 54 плейлиста. Большинство треков инструментальные, помогают расслабиться, не отвлекая от работы.
• FocusMate
Сервис, который спасет от прокрастинации, если вы работаете на удаленке. Здесь можно найти партнёра по работе и следить за продуктивностью друг друга.
• Clockify
Удобный трекер рабочего времени, который помогает отслеживать, насколько вы продуктивны. Здесь можно установить оценки для каждой задачи, время перерыва и т.д.

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

#Работа #Карьера #РаботаРосбанк #Росбанк #ПолезныеСервисы #Подборка
Сергей Кузнецов @SergeyKuznetsov
18 Марта, 23:50
Telegram там опять проводит адовый по сложности конкурс, в этот раз заставляют реализовать (видимо с нуля) клиент для Apple Watch. С учетом хардкорности их протокола и количества экранов, которые они нарисовали (см. скрин), думаю, участников будет немного, а достойных работ и того меньше.

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

И поскольку я всё чаще сталкиваюсь с тем, что всё меньше моих друзей видит подобные анонсы во ВКонтакте (и я виню в этом только сам ВК), я наконец создал для них канал в Телеграме: https://t.me/missing_usern... (но не смог придумать смешное название, поэтому пока так). Подписывайтесь, возможно о каких-то вещах потихоньку начну писать туда.

#Телеграм #телега #telegram #PavelDurov #ПавелДуров #SwiftUI #AppleWatch
Сергей Кузнецов @SergeyKuznetsov
18 Марта, 23:48
Сергей Кузнецов @SergeyKuznetsov
18 Марта, 23:48
?Мне не прислали ответа после собеседования, стоит ли напомнить??

В данном случае обычно играет человеческий фактор, в конце собеседования обязательно спросите до какого числа ожидать ответ. Дело в том, что кто-то, на пути к вакансии вашей мечты, может просто забыть сообщить вам о том, что вы приняты. У меня лично была ситуация, когда мне забыли дать ответ после собеседования. Через пол года случайно встретил того, кто меня собеседовал. Он спросил почему я не вышел на работу, ведь они сделали мне оффер. Из нашего разговора выяснилось, что HR, которая вела моё дело, просто забыла сообщить мне радостную новость. Мне на самом деле повезло, потому что к тому времени я нашёл место получше и с более высокой ЗП. Однако если решение по вашей кандидатуре к вам не дошло, скажем спустя 5 дней после собеседования или обозначенного срока, то смело пишите и напоминайте о себе, вдруг упустите то, что так долго искали.

#программист #программирование #кодер #код #java #C ++ #языкипрограммирования #созданиесайта #сайт #веб -сайт #разработатьсайт #веб -студия #разработкасайта #создатьсай
Сергей Кузнецов @SergeyKuznetsov
18 Марта, 23:46
?Принят. Без коммерческого опыта разработки?

На собеседованиях попадаются как прожжённые специалисты, так и учащиеся университетов без опыта, но страстно желающие работать. В некоторых случаях такие ребята показывают результаты сильно лучше, всё дело в их желании развиваться. Совсем недавно, я удачно собеседовал студента без коммерческого опыта разработки на должность Middle разработчика. Он подал заявку на вакансию в моей компании, сначала я хотел отклонить его заявку, ввиду отсутствия опыта, но решил дать ему шанс из-за хорошего описания в разделе обо мне. Казалось бы, человек без опыта, да ещё и на очной форме обучения, он должен пройти максимум на Junior и то скорее на стажировку. Однако практика показывает, что увлечённые студенты лучше разбираются в технологиях и подходах к программированию. Вот и этот кандидат показал отличное понимание работы компонентов Spring, структур данных, архитектур Web приложений. У него имелись GitHub репозитории с актуальным кодом, где он выкладывал не учебные, а личные проекты. В них он демонстрировал решение реальных задач, не те глупые - "создать REST контроллер с репозиторием данных и выдать данные по запросу", а например, построение маршрутов с сохранением истории запросов пользователя. Более того, у него был живой аккаунт на HackerRank и StackOverflow, что тоже подкупает интервьюеров. Спустя пол года работы, я понял, что принятие его на работу было правильным решением, он не подвёл мои ожидания.

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

#программист #программирование #кодер #код #java #C ++ #языкипрограммирования
Сергей Кузнецов @SergeyKuznetsov
18 Марта, 23:45
?Зачем меня спрашивают про другие языки и библиотеки??

Всё дело в кругозоре, если человек кроме одного языка ничего не видел, то скорее всего он либо новичок, либо ему программирование в целом не доставляет удовольствия и он просто погнался за деньгами. Мышление интервьюера в такой ситуации следующее: если человек писал даже простейшую программу, на языке, который сильно отличается от его основного (например C++ и Java), то скорее всего у него больше заинтересованность в том, что он создаёт и делает. Действительно, такие кандидаты показывают лучшие результаты, так как понимают, что некоторые из задач бизнеса гораздо быстрее и проще решить используя более проработанный подход, нежели изобретать велосипед.

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

#программист #программирование #кодер #код #java #C ++ #языкипрограммирования
Сергей Кузнецов @SergeyKuznetsov
18 Марта, 23:43
?А вдруг я вам подойду? ?

На очередное собеседование, к нам на вакансию Java разработчика, подал резюме студент 2 курса магистратуры, который начал свой путь в IT на Python. У него было несколько заманчивых репозиториев на Github и год опыта коммерческой разработки, так что я решил связаться с кандидатом в онлайн-режиме и пообщаться.

Разговор начался с нескольких простых технических вопросов и немного затронули сам язык Java. В целом он смог сообразить как на них ответить, но у меня закралось чувство, будто он не совсем понимает, что говорит. Далее мы обсудили его желания по поводу проекта и технологий и вот здесь вскрылся важный момент, он не совсем понимал, что он хочет от компании и от проекта. Затем я прямо спросил, хватит ли ему знаний по Java, чтобы пройти техническое интервью, он решил не подавать виду. На вопрос как вы оцениваете свои знания по Java от 0 до 10, он ответил 8, я предложил ему получше оценить свои знания, так как далее последуют технические вопросы на основе этой оценки. Кандидат хмыкнул и ответил: "Ладно, на 7 твёрдо знаю". После этого ответа, от меня посыпались несложные вопросы, однако было видно, что он сильно плавает в тематике, более того, он плохо разбирался в типах и структурах данных, имел отдалённое понятия зачем нужны интерфейсы. Задача с наследованием поставила его в тупик. В то время когда я задавал вопрос, было слышно, что он пытается загуглить информацию. Вопросы были из разных категорий, так что он вполне мог проявить себя со знаниями Python, но и этого не произошло.

За 30 минут разговора стало понятно, что кандидат кроме как на Python ничего и не писал. Более того мы обсудили его репозитории и стало понятно, что он в коде очень плохо разбирается. Не могу судить о его опыте, впрочем, есть подозрение, что и он "нарисованный". В конце нашего разговора, я спросил зачем же он с опытом Python хочет пойти на Java, ответ поступил незамедлительно: "А вдруг я именно вам и подойду. Я на шару попробовал. У вас ЗП хорошая. Какая разница, какой язык? Все языки одинаковые, то что вам нужно - вы же и научите.". Такой настрой конечно порадовал, но пробелы в основах программирования и желание получать ЗП минимум 120к выглядит смешно.

#программист #программирование #кодер #код #java #вакансии #собеседование
Сергей Кузнецов @SergeyKuznetsov
18 Марта, 23:41
?А нужно ли вам идти в программисты??

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

Все мы жаждем хорошей жизни, но вы должны трезво оценивать свои желания и возможности. Если у вас не будет страсти к этому виду деятельности, то на зарплату в 80-120к, и уж тем более, в 200-400к в месяц вы не выйдете. Самая большая проблема в знаниях. Те, кто выбрал путь программирования без увлечения, будут знать сильно меньше, чем те, у кого есть огромный интерес. Ни один университет, ни один курс не привьёт вам страсть к этой профессии и не положит в ваш мозг те знания, которые вам будут необходимы для работы.

В моей группе в университете, по специальности программирования, на 1 курс поступило 30 человек, из них только 15 закончили бакалавриат и 11 магистратуру. Самое интересное, что только 6-8 человек пошли работать программистами. Многие мои одногруппники поняли, что сделали ошибку и начали её исправлять, один пошёл в театральный, другой стал монтировать видео, третей была интересна бизнес-аналитика. Это прекрасно, что они вовремя осознали, что выбрали неверный для них самих путь. Они демонстрируют отличные успехи в той области, что им по душе.

В одной книге прочитал, несмотря ни на что, можно стать специалистом в любой области, достаточно потратить 10000 часов на практику. Вот и считайте, сколько лет у вас займёт кодинг без желания, уделяя по 2 часа после работы.
Сергей Кузнецов @SergeyKuznetsov
18 Марта, 23:39
«Цифровой прорыв» объявляет старт нового сезона!

17 марта в 15.30 на пресс-конференции в ТАСС мы вместе с партнёрами расскажем о концепции конкурса в 2021 году, новых возможностях для участников , новых фичах, изменениях в подходе к формированию кейсовых заданий, а также географии проведения хакатонов ?

Трансляция пресс-конференции будет доступна на сайте конкурса. Зрители смогут задавать вопросы спикерам! Как именно — расскажем в следующих постах ?
Сергей Кузнецов @SergeyKuznetsov
18 Марта, 23:37
Новые трендовые махинации бизнеса по продаже мод меню набирают обороты среди западных разработчиков. Мои знакомые разработчики тоже подхватили тему и предложили принять участие в нестандартном формате реализации приват мод менюшек для гта 5. Суть проста, создается реально рабочее меню и поддерживается разработчикам до тех пор, Пока оно имеет спрос ... Как только меню перестает приносить прибыль, то и нет смысла его поддерживать а лучше на основе (идентичные код) пересоздать меню под другим хайп названием как абсолютно новое и реализовывать его снова, тем самым перепродать тех же баранов только в других шкурах ?

На данный момент я не поддерживаю такую идею.

Ребята уже объявили о прекращении поддержки своего меню и закрытии проекта, паралельно создают новый, 1 в 1 (идентичные кодинг) проект якобы с технологий на основе крипто кода ?

Вынужден признать, что на старте пиара им удалос
Сергей Кузнецов @SergeyKuznetsov
18 Марта, 23:37
? Искусственный интеллект
Что это такое и почему это так важно
Одно из направлений в нашей школе - это программирование, мы хотим затронуть тему искусственного интеллекта из-за связи его с миром кодинга и большой актуальности в ближайшие годы.

✨ Искусственный интеллект (ИИ) позволяет компьютерам обучаться на собственном опыте, адаптироваться к задаваемым параметрам и выполнять те задачи, которые раньше были под силу только человеку. В большинстве случаев реализации ИИ — от компьютерных шахматистов до беспилотных автомобилей — крайне важна возможность глубокого обучения и обработки естественного языка. Благодаря этим технологиям компьютеры можно «научить» выполнению определенных задач с помощью обработки большого объема данных и выявления в них закономерностей.

В чем заключается важность искусственного интеллекта?
✨ИИ позволяет автоматизировать повторяющиеся процессы обу
Зарегистрироваться