Привет Хабр! Всего каких-то пару лет назад на страницах нашего любимого ресурса красовались вдохновляющие статьи успешного успеха, как вчерашний сантехник / таксист / сварщик /
Ты кто такой?
Позвольте представиться. Я являюсь обычным .NET-разработчиком в рядовой государственной компании, основным способом заработка которой является разработка программного обеспечения. За спиной оконченный с отличием %City%ГТУ где-то за МКАДом, служба в рядах Вооружённых Сил России, и мечтания о светлом будущем. Звёзд с неба не хватаю и на роль нового Короля разработки не претендую (привет Фил).
Как и многие, я познакомился с программированием ещё в школьные годы. Правда, в силу возраста, я начинал с Pascal в красивой IDE. Потом были поделки калькуляторов всех мастей на Delphi, которые даже использовались при решении домашних задач по математике. Потом учёба в университете, великий и могучий C++, понимание что всё тлен и путешествие в чудесный мир C# с LINQ и асинхронностью.
Вы резонно можете спросить, к чему эта биография? Постараюсь объяснить кратко. Когда в силу не зависящих от меня обстоятельств необходимо было решить, какую профессию получать, я твёрдо был уверен, что программирование — это моё, поэтому колебаний было минимум. Я помню бессонные ночи непрерывного кодинга, которые вставляли не по-детски. Помню книги, знания из которых я поглощал медленно и размеренно, на 30 страниц в день сотня-другая строк кода. Потом переезд в северную столицу, волнительные первые собеседования, первые офферы и понимание своих слабых сторон. Как мне кажется, подобный путь проходило большинство разработчиков.
Но что происходит сейчас в мире информационных технологий? На каждом углу реклама курсов, которые сделают из тебя настоящего программиста за 21 день с гарантированным трудоустройством сразу на позицию %Language% Middle-Developer. Разговоры о том, что программировать уже нечего, достаточно только объединить готовые решения, заботливо скомпилировав и отправив в удалённый репозиторий. Разглагольствования некоторых медийных личностей, утверждающих что программисты больше не нужны (вы поняли о ком я), на фоне разговоров о безумных зарплатах в IT. И даже крупные компании, такие как Google, вносят сумбур. Какое-то время назад я посмеивался над этим, но уже не до смеха…
Так больше продолжаться не может
Всё началось с желания моего хорошего друга стать крутым разработчиком, пускай это будет Алексей. Алексей — амбициозный парень в возрасте 25+, окончивший 11 классов и не доучившийся в техникуме на технической специальности, не имеющей с IT ничего общего. Я, как единственный знакомый программист, был привлечён консультантом по новому для него миру. Главный вопрос был с чего начать и что делать. Я конечно же начал советовать читать умные книги, но этот способ не подошёл. Алексею не хватало усидчивости вчитываться в каждое слово, поэтому абзацы и даже целые главы читались по диагонали без единой попытки перевести код со страниц в IDE с красивой подсветкой. Если человек не видит результат, он начинает искать серебряную пулю. Так вышло и в этой ситуации. Был оплачен доступ к популярному онлайн-ресурсу, предлагающему задачи для решения в онлайн-компиляторе. Но роста не было, как оказалось не было понимания базовых вещей. Алексей не опускал руки и упорно продолжал долбиться в закрытые двери, при этом моей виной было непонимание этого аспекта, и последовавшая за этим фатальная ошибка — предложение поехать туда, где водятся программисты, в надежде устроиться стажёром. Приехав в большой город, Алексей тут же приступил к поиску работы. Но к большому сожалению (этого следовало ожидать), предложений по работе не поступало. Через какое-то время Алексей решил, что нужно что-то более действенное, и начал искать новую серебряную пулю. Этой серебряной пулей оказался один из многочисленных онлайн-курсов по программированию.
Без имён и фамилий
По правде сказать, я отнёсся к этой затее с большим недоверием. Но контракт уже подписан, группа таких же вайтишников набрана, галера несётся в светлое будущее. И так, что из себя представляют эти курсы. Кратко — подготовка будущих «специалистов» к собеседованию, с попытками направить человека в нужные темы в надежде дать понимание глубоких механизмов языка. Да, именно языка. В понимании местной публики программиста программистом делает знание языка и его фреймворков, не более. Тут стоит оговориться о слушателях этих курсов. Я был свидетелем знакомства группы. Как и ожидалось, люди достаточно разношерстные, разных возрастов (были очень немолодые), полов и профессий, 90% из которых о языках программирования услышали только вчера. Но всех их объединяло одно — желание стать Middle-разработчиком с заработной платой от 100 000 рублей по окончании курсов. Достаточно амбициозно и смешно, подумал я про себя. Судя по лёгкой улыбке на лице владельца курсов на том конце монитора при озвучивании желаний, уверен, он думал точно так же.
Прошло время, слушателей пичкали информацией с онлайн-курсов, расположенных на популярных платформах (интересно, авторское право соблюдено?), каждому дали наставника, который должен был учить и «строго» экзаменовать. В конце курсов предполагалась практика на «боевом» проекте длительностью несколько недель, для закрепления знаний. Пришло время выпуска, мне было интересно чем это всё закончится. И тут мне в руки попало видео с закрытого разговора владельца курсов, который опрашивал бывших выпускников на предмет их текущих успехов. И тут я, мягко говоря, очень удивился. Для некоторых соискателей, нет ничего сложного в собеседованиях, по их словам. Максимум что могут спросить по их мнению, это, например, что такое коллекция и что такое список. На вопрос о сложных темах, таких как многопоточность, отвечают, что это сложно и проще просто выучить, как я понимаю речь идёт о заучивании определений. Team Lead по их мнению, это этакий менеджер, который тупо получает деньги и что-то там рассказывает команде, поэтому почему бы и не стать им сразу. Духовный лидер же подначивает кандидатов в IT: «Нужно торговаться на собеседованиях, 150 не деньги».
Стоит оговориться, что на вопрос оценки их знаний, каждый оценивал себя на 7-8 баллов из 10, при этом рассуждая о базовых вещах. Синдром самозванца — не про них.
Мошенничество или лайфхак?
Мне был интересен вопрос, каким образом будут позиционировать людей после курсов, обладающих нулевым опытом, но жаждущих позиции Middle-разработчика? Всё просто, им нарисовали год опыта работы в компании! Да, вот так просто. Гугл ничего не знает об этой организации, от слова совсем. Ни единого упоминания, количество найденных страниц всего одна, ведущая на какой-то агрегатор случайных слов. Ну да ладно, настоящего самозванца точно выявят на собеседовании, не зря на Хабре столько статей от HR’ов и разработчиков с историями о том, как «правильно» собеседовать. К огромному сожалению, оказалось что всё это не более чем трёп о сферическом коне в вакууме. Уж простите.
Я не могу обойтись без громких имён компаний, корпоративные блоги которых, в том числе, присутствуют на ресурсе. По заявлению выпустившихся вайтишников, они устроились туда на позиции разработчиков. Дальше пойдёт критика, целью которой является попытка заставить руководство корпораций внимательно присмотреться к своему штату и кандидатам.
Сбербанк. Да, этот мастодонт принял несколько таких специалистов к себе в штат на должности разработчиков. И не абы каких, а самых настоящих «старших инженеров». Это в то время, когда появляются статьи о сливах данных пользователей и гневных заявлений что пропадают деньги с карточек, лежащих на верхней полке антресоли в книге с двойным дном. Я всегда думал на этот счёт, что там работают высококлассные спецы, блог которых я читал и восхищался, а деньги пропадают только из-за неграмотности пользователей. Возможно это так и есть, но кредит доверия потерян.
МТС Банк. Данная организация предложила по результатам собеседования должность Senior-разработчика ещё одному соискателю. Хорошо, Middle-разработчик это хоть и самостоятельная боевая единица, но за ним всё равно приглядывают старшие коллеги. Но Senior-разработчик, это человек, который может управлять другими людьми и принимать решения. Вы с ума сошли? Какие решения может принимать человек, который понятия не имеет что такое настоящая работа программистом, да ещё и учить других жизни?
И ряд других компаний.
Чем это показательно? Технологические компании, для которых разработка программного обеспечения является одним из профилей, или даже основным способом заработка, легко обманываются людьми, которые зазубрили понятия и нагло пришли на собеседование требовать мягкое кресло и печенье в общей корзине. Если это действительно правда, отдел кадров не просто показал свои слабые стороны, он себя полностью дискредитировал показав полную несостоятельность своих методов работы и оценки кандидатов. Все эти разговоры про недопустимость кода на листочке, тестовые задания для оценки навыков, и прочие способы оценки, оказались точно такими же как оценка soft skills на основе цвета глаз и знака зодиака кандидата.
Чем это плохо?
Качество кадров. Это главное. От качества кадров зависит качество продукта, качество кодовой базы, безопасность, производительность. Это взгляд со стороны разработчика. Со стороны бизнеса, это скорость разработки, потому что для неопытного разработчика все задачи будут в новинку, соответственно решения задач будут занимать гораздо больше времени, и не только своего. Это очевидно. Заберись такой «бриллиант» повыше, и весь этот поток /*цензура*/ кода польётся в продакшн без код ревью на радость пользователям и людям, которые будут это поддерживать в будущем.
А какое решение?
Понять сочувствующим, что отрасль не резиновая, перестав показывать всем вокруг свою состоятельность и крутость голубых кровей.
Очнуться всем тем, кто подписывается под рекламой подобного. Уверен, эти люди рассуждают о том, что они вне конкуренции. Опытные разработчики, прошедшие через огонь и медные трубы. Только вот один вопрос: зачем платить такие деньги опытному программисту, если то же самое сделает вайтишник, но гораздо дешевле. И плевать что решение будет, мягко говоря, не оптимальное, и даже не факт, что безопасное. Про best practice я вообще молчу.
Тем, кто принимает решения об оффере, внимательно смотреть на опыт работы и реальные навыки, образование наконец. Резюме этих людей не содержат ссылки на репозитории с их pet projects, потому что их нет. Зато пестрят названиями самых актуальных инструментов, используемых в разработке. Всё по методичкам от умных HR, как сделать классное резюме. Уличить в обмане — реально сложно, потому что их пичкают информацией о том, как обмануть систему с непоколебимым видом. При этом им придумывают легенду о предыдущем месте работы с предположительными вопросами от интервьюера и вариантами ответа.
Для тех, до кого не доходит и они продолжают рекламировать курсы для тех, кто хочет войтивайти — игнорировать их деятельность. Люди рубят сук на котором сидят, и ещё больше раздувают этот пузырь, который рано или поздно лопнет. Производимый контент этих людей чаще всего реально полезный и качественно сделанный, что нивелируется способом монетизации.
Вместо заключения
Скорее всего моя позиция по курсам, со стороны выглядит как не прикрытая ненависть и агрессия. Так и есть после того, как я это увидел изнутри. Но это относится к курсам готовящим вайтишников. Для курсов переподготовки уже действующих специалистов — только за, хоть сам и не пользовался их услугами. Я знаю несколько реально крутых вайтишников, которые действительно много читали и изучали, годами программировали, и наконец нашли своё место под солнцем. Это вызывает только уважение. Для тех кто хочет за пару месяцев стать «программистом» только потому что платят, увы, к таким я отношусь негативно. Они обесценивают годы выжигания монитором глаз инженеров, которые учились и практиковались, практиковались и учились. Почему кто-то решил, что быть программистом проще пареной репы, но при этом жить «дорохо бахато»? А тут условный курс сделает это всё якобы за пару месяцев, а добрые собеседующие это подтвердят.
Среднестатистический выпускник ВУЗа (рассматриваем только тех кто реально учился) идёт на зарплату в 40-80к в надежде почерпнуть хоть маломальский опыт работы для дальнейшего роста, понимая что больше он не стоит. Зато самозванец на полном серьёзе претендует на место «старшего инженера». Если это правила игры — я их не понимаю. Не забывайте, это бизнес, который зарабатывает на том, что актуально. Если завтра будет актуально быть мясником, появятся соответствующие курсы как грибы после дождя, и вероятнее всего с теми же наставниками.
Рекомендация владельцам курсов: предлагаю открыть курсы подготовки хирургов длительностью 3 месяца, независимо от образования. Пользуйтесь. Там же ничего сложно, бери в руку скальпель и режь, а другие хирурги покажут как надо уже в больнице, ведь неделя практики даёт те же знания что и год университета, давно известный факт. Но это уже другая история…
anonymous
Фил, АСТАНАВИСЬ.
Zangasta
А что сразу АСТА?
Зы. Вообще не понял о чем статья. Формально — о том, как люди обманывают работодателя, делая себе фальшивый опыт. Хотя, по существу — человек либо умеет работать — либо не умеет.
Если человек не умеет работать — то это видно сразу. Буквально за несколько минут общения — смотришь, как он считает, что он говорит, как отвечает на вопросы — и вуаля. И совершенно не важно — придумал он себе опыт или нет.
DoctorMoriarty
>Буквально за несколько минут общения — смотришь, как он считает, что он говорит, как отвечает на вопросы — и вуаля.
Если бы это так работало — отрасль была бы в шоколаде, регулярно покатываясь под столом от попыток очередных Остапов Бендеров, ну, или просто наивных ниасиляторов («я-не-трачу-время-на-муть-типа-Кнута-я-просмотрел-стопицот-видеоуроков») зайти в. Но это не так — я лично неоднократно наблюдал, как в компании на работу принимают по признаку «знает модные термины и определения наизусть» и «готов работать в команде и разделяет ценности компании». Точка. Умные не нужны, нужны покладистые и чтобы букаф умных знали. В результате реальную работу делают одни, а остальные нужны для того, чтобы у менеджеров и тимлидов, имитирующих бурный скрам было количество юнитов, потребное для имитации этого самого скрама.
Zangasta
Да, в компании действительно нужны РАЗНЫЕ работники. Умные и не очень — для разных целей.
Приведу пример со стройки — мы отдаем штукатурку на аутсорс — приезжает машина, рабочие разворачивают штукатурную станцию, ставят направляющие, подают раствор шлангом — и за пару дней объект готов. Но заказчику это не нравится — не видно, куда идут его деньги. И поэтому, после штукатурной станции — идут дамы, которые медленно и уныло оштукатуривают углы, откосы и прочее — они часами сидят над узлом, перекрикиваясь через весь объект — и наполняют сердце заказчика гордостью — он не зря платит деньги, тут трудится легион.
Так что не надо кивать на энчаров — современный бизнес имеет много гитик.
methos2
+100500
Главное это грамотно поставленная цель и ее решение
PyerK
Если сравнивать ручную и машинную штукатурку то разница лишь в скорости замеса и накидывания смеси на стену это не более 20% общего времени.
И именно часть от этих 20% машина и может сэкономить (если не будет отключений света :), когда в машине и шланге пропадёт несколько мешков смеси )
Если результат с машиной получается кратно быстрее, то скорее всего халтура проявляется в других местах (точность маяков, прямота углов, незатёртая поверхность, неровные откосы, неизвлечение маяков, отсутсвие предварительных работ (грунтование, сетки, бетонконтакт, покраска металлических частей выступающая арматура или хвостики от вязальной проволоки ) или неочищенный объект после).
Zangasta
Очень ошибочное представление. Я бы оценил разницу в скорости примерно в четыре раза* (Между специализирующейся на штукатурке командой и обычными строительными рабочими) Скорость достигается из-за снижения количества маяков — опытный специалист может работать без них. Попутно это ведет к уменьшению намета.
PyerK
Я сравниваю профессионалов которые 10 лет в штукатурке.
Идентичные команды: одна с машиной, а вторая с ручным миксером с бадьёй. И с идентичным по качеству результатом.
Нельзя сравнивать штукатурщика с машиной и эникейщика с правилом (что является подменой понятий ибо «обычные строительные рабочие» (и что это значит? таких техникумы не выпускают ) сделают халтуру что с машиной, что без неё, что с маяками, что без них).
Второй момент, я сильно сомневаюсь в качестве работ без маяков. Банально даже, что бы сохранить угол в 90 градусов (что бы кафель положить), когда по стене идёт перепад 1-4 см слое например. Я бы с удовольствием посмотрел как происходит штукатурка без маяков, а потом как на эти же самые углы укладывается кафель. Сужу не как профессионал, а как наблюдатель множества строек и как заказчик. Работа очень специфическая, со множеством неочевидных особенностей и требований.
Zangasta
Какие техникумы, о чем вы вообще? Строительных рабочих с образованием я не вижу на стройке уже лет двадцать — перевелись как класс, с кончиной СССР.
PyerK
В этом и проблема, хожу по соседям, кому ветробарьер с паробарьером перепутают. Комуто вместо СДМ, плёнку крепят. Комуто вместо геотекстиля агроволокном щебень армируют. А вместо агроволокна, брезент стелят. На каждой второй стройке арматуру варят. И спорят что снипы — фигня, ещё деды так делали. А делать работу по госту (как и включать гост в договор работ) — равод для лохов, будет дороже. Геологические изыскания — пустая трата денег. И теодолит — пустая трата денег «глаз вода покажет» :) Обрабатывать древесину антисептиками — слишком долго, да и деды не обрабатывали и дома сто лет стояли (правда купались на речке и воды в доме никогда не было). Когда говоришь «профессионалу» делаем работу согласно «техкарте производителя», узнают для себя много нового. Бетон никто не вибрирует. Часто водой разбавляют. Плиты перекрытия все защемляют, а часто ещё и выпускают консольно итд. Всего не упомнишь.
У меня вся улица строится. Соседи постоянно жалуются на самозванцев, которые ничего не умеют и только материалы портят.
gorgona45
Угу, и получаем «Алые паруса» за конские деньги (халупа бызныс-класса, не хрен собачий), уплывающие в реку и роняющая лифты.
divanus
По поводу антисептика для древесины добавлю свое имхо:
если древесина была в камерной сушке (т.е. вы весь процесс проконтролировали: заготовка, распиловка, сушка, строжка), тогда антисептировать ее не требуется (скорее это уже «перебздеть»). Ну и работать согласно кодам мало кто может (единицы). Даже я сам себе строя косячу подзабивая(подзабивая) на некоторые моменты кодов (например, если ставишь укосину, то она не упираться должна в нижнюю обвязку, а врезаться в нее).
К чему я тут свой коммент вставил? Друзья, на самом деле нам нужно во всех сферах пересмотреть:
1. Подготовку специалистов
2. Обеспечивать практику во время учебы
3. Пересмотреть стандарты работ (не важно, строитель ты или программист)
4. Без единой электронной корочки не допускать к работам
5. Без инспекторов по труду никак (по крайней мере в оффлайновых темах типа стройки)
6. Почасовая оплата во всех отраслях, а не зарплата окладная и премиальная
Курсы по %предметная область% кругом. Да в той же Финляндии за год-полтара любой профессии обучают вполне сносно, выдают корочку и только тогда ты можешь менять лампочки или красить стены. Или допускаешься к огневым работам Tulityokurssi (болгаркой пилить, горелкой плавить рубероид), с карточкой Tyoturvallisuuskurssi после курсов. И там не отволынишь. Обязан выучить, попрактиковаться, сдать экзамен.
К примеру ВОДИТЕЛЬ КАТЕГОРИИ D — автобуса в Финляндии допускается к перевозке пассажиров после полутора лет обучения, кучи экзаменов и постоянной практики. Год обучения — уже есть категория, можешь себе купить автобус и себя лично возить на нем, но пассажиров не имеешь права. Пассажиров сможешь возить только после сдачи итогового экзамена (!) очень сложного. Конкурс на место водителя автобуса до 30 человек (!). Набирают группу, из которой больше половины в процессе отсеиваются. Тебе за обучение платит государство, чтобы ты хорошо учился.
Выучился, сдал все экзамены (техника безопасности, первая помощь и экстренные ситуации, ПДД, практика вождения, общение с пассажирами, психология, работа с деньгами и кассой, билатами, иностранные языки (несколько — основные фразы и т.д.и т.п.)). Сравните, как у нас легко получить категорию и сесть за руль любому дурачку ;)
Akon32
Что такого хорошего есть в вождении автобуса в Финляндии, что при таких сложностях такой конкурс?
Nalivai
А там где вы смотрите платят нормально, чтобы рабочие с образованием были? А то бывает что хотят профессионалов а платят как джунам, а чего, рынок же
PyerK
Платят сильно по-разному. В некоторых работах(плитка/электрика), разница в цене отличается на порядок. Но в целом (со слов рабочих) они в Украине сейчас зарабатывают больше чем Польше/Чехии.
И часто квалификация исполнителей очень нелинейно зависит от оплаты. Например, бывает что узкоспециализированные оценивают свою работу недорого (за объем), но квалификация позволяет выполнять работу быстро и зарабатывать больше за месяц.
Сильный сезонный фактор. Иногда бывает (ноябрь-декабрь) что кровельщиков не найдешь ни за какие деньги. Ранней весной никому не нужны штукатуры. Зимой не пользуется спросом монолитные работы. А например рынок вентиляции у нас «премиальный», и тонкий, потому и цена работ — стабильно высокая, а подрядчиков — мало.
А в целом, больше х*2 получают люди с доказанным и большим портфолио. Обычно, перед знакомством, высылают пак селфи на фоне фото выполненных работ на вайбер.
Бывает такое, что если без проекта то цена монолитных работ например 800грн за куб бетона. А если по проекту, то те же самые исполнители перемножат опалубку/арматуру/приём (потому что в проекте всё это сведено в таблицу) етц в итоге бюджет вырастает втроё. Всегда больше попросят «по знакомству», «соседи», «Друзья друзей» и подобные шаблоны, почему так — не понятно, да и качество исполнения хуже чем попросить рекомендацию спеца у дистрибьютора.
Stecenko
«Всегда больше попросят «по знакомству», «соседи», «Друзья друзей» и подобные шаблоны, почему так — не понятно»
Когда просят по компам, я часто так делаю — чтобы отвязались, а если согласятся — так хоть денег подниму.
JerryJJ
О! Спасибо! Узнал для себя пару моментов о технологии нанесения штукатурки :)
reUmNIck
Дайте мне бригаду из 2-3 человек, которые вручную поставят маяки и сделают штукатурку на 150+ квадратов в день, и я переверну этот мир!
*а машиной запросто. но это про внутриквартирную работу.
sshikov
А вы точно не смешиваете две разные вещи? На мой взгляд, их тут именно две — с одной стороны, обычно за несколько минут реально видно, вменяемый человек или нет, можно с ним будет работать, или тоже нет. То есть, если нужен именно умный — оценить это все-таки можно.
А с другой, прием на работу по принципу «знает умные слова» тоже имеет место. Но не обязательно это совмещается в одном и том же месте.
eximus
Если ЭТО прокатывает в области, то это говорит лишь об опыте и умении (скорее НЕумении) набора кадров. Видимо, не умеют от слова «совсем». Ну и финансы компании позволяют держать тех, против кого выступает автор статьи.
dimaaannn
На самом деле это реальная проблема. Потому что многие погромисты по натуре — те ещё аутисты.
И собеседование часто является большим стрессом, совсем не помогающим в решении задач и цитировании определений на память.
Да та же задача о шарах может вызвать полнейший ступор, хотя решается в течение минуты размышлений.
И именно поэтому трактористы всегда будут иметь преимущество в таких собеседованиях в таком формате. Они уверены в себе, хорошо подготовлены, и на фоне «ботаников» выглядят куда лучше.
vladkorotnev
Вот над задачей о шарах я что-то залип. Бинарным поиском только три взвешивания прокатывают (4-4, 2-2, 1-1)
Static_electro
если заранее известно, в какую сторону отклоняется вес неправильного шара — то можно за два
Dron007
Вот и завалили вы собеседование у этого собеседователя :)
vladkorotnev
Вот и помер дед Максим, да и хрен бы с ним ?
Шары надо поделить на три группы (3, 3, 2). Потом взвесить обе тройки. Если они равны — то взвесить двойку, там найдётся. Если они не равны, то взвесить два из более тяжёлой тройки. Либо более тяжелый среди взвешенных, либо тот, что остался на столе.
Беда в том, что во-первых нужно постулировать, в какую сторону отличается шар, как сказал Static_electro, во-вторых, если я код с такой логикой на куче условий залеплю в прод вместо вызова бинарного или другого поиска, и мы при этом не пишем какую-то сверхпроизводительную штуку на ассемблере с требованием выполнения за ?0.01с — меня коллеги будут пинать ногами за такие приколы :-)
mclander
Ну блин и зачем) мне интереснее было бы на собесе помучаться
Vitalley
Так уже три взвешивания, а потом ещё взвешивание…
vladkorotnev
Почему три взвешивания?
Первое — три шара и три шара.
Если вышел ноль, делаем второе — один шар и один шар, из оставшейся двойки.
Иначе берём более тяжёлую тройку и делаем второе, вариант Б — один шар и один шар, третий остался на столе. Если опять вышел ноль, то более тяжёлый на столе, в противном случае — увидим, который более тяжёлый.
TheShock
А почему вы предлагаете брать именно более тяжёлую тройку? Это срабатывает только если вы знаете в какую сторону отклонение.
InterceptorTSK
Это же крайне плохое решение. Ну потому что вы всегда будете мерить 3 и 3 шара. А это всегда обращение к 6 «объектам» из 8. Это же ужасно… Зачем это?
Ranwise
потому что лично у меня 1 взвешивание — это на кухонные электронные или электронные с крючком весы — кладёшь\цепляешь продукт и смотришь вес, а тут старая древняя задачка где весы аля противовес и которые я последний раз держал лет 15 назад в школе на уроке химии или физики, как на таких весах взвесить 6 шаров за 1 раз?)
dmitry_dvm
А в жизни это будет
И знать ЭТО зачастую важнее.
key08rus
2-2(2,1), второе взвешивание — по результату.
rjhdby
Лови вайтишника! :D
5oclock
Без знания о том легче неправильный шар или тяжелее — за 2 взвешивания не решить.
Если это известно, то — можно.
chipsoftware
Без знания о том легче неправильный шар или тяжелее нужно 3 взвешивания — всего на 1 больше.
Ckpyt
А там не бинарный поиск. Там троичный поиск.
У вас не «равно», «не равно», а «больше», «меньше», «равно».
Деленное пополам(две чаши).
Соответственно, за два взвешивания можно определенить ,3*3/2 = 4.5 шара.
4 — если нет эталонов веса, 5 — если есть.
За три взевешивания — 3^3/2 = 13.5
13 — без эталонов веса, 14 — с эталоном. Т.е. 14 неизвестных + 1 эталон.
Cooper4111
Окей, проблема понятна. А есть решения или хотя бы предположения как решать? Что делать аутистам вроде меня без софт скиллов? Я не супер скиллованный ботан, но в ВУЗе я уже на втором курсе делал лабы магистрам и сдавал матлогику и алгоритмы на отлично, появившись на парах за сем три раза. Просто потому, что активно применял это на практике. А сейчас я разослал пол сотни откликов и ни одного приглашения на собеседование. А я не тракторист и не хочу даже получать 80к, я даже на 30к согласен, просто потому что ЛЮБЛЮ кодить. Но не умею себя продавать. И, да, это не регионы, это Питер.
mephisto
А на чем пишете и под какие платформы? :)
Cooper4111
C++, Python с недавних пор, под десктоп. Игрового бота вот недавно на пайтоне написал, рогалик свой попиливаю. С numpy и pandas разобрался, ковыряю OpenCV, чтобы бот умнее был.
А опыта работы в компании нет, ибо «для первой работы нужен опыт, для опыта нужна первая работа»
FloorZ
Мало просишь)
Да и резюме по красочнее надо расписать.
Прям в «обо мне» прямо и пиши, мол делаю такие то крутые вещи, на том то и том то.
Главное не пиши всякую лабуду в духе «Трудолюбив, активен и вообще звезда».
С++ — хорошо, питон — еще лучше. Советую обратить внимание на LinkedIn. Там в начале надобавлять людей неделю надо. Чем больше — тем лучше. Добавляй всех кого можешь. Видешь слово Dev или Prog — добавляй. А через них, уже добавляй их HRов, что у них в друзьях.
В идеале бы еще GoF весь знать и все свои програмки на UML описать. Это чисто для практики полезно, не писать сразу код, а в начале расписать всю программу в виде схемы и только потом переносить ее в код. Тоже плюсик хороший будет.
VolCh
Был в подобной ситуации. Прекратилась, когда стал просить не 30, а 80 или даже 120 (на 2012-13). Потом сказали, что если бы в моём резюме было 30 указано — выкинули бы его.
strannik_k
Интересно, какая логика за этим стоит? То жалуются, что джуны без опыта запрашивают 100, то резюме кандидатов за 30 выкидывают.
Знакомый бывший техдир местной компании недавно устроился сеньором на удаленку в Московский филиал международной компании за 4000$. Такие зарплаты в комментах к статье называют, что мне кажется, что 4000$ — это зарплата миддла, а не сеньора.
tendium
Конкретная сумма — это слишком абстрактный показатель, чтобы ответить на вопрос однозначно. Всё зависит от сферы, навыков, компании, рынка, умения себя продать. У меня был прецедент (о котором я всё не решусь написать статью, но оно того стоит), где я получал процентов на 30 больше, чем директор филиала, которому я формально подчинялся.
P.S. Я оттуда, правда, ушел, потому что вместо создания команды разработчиков на месте меня направили на управление командой индусов (и сейчас у меня нет ни ЗП, ни должности того уровня, но я не жалею)...
PsyHaSTe
Логика "если он просит так мало, значит в себе не уверен и какой-то ваще стремный. Не будем рисковать на всякий случай"
amirosta
Логика тут элементарна:
Если мы находимся в ситуации, когда джун хочет 100, то опытный специалист (мы же об той ситуации, что опытный за 30 не мог устроится? ) в принципе никак 30 желать не может.
Если он это делает, то никакой он не специалист.
Ведь он не вчера в одночасье стал специалистом, он где-то работал (скорее всего даже в нескольких разных местах), где-то профессионально рос и это заняло большое время.
Поэтому для специалиста нормально не только уметь программировать, но и хотя бы приблизительно знать сколько подобный специалист может стоить (хотя бы исходя из предыдущей своей работы и из просмотра вакансий с требованиями к квалификации).
Бывают конечно специфические выверты, когда ты приехал из глухой провинции с маленькими зарплатами в столицу и не знаешь сколько точно.
Но даже в этом случае можно почитать описания вакансий и прикинуть свою квалификацию под те зарплаты, что написаны в вакансиях.
Из моего опыта, если человек с опытом просит слишком мало, то у него какие-то проблемы с головой, — например, в одном случае это был алкоголик запойный. В другом случае, много лет работы по профессии мало что дали его опыту, по факту он был мало квалифицированный. Третий был крайне неуверенный в себе, что отвратительно отражалось на работе. Четвертый был совершенно безответственным и не обязательным.
Исключения бывают.
Но проверять всех подряд, чтобы найти эту золотую крупицу… с учетом того, что и так приходится по 50 человек перебирать, чтобы найти кандидата — не рационально.
strannik_k
Спасибо, что поделились своим мнением!
Я не собеседую, но на мой взгляд, если интервьюер прособеседовав 10 человек не нашел подходящего (если не супер сеньора ищут), то он плоховато справляется со своей задачей. Нужно исследовать и пробовать разные способы, чтобы научиться более эффективно ее выполнять. Конечно, если приходится постоянно собеседовать и не хочется тратить кучу рабочего времени на собеседование 50 человек ради найма одного.Конечно, желать 30 не может. Но могут вынуждать обстоятельства. Еще раз, если пропустили — я МЕНЯЛ СТЕК. Кто-нибудь готов брать не знакомого разработчика из другого стека сразу на ту же должность и зарплату? Уверен, что нет.
Т.к. за нормальную ставку не получалось найти работу в стеке, в котором я уже 3 года не работал, мне показалось нормальным на первое время запросить ставку джуна, но с повышением до миддла не через 1,5-2 года, а максимум через полгода. Да и посоветовался со знакомыми программистами. Сказали, что норм на первое время в другом стеке за небольшую ставку пробовать устроиться.
В общем, возвращаюсь к теме дефицита, зачастую это не дефицит, а отсев всех подряд по разным причинам, в том числе рациональным.
BugM
А если сходить во всякие Яндексы?
Там можно писать на любом языке во время собеседования.
strannik_k
Не знаю, как во всяких яндексах. В Омске их нет.
Ну и мне бы все равно понадобилось готовиться месяц-другой к таким собесам. Теории там бы все равно спрашивали, хотя бы общую. Алгоритм на листочке я не напишу во время собеса без тренировки, т.к. непривычная ситуация, мозг сосредоточен на разговоре, а не решении задач. Классе в 10-ом — 11-ом и на первых курсах вуза написал бы, наверное. А на работе мне практически не приходится сталкиваться со сложным кодом в плане алгоритмов. Задачи по реализации/разбору алгоритма за первые 5 лет работы мне встречались раза 3 (одна — оптимизировать какой-то небольшой алгоритм, вторая — сделать генерацию уровней в небольшой игре, третья — выполнить за игрока поиск решения головоломки в той же игре). Я в пет-проектах чаще алгоритмы средней сложности писал, чем на работе.
VolCh
Задача интервьювера не находить подходящего, а проверять подходит ли уже найденный кем-то кандидат. Если, например, вакансия составлена так что откликаются на неё только неподходящие кандидаты или фильтр резюме пропускает всех подряд, а то и режет хороших кандидатов, то зачем интервьюверу давать добро на найм неподходящих?
arheops
Указывайте среднюю, на собеседовании говорите, что готовы ниже — вас возьмут.
Ну поймите, если у вас 10 кандидатов и один из них указывает зарплату в 4 раза меньше — правильное решение — откинуть это резюме как нереальное.
ardraeiss
Четвёртый окажется старше 30-35-40-скольки-там-нынче-модно, что… (далее по тексту)
Пятый окажется холостяком без привязанностей к фирме, что…
Шестой окажется идейным с горящими глазами именно по этому проекту вотпрямща(на ближайшие полгода до следующей захватившей идеи), что...
tendium
А зачем вы указываете желаемую ЗП в резюме? Я может отстал от российских реалий, но в моем пузыре указывание ЗП наоборот является стопором. Почему? Потому что обычно исходно не готовы платить ту сумму, на которой сходимся по итогу.
mclander
Я больше скажу, я несколько раз закапывался на фундаментальных элементарных вопросах. Типа чем отличаются pure компоненты в реакт. Прям щас даже не отвечу, помню, что у них какой-то пункт жизненного цикла упрощен, чтобы они реже дергались при изменениях пропов, но как именно это либо в гугл, либо полчаса вспоминать. Просто два года прошло как на реакте не писал, в голове появилось много понимания написания юнитов и извратов с rxjs, из под этого надо старое выковыривать и не факт что на собесе быстро всплывёт. Вот кусок кода мне дать на том же реакте, все расскажу и может покажу как можно было проще… А про всякие солиды и грины вспоминаю только, когда очень хочу работу поменять и подзубриваю всякую бла бла
FloorZ
И ты называешь это фундаментальным вопросом?
Я как то забыл, как правильно пишется malloc и realloc
strannik_k
Такие вещи, как pure компоненты — скорее не фундаментальная вещь, а опциональная. Кто-то использует, а кому-то ни разу не пригодилось.
А вот без понимания некоторых принципов солид и еще YAGNI, я бы не доверял человеку вести проект. Уже дожились до того, что такая жесть, как redux, считается нормальной архитектурой.
VolCh
Так redux как раз по SOLID ))
strannik_k
Я так не считаю) Мне кажется Абрамов и его коллега не вспомнили о нем при создании redux. Да и ребята из фейсбука тоже видимо о SOLID не вспомнили, если им это решение показалось хорошим. Хотя, судя по хуку useReducer, они до сих пор периодически про него забывают.
Насчет нарушение первого принципа (SRP) еще можно поспорить — по разному можно понимать ответственность. Но я уверен, что redux нарушает SRP — одна функция отвечает за обработку разных экшенов. То есть количество причин для изменения редьюсера равно количеству экшенов.
Принцип открытости-закрытости тоже нарушает — добавится экшен, придеться менять и редьюсер.
LSP принцип — вроде бы тоже нарушает. У редьюсера в сигнатуре есть базовый абстрактный action. Когда используем конкретный экшен, вместе с ним передается тип события (action.type). Смотрим определение принципа: «Функции, которые используют базовый тип, должны иметь возможность использовать подтипы базового типа, не зная об этом». Разве редьюсер может обрабатывать конкретный экшен, пока мы не обновим редьюсер, чтобы он мог работать с конкрентным экшеном? Нет.
YAGNI, о котором я упомянул — он о том, что если скорее всего не понабится, то и делать не нужно. Это не про SOLID, но redux тоже нарушает этот принцип. Зачем для вызова middleware из компонента использовать pub-sub (publisher-subscriber) с помощью dispatch + action, когда можно было бы вызвать middleware из компонента напрямую, как обычную функцию? Аналогично с ситуацией, когда middleware обновляет стор. Может быть в 1-ом из 100 проектов в этом есть необходимость, но в остальных 99 — нет.
john_samilin
аминь!
VolCh
То есть любая функция с параметрами нарушает SRP? Ведь одна функция отвечает за обработку разных значений параметра.
Как по мне, то у редьюсерво строго одна ответственность — вычислить новое состояние стейта по текущему и экшену
Не придётся, если активно использовать композицию, а не простыни switch/case
Может вполне. Нормальный редьюсер не должен падать, если ему передан неизвестный ему экшен — обычно просто возвращает текущий стейт.
TheShock
Ну сомнительно. По такой логике можно сказать, что в функции на 2 тысячи строк в каком-то божественном классе только одна ответственность — вычислить новое состояние стейта по текущему и экшену.
А как рекомендуется в офф. документации?
VolCh
Не вычислить, а мутировать стейт на вычисленный тут же :) Тут вопрос, а что конкретно хранится в стейте.
https://redux-toolkit.js.org/api/createReducer
strannik_k
Судя по примеру в конце документации, они после 2,5 — 3-х лет использования switch, сделали обертку, которая позволяет использовать функции для мутаций хранилища. То есть одну огромную функцию разбили на несколько, про что я и говорил.
Последний пример:
В других менеджерах состояний выглядит как-то так:
Редьюсеры стали похоже на то, что было года за 2-3 до redux-toolkit в других менеджерах состояний. Т.е. Redux изначально развивался неправильным путем.
strannik_k
И даже если функция нарушает SRP, это еще на значит, что это плохо. В первую очередь надо следовать здравому смыслу, а потом уже SOLID, иначе система может получиться слишком раздробленной и сложной.
Суть принципа не в том, будет ошибка или нет, если редьюсер получит неизвестный ему экшен. Нарушение принципа LCP — когда код должен знать о типах всех обрабатываемых им объектов. На примере редьюсера — когда он должен знать о всех типах action, которые он обрабатывает. Т.е. состояние хранилища не будет обновляться для конкретного экшена, пока не напишешь код в редьюсере под этот экшен. Если добавить новый экшен в систему, то придется менять и редьюсер, чтобы система работала с этим экшеном. Это похоже на второй принцип, только относится к наследованию. Как мне кажется, LCP — это частный случай принципа OCP.
mephisto
Недавно проводил собеседования и хочу пояснить по поводу pet-проектов.
Pet-проект это не абстрактный очередной калькулятор в вакууме.
Pet-проект это проект, который человек писал для себя. Для удовольствия / была личная необходимость / для эксперимента. По проекту как правило видно, для чего он писался. Да они и не скрывают — спрашиваешь, для чего писался проект — отвечают, мол для курсов/задачка из учебника/etc.
Лично я отбирал людей, которые писали что-то лично для себя. Потому что это показатель того, насколько человеку интересно программирование само по себе. Я сам гик и в команду мне нужны такие же гики. Если человеку программирование нафиг не упало, то и интересоваться, изучать что-то самостоятельно, творчески подходить к задачам он не будет.
PsyHaSTe
И что вам становится понятно? Расскажите, пожалуйста, насколько такие задачки помогают нанимают хороших программистов
eximus
Вы же вырвали часть и задали вопрос только по ней. Логические задачи, сами по себе, не могут помочь
хороших программистов, но показать, насколько адекватно человек умеет мыслить, вполне себе могут. Про то, какие неадекваты могут приходить на собеседования, надеюсь, рассказывать не надо? Не хотелось бы негатив тут распространять.
Например, если бы встретил подобный подход у людей, являющихся кандидатами, мне не позволила бы совесть их нанять, если, при решении задачи по программированию, кандидат бы вырвал только условия, удобные ему, а на остальные (ровно также значащие) части не стал бы смотреть. Ведь написание хорошего ПО всегда связано с сочетанием нескольких требований, которые надо уметь совмещать.
пс: пусть кандидат расскажет, что часть фич он сделал, потому что посчитал их главными и обоснует это, а часть не стал (и почему?) или не успел (тут тоже надо смотреть на причины). А потом пусть расскажет, как именно он бы их сделал, в применении к уже реализованному коду. Такой подход, в моём понимании, помог бы сделать более рациональный выбор кандидата, чем только рассмотрение умения решать выделенные вами логические задачи.
PsyHaSTe
Неадекватов отлично вычисляют "поговорить по душам", в особо запущенных случаях — физзбазз. Задачки имхо не показывают ровно ничего. Вот не смог человек придумать как в 2 взвешивания решать, он знает дихотомию: 8, 4, 2, 1. Значит ли это, что он "недаекват"? Расскажите, как вы в повседневной работе подобный навык применяете. Надеюсь, вы не будете говорить про "общую эрудицию" и "навык находить неожиданные решения" — по моему опыту с навыком решить задачку про горящие верёвки оно имеет мало.
Ckpyt
Как-как… если решил — гнать в шею. Ибо при подобных условиях задача не имеет решения. Если не решил, но думал, то попросить рассказать ход мыслей.
delhi_heir
Если у человека имеются столь любимые хрюшами волшебные soft skills, то при упомянутом в статье подходе "Team Lead по их мнению, это этакий менеджер, который тупо получает деньги и что-то там рассказывает команде", он легко разведёт лохов.
uldashev
Вот так и живем, хрюши отсеивают тех, кто годами кодил и не имел возможности развивать SoftSkills, и соответственно набирают тех, кто потратил годы на развитие SoftSkills, а не компетенции, ну а на техническом собеседовании инженеры удивляются низкому уровню кандидатов, но что поделать, брать кого то нужно, вот и берут.
amirosta
Вы прямо так пишете:
1) будто бы нельзя оба навыка развивать одновременно.
2) будто бы сия должность должна быть автоматически положена любому желающему кодеру.
snuk182
Нельзя. Часто эти навыки противоположны друг другу. Если на "ехать" можно пролистать профильную книгу или набросать проект за вечер, то на "шашечки" ничем не наберешься за вменяемое время без полной, болезненной и бестолковой смены мышления.
amirosta
Если у конкретного человека эти навыки противоположены — значит ему следует строить свою карьеру с учетом особенностей своей психики.
Только и всего.
Но есть куча людей, у которых эти навыки вполне себе параллельно развивались. Скажем Павел Дуров (ВКонтакте). Ларри Эллисон (Oracle). Или Билл Гейтс (Microsoft).
ru.wikipedia.org/wiki/Altair_BASIC
Разумеется, спустя годы, мы видим, что эти люди занялись оттачиванием Soft Skill (ибо иначе мы бы о них ничего и не услышали), а не навыка кодирования. Тем не менее, это не мешало им заниматься и разработкой. Скажем, Билл Гейтс программировал понемногу вплоть до 1990-х, когда его фирма была уже довольно большой.
Ну а что уж говорить о программистах, которые удачно продали монетизировали? О программистах-основателях компаний. Тот же Джон Кармак. Причем в отличие от вышеупомянутых Павла Дурова, Ларри Эллисона и Билла Гейтса — Джон Кармак продолжал программировать довольно долго и код его опубликован, можно видеть насколько он хорош. При том Джон Кармак довольно долго лично рулил своей фирмой.
Время не резиновое.
Нельзя успевать и то и то долгое время.
Приходится что то одно выбирать и на этом специализироваться.
Но сами навыки ничуть не противоположены.
snuk182
Вы привели в пример прекрасно показательных людей. Я одного такого тоже знаю — он сейчас СЕО. И это единственный знакомый мне человек с одинаково подвешенным языком и скиллами в разработке ПО, за мои 14 лет карьеры в ИТ-компаниях.
Остальным каждому в свое время пришлось сделать выбор — либо менеджмент, либо углубленная разработка/архитектура.
amirosta
Ничего удивительного.
Все не могут быть CEO. Столько рабочих мест просто нет.
Вот если бы спустя 14 лет большинство бы людей умирало — тут было бы разумным ожидать что выжившие становятся руководителями.
Но в реальной ситуации, когда люди не так быстро умирают — большинство должны оставаться на рядовых должностях.
Просто по причине того, что время не резиновое.
Однако внутри одного человека какой-либо принципиальной несовместимости по навыкам нет, что я выше и показал.
Dark_Scorpion
К сожалению ваши примеры тянут на "Ошибку Выжившего".
Но вернёмся к нашей проблеме, собеседования мидлов:
По опыту собеседований скажу, что нету мидлов с хорошими софт скилами и кодинга одновременно. Либо хороший мидл кодер, либо хороший балабол.
Хороший разработчик имеет возможность развивать софт скилы только на уровне сеньора. Большую часть задач, он делает без напряга, значит можно софт скилами мозг по напрягать.
amirosta
К сожалению ваш пример тянет на «Ошибку Выжившего».
Разумеется быть хорошим специалистом в разных сферах — удел немногих.
Люди в массе своей — вовсе не стремятся стать универсалами. Узкая специализация — выгоднее в наше время.
delhi_heir
Увы! Чтобы прокачивать soft skills, в рабочее время нужно заниматься разнообразной болтовнёй, что обычно плохо совмещается с типичными служебными обязанностями IT-шника.
amirosta
Soft Skill прекрасно прокачивается не только на работе, но и в быту.
SantaCluster
верно. добавлю, что у некоторых есть хобби — после работы идут не кодить, а, например, в театральный кружок :)
delhi_heir
Увы! В IT популярны переработки, когда приходишь с работы и спать! Но, все равно за будние дни — не высыпаешься, и потому в выходные — опять спать!
0xd34df00d
Как?
ardraeiss
Видимо, в магазине по пути между офисом и домом. Или в обеденный перерыв.
amirosta
Ну уж в ИТ-то перерабатывать не является жизненно необходимым.
0xd34df00d
Но если в быту читаешь книжки или пишешь свои пет-проекты, то особо там софт-скиллы не поразрабатываются.
amirosta
Это ваш собственный осознанный и свободный выбор.
0xd34df00d
С осознанностью тяжелее, так как списка действий и того, что ещё в быту можно делать, нигде нет.
ardraeiss
Так определитесь уже — "пет-проджекты и саморазвитие" или же "софтскиллз". А, ну или "выбрось личную жизнь и/или внекомпьютерные хобби фтопку". В сутках всего 24 часа, увы.
amirosta
Прокачка софт-скиллов — это сама жизнь. Вы можете их качать на любом своем окружение — на людях в очереди, на продавцах, на соседях по дому, на красивых девушках с улицы и пр. и пр.
Тут не нужно выделять времени отдельно.
0xd34df00d
Для того, чтобы качать хард-скиллы, мне понятно, что делать: я просто сажусь и пишу код (например). Когда у меня не получается, я захожу на stackoverflow, на иркоканалы, куда-то ещё, и спрашиваю совета по конкретным задачам. Кроме этого, я читаю известные и хорошо зарекомендовавшие себя книжки и учебники (от условного Саттера по плюсам до какого-нибудь Пирса по типам).
Этот подход вообще не переносится на прокачку софт-скиллов.
amirosta
Пет-проджекты пет-проджектам рознь.
Если ваш проджект пилится командой, где у каждого второго как правило своё мнение о будущем проекта;
если вы вошли в состав руководства его (ну или он изначально ваш), если он стал популярен — там есть где и софт-скиллы качать, разруливая мелкие обидки «а почему мой пулл реквест не приняли» или в бурных обсуждения об «issue»
Софт-скиллы окружают нас.
Когда мы их не прокачиваем — мы просто избегаем разруливания любых конфликтных ситуаций в жизни, избегаем любой организаторской деятельности (да хоть с жильцами своего подъезда решить вопрос когда красить стены подъезда, сколько на это нужно денег и в какой цвет) и пр. и пр.
Это наш выбор — избегать прокачки. Но не нужно говорить, что в жизни негде их прокачавать.
VolCh
Пробовал я несколько раз не избегать конфликтов — оказывался или в реанимации, или в нефрологии, или в "обезьяннике". Ну или, не столь экстремально — на грани развода.
Ну или у нас какие-то очень разные понимания слов "(сознательная?) прокачка софт-скиллов"
amirosta
Прокачка софт-скиллов это как раз вывернуть ситуацию в свою пользу.
Про гопников не будут говорить, там поди и алкоголь добавляет непредсказуемости.
А вот с женой — как раз прекрасно прокачивается всю жизнь качаться. Есть даже выражение: «над браком работают всю жизнь».
VolCh
Всё таки очень разное понимание слова "прокачка" у нас. Если я могу вывернуть любую ситуацию в свою пользу, то софт-скиллы у меня уже прокачаны, прокачивать их уже не надо, разве что поддерживать. А прокачка — какой-то процесс, действия, которые из состояния "сливаюсь из конфликтов или разрешаю их с большими потерями" приведут меня в состояние "успешно разрешаю конфликты!.
0xd34df00d
Решение конфликтов — это совсем базовый уровень софт-скиллов, насколько я могу судить. Это, ну, как хелловорлды писать.
amirosta
Это смотря каких конфликтов.
Если вы умеете решать вообще любые конфликты, то вам впору лекции читать психологам.
snuk182
Ох нифига это не базовый уровень… Ну то есть он должен идти в базе, когда в период познания собственных границ личности (ЕМНИП между 3 и 5 годом жизни, когда начинается обозванный в советской литературе "праздник непослушания") родители понимают происходящие в ребенке процессы и реагируют на непослушание убеждениями и объяснением, а не ремнем. На практике же в этот период ребенок знакомится с ремнем и истериками родителей вместо осознания границ собственной личности, и в итоге скилл решения конфликтов у него либо отсутствует, либо сублимирован в пассивную агрессию/психические отклонения/депрессию.
VolCh
Кто сказал, что это осознанный? Вот ни разу не думал "чем бы сейчас заняться — код пописать для души или "Как завоевывать друзей и оказывать влияние на людей" Карнеги перечитать для резюме.
amirosta
Ну это смотря как трактовать слово „осознанный“.
Ходите куда-то вы вполне себе осознанно.
Но при этом не думаете „поставить вперед левую ногу, перенести на нее нагрузку, подтянуть правую ногу, перенести нагрузку на обе ноги....“.
Впрочем, если не употреблять слово „осознанный“, то всё еще проще — прокачка тех или иных скилов осуществляется вообще автоматически. Смотря чем мы занимаемся в данный момент.
Скажем, если мы занимаемся сборкой модельки кораблика в бутылке, то мы прокачиваем скиллы терпения. Но думаем в этот момент не о терпении, а о кораблике.
VolCh
Ну вот когда мне надо прокачать какой-то хард-скилл я обкладываюсь литературой, документацией, всякими средствами разработки или администрирования и сажусь осознанно прокачивать конкретный навык. Причём обычно процентов на 90 уверен, что прокачаю до уровня, чтобы иметь моральное право упомянуть в резюме. Цена ошибки — только моё время. Фидбэк довольно формальный "работает-не работает", синтаксические и подобные ошибки выявляются часто ещё до попыток запуска.
Как это может работать с софт-скилл не представляю. Ну вот, например, навык деловой переписки. Ну открыл в гугле "как написать деловое письмо", сел и написал по рабочей ситуации, например. Это уже прокачал? Или его отправить надо адресату и посмотреть на реакцию — адресат сделал, что ты хотел — прокачал? А если он обанкротил твою компанию ну или просто тебя уволил — засчитываестя в прокачку? А если оно проигнорировано?
ardraeiss
Вовсе не факт. Можно идти, а потом пытаться вспомнить "что делал, что видел? Вроде из точки А в точку Б попал, но как — не помню". Находясь в ясном уме и трезвой памяти.
Сфигаль? Терпение Вы, возможно, прокачиваете не уходя в, пардон, туалет когда уже требуется. Пару-тройку часов потерпеть — зато какой левелап будет!
А делая кораблик делается и тренируется именно кораблик. Мелкая моторика, глазомер, аккуратность, планирование, декомпозиция.
amirosta
Разумеется так.
Не знал какие слова подобрать.
По итогу вы тоже не все перечислили.
В реальности там много чего:
Терпение, выдержку, настойчивость +
Мелкая моторика, глазомер, аккуратность, планирование, декомпозиция
gatoazul
Специалист подобен флюсу: полнота его одностороння.
(Кэп XIX века Козьма Прутков).
john_samilin
Простите, хотел плюсануть, а получилось почему-то наоборот. У меня есть пример человека, который за долгие-долгие годы не развился в техническом плане ни на йоту, до сих пор остался в нулевых, но общительность прокачал настолько, что сам легко манипулирует работодателем выбивая большущую зарплату и возможность сказать: «чет я устал, недельку меня не будет». Прям без шуток, как Купер из евротура
tmin10
Если работодателю нужен такой специалист и он решает вопросы бизнеса: почему-бы и нет? Может он с клиентами общается так, что они потом контракты миллионные подписывают, бизнесу это выгодно.
KoCMoHaBT61
"Чёт я устал, недельку меня не будет" — это плохая организация проекта/процесса и превращение проекта в "звёздный".
avost
По-моему, ровно наоборот. Если любой участник проекта имеет возможность в любой момент времени спонтанно, без составленного за пол-года графика уйти в недельный отпуск и проекту от этого не поплохеет, то это просто офигительная организация проекта/процесса. Что заставляет вас думать иначе?
KoCMoHaBT61
Манипуляция работодателем.
Одно дело — уйти в запланированный отпуск или даже в отпуск по болезни, и совсем другое "что-то я устал". Во втором случае это каприз. Капризы позволены некоторым незаменимым сотрудникам, которые появляются от плохой организации процесса разработки.
VolCh
Ну вот запланировано у меня 28 дней отпуска в году. Кому плохо, что я могу начать их тратить завтра? Почему это плохой процесс?
FloorZ
Я так же делаю! Могу уйти в удобное для меня время. А могу не уйти. Отпуска за год меня давно не устраивают, а в мире столько всего происходит, что в корпоративном аду, ты пол жизни пропустишь.
Almet
Филолизация? У Фила хороший посыл, но начинает подбешивать, когда другие пытаются подражать…
evil_me
Надрессируйте уже GPT-3 на постах Фила.
vyo
"Я не умел генерировать желтоватый контент — но меня научили"
PsyHaSTe
Я ведь правильно понимаю что это или твинк короля или очередной аффилированный человек (как тот парень, который перед новым годом работу искал)? Уже в нервную дрожь бросают заголовки "нужно всего лишь..." на хабре
fillpackart
Во-первых, я понятия не имею кто это, а во вторых мои тексты шикарны, и кликбейта в моих заголовках обчыно ровно ноль (если считать кликбейтом введение в заблуждение), хотя читателей, они, конечно, привлекают (за счет нарративности)
PsyHaSTe
А если считать кликбейтом кликбейт — то считаются.
Ну раз не знаете, значит не знаете, но стиль узнаваем абсолютно. Возможно, поклонники?..
fillpackart
Насколько я понимаю, история с кликбейтом именно в ведении в заблуждение. Мои заголовки обычно в короткой форме описывают то же самое, о чем статья. А то что они привлекают много внимания — ну так за этим же и нужны заголовки. В общем, если мне за что и стыдно, так это точно не за заголовки.
Да, наверное поклонники, автор меня даже упомянул в тексте. Хотя сам формат "Мнение о чем-то внутри индустрии" всё-таки не я изобрел
Interreto
Я не спрашиваю не собеседованиях тонкости языка или фреймворка, все вопросы о том как это все работает (life cycle запросов, http, и т.п.) кандидаты только со знаниями синтаксиса не проходят.
zagayevskiy
Кандидаты со знанием синтаксиса на вопросы о тонкостях языка не ответят. Я вообще, если честно, не понимаю, о какой «системе» идёт речь. Если человек ничего толком не знает, это видно на собеседовании.
Chronicler
Автор работает в госе. "Системой" госслужащие как правило называют государственно-номенклатурный аппарат (включая госкорпорации) с его правилами.
Поэтому автору кажется что и в частном бизнесе должна быть пресловутая "система" контролирующая людей и их трудоустройство.
Автор в упор не видит что отношения на рынке регулируются исключительно спросом и через голосование рублем, но никак не принудительно по решению кучки начальников. Будет бизнесу выгодно брать подходящих разработчиков для закрытия тасок в джире — будут брать, не взирая на наличие лычек и дипломов.
DepthRel Автор
Система в данном случае — рынок IT, а не абстрактный «гос. аппарат». Государственные компании бывают разные, и обслуживают они различные потребности. О своём месте работы и процессах внутри я ни слова не сказал, откуда у Вас в таком случае выводы?
Chronicler
Отсюда, из ваших слов о себе:
А уж как работает "система" гос-компаний, прекрасно знает каждый кто хоть раз работал в ней.
DepthRel Автор
При всём уважении, не нужно делать обобщающие выводы, будто Вы видели все гос. компании в России и за рубежом. Мы работаем со свежим стеком актуального инструментария, делаем программное обеспечение на совесть, и имеет хорошую репутацию в узких кругах. В нашем молодом коллективе нет «кислотных» коллег, бюрократов и просто случайных людей. Поэтому я не считаю уместным здесь обсуждать подобные вещи.
VolCh
Но скорее всего у вас есть формальные условия без соблюдения которых на инженерную позицию устроиться или невозможно, или очень сложно. Тот же диплом. Опыт работы, подтверждены в трудовой и т. п.
zagayevskiy
Что вы, в таком случае, подразумеваете под обучением обманывать систему?
DepthRel Автор
Как разговаривать с HR, что говорить, как себя подавать. Социальная инженерия одним словом. На техническом интервью рассказать о прошлой несуществующей работе, описать всё в красках и ответить на предположительные вопросы от собеседующего. Технические моменты, понятное дело что не глубокие, их заставляют заучить на первых трёх месяцах. На каждого придумывается и прорабатывается легенда, кандидату её объясняют и гоняют по предположительным вопросам, и так остальные несколько месяцев. Примерно поняли идею такой «подготовки»?
Simplevolk
А потом забрасывают на парашютах в стан врага?
А если раскрыли? Что делать?
DepthRel Автор
Тоже что и раньше, искать место где прокатит.
vserykh
Рынок сам порешает, не переживайте.
0xd34df00d
Государство тут — всего лишь частный случай. Я работал в фаангоподобной компании, которая были столь же неэффективна — потому что нет никакого бизнеса как субъекта, о котором вы пишете, а есть конкретные нанимающие люди. И в крупной компании формируется такая же номенклатура, и менеджерам начиная с некоторого уровня становится плевать на качество и результат, а важным становится лишь поголовье программиста под ними.
Просто, начиная с некоторого размера, действия каждого конкретного работника начинают всё меньше влиять на успех компании и, как следствие, на успех самого работника. Вместо этого начинают влиять какие-то сторонние, внутренние факторы — у менеджеров это надувание щёк и поголовье программиста, у всех — team player'ность, соответствие копроративной культуре, участие в корпоративных играх про дайверсити, етц.
Sergey-Aleksandrovich
На конкурентном рынке спрос и предложение стремятся уравновесить друг-друга. «Уравновешиванние» происходит в конкуретной борьбе претендентов на должность. А в конкуренции побеждает не столько тот, кто лучше делает (больше знает, быстрее соображает,...), сколько тот, кто лучше конкурирует. Вот «подкованные» в ИТ «трактористы» и уделывают аутичных «програмистов». И длится этот процесс «уравновешивания» может десятилетиями… а мне что учить вперед: матчасть или «приемы конкуретной борьбы», может все и сразу?
FloorZ
Лайфцикл запроса, это просто замученная модель оси, на примере одного запроса. Зубрится еще проще чем синтаксис и его подводные камни
Interreto
Во не представляете сколько людей посыпалось на этом, я спрашиваю от события ввода в браузер url до отображения страницы, без технических подробностей абстрактно и многие сыпались на том что из себя представляет http запрос, а другие где-то на middleware на вопросе как получить контекст запроса.
VolCh
А есть такое понятие в HTTP? Он же типа stateless by design
Interreto
Это-же вопрос не о самом HTTP протоколе, а о работе с ним на уровне middleware и далее. Речь об HttpContext шла.
VolCh
В нашем мире на уровне middleware с HTTP работают через HttpRequest/HttpResponse объекты/интерфейсы. И контроллеры с ними же. HttpContext — это лет 10 назад было. Я сейчас и не вспомню а зачем собственно оно нужно было.
Interreto
Вы цепляетесь к словам, я и не говорил что вчера это спрашивал, а только что-бы смысл передать что соискатели не понимают как это работает. HttpRequest это и есть контекст запроса, контроллер работает в контексте запроса.
VolCh
"А получает Б параметром" равносильно "А работает в контексте Б"? Для меня контекст как программная сущность — это обычно что-то долгоживущее, живущее заметно дольше одного запроса-ответа
JerryJJ
«Люди рубят сук на котором сидят, и ещё больше раздувают этот пузырь, который рано или поздно лопнет» — о, да! :)
A114n
Было бы интересно, кстати, послушать от включённых в процесс опытных людей (автора статьи тоже касается) комментарии на тему:
HuckF1nn
Здравствуйте, могу рассказать как это происходило у коллеги вначале пандемии (очень крупная и вполне известная компания по разработке софта):
1) да, лопнет за неделю
2) неблагоприятная экономическая обстановка.
3) уволят всех, кроме фуллстек-дядек, которые могут собой заменить всех.
У него из 20 разрабов оставили троих и из 5 девопсов оставили 2.
4) затрудняюсь ответить, вероятно, снижение качества поддержки и удорожание софта.
playerro
Могу сказать, что онлайн курсы (и пару книжек) в начале моего пути дали мне больше погружения, знаний и прочего, чем высшее образование в ВУЗе, где нужные предметы вроде программирования по специальности информатика и выч.техника давались в минимальном и неусваиваемом количестве, а за ненужные (инженерная графика, электротехника, физика, социология и тд) драли в три хвоста.
Насчет проблемы описываемой автором из госконторы — к сожалению решение лежит не в плоскости курсов, а в плоскости «зарабатывать 100 тысяч рублей», и связано это с плохой экономической ситуацией в стране — низкие зарплаты и большие цены с инфляцией, отсутствие легальной работы или МРОТ в регионах, поэтому люди в отчаяньи бегут туда, где можно получать неплохие деньги хоть как-то выучившись, особенно с такими заманиловками вроде курсов.
john_samilin
Вот мне интересно, если собрать все претензии к образовательной системе (в школе половина предметов не нужны, в ВУЗе уровень подготовки низкий), то как будет выглядеть образование будущего? Физкультура 10 лет в школе, а потом сразу двухнедельные онлайн курсы по %ПОПУЛЯРНАЯ_ПРОФЕССИЯ%?
К самим курсам, кстати, те же претензии можно предъявить
Old_Chroft
А если серьезно — тоже не понимаю риторики «то не нужно, это не нужно». Вспоминается известный диалог из советского сериала, где Холмс тролит Ватсона «ну допустим, Земля вертится вокруг Солнца, но мне то что с этого?»
SakuradaJun
Это не из сериала. В книге у Конан Дойла этот диалог тоже был.
WASD1
Но что мне это даёт? ;)
raamid
Актуальное мировоззрение позволяет сэкономить кучу времени на том, что ты ПОНИМАЕШЬ, как устроен мир, и не нужно запоминать кучу частной информации (например чем отличается шрифт таймс от шрифта дейли пост). Или дает возможность быстро найти частную информацию.
Arris
Да фиг бы с ней с землей… но когда фронтэнд-разработчик байта от бита не отличает...
… да, я такое видел.
ivanovdev
И чем это ему мешает формочки на страницу добавлять?
SantaCluster
… и решать бизнес-задачи ;)
VolCh
Не может показать правильно формочку, когда с бэка битовая маска приходит :)
sumanai
Думаю, это будет проблема бекендера.
San_tit
Согласен, причем просто потому, что он сможет ее решить :-)
vladkorotnev
А потом удивляемся, почему по кончине трафика на мобиле половина приложений работать перестаёт — потому что решение требовали на беке вместо фронта, и в итоге вместо ответа
15
сервер отвечает{"response": {"bit0": true, "bit1": true, "bit2": true, "bit3": true, "bit4": false, "bit5": false, "bit6": false, "bit7": false}}
:-)Dr_Faksov
Ох, удивили. Я знал синьора, тимлмда по core power management в одной огроменной американской компании- производителе мобильных процессоров. Так он вольты от ваттов не отличал.
playerro
Для начала надо собрать претензии к государственной системе, откуда растут корни проблем в образовательной и прочих системах, хотя зачем, они уже все собраны просто никто не может ничего с этим поделать.
Как пример, если отменить ту же призывную армию, то как минимум половина если не больше перестанет туда поступать только ради отсрочки, а значит качество образования увеличится в несколько раз, также много преподавателей жаловалось на бюрократию, из-за котрой они не успевают иногда подготовиться к лекциям, а если уж выкинуть советские программы обучения и подтянуть их уровень хотя бы до европейского, то вообще все по-другому заиграет, ВУЗы тогда станут гораздо более конкурентными по сравнению с онлайн курсами, которые уже зачастую качественнее и содержат больше материала и знаний чем программы ВУЗов (и без лишнего)
SakuradaJun
О системе много можно говорить.
Мне после обучения стало ясно одно. Может быть это касается только моего ВУЗа, но обучение не было интенсивным и программа откровенно слабая. 3 первых курса просто гоняли общеобразовательную воду туда-сюда, на 4-м и 5-м пошли уже профильные предметы, но тут внезапно обнаружилось что для понимания некоторых вещей сильно не хватает математических знаний, которые вроде как должны были дать на 1-3 курсах но то ли нужных тем вовсе не было, то ли объем их был недостаточный. Некоторые профильные предметы были в сильно поверхностном виде. Многие вещи узнал уже в процессе работы, и некоторые до сих пор узнаю.
Думаю, что в тех странах, где бакалавра готовят за 3 года, специалисты выходят более сильные чем у нас после 5 лет обучения.
vlivyur
Их скорее всего давали, но в отрыве от применения. Меня это всегда в матане бесило: мы вам даём матаппарат, который позволит и шуруп забить и гвоздь закрутить, но вы не вспомните этого, когда понадобится.
radonit
А вы в этом уверены? Я не нашёл гендерного состава студентов поступивших в 2019 г., но пройдитесь по гуманитарным кафедрам, 90% обучающихся девушки — хотя в армию им не идти. Мне кажется это миф, что половина или больше поступает из-за армии, ибо так и так служить.
Это что имеете ввиду? Что за советские программы и что за европейские?
Значит такая специальность, что хватает месяца на освоение, высшее банально не нужно. С врачами, химиками, физиками нет же такой ситуации
playerro
В технических ВУЗах, где 90% гендерного состава парни- примерно половина, а иногда даже больше (зависит от «престижности» ВУЗа) в нем только из-за армии. Как минимум из-за того что многие хотят отсрочить неизбежное, кто-то хочет через военную кафедру откосить, кто-то через аспирантуру, кто-то идет работать и зарабатывает на то чтобы потом дать на лапу, я перевидал множество всех этих вариантов.
Имею в виду советские программы и европейские. Что еще можно сказать кроме того что написано?
В посте, как и в моем комментарии вроде как речь идет про разработчиков, да и свою специальность я сказал, причем тут врачи, химики и физики хз… В них никто и не вкатывается по курсам которые обещают 100к, потому что 100к почти никто из этих профессий и не получает…
0xd34df00d
Это инфляция диплома.
Если упрощать, то призывная армия ? парни идут в вуз, даже если это не нужно ? диплом становится признаком «не пускает слюни» для парней ? диплом становится таковым признаком для всех ? девушки тоже идут в вуз.
Там, естественно, есть обратные связи, но их трудно рисовать в текстовой форме.
tendium
Я бы сказал, не инфляция, а девальвация. Но по сути — да.
0xd34df00d
Да, вы правы, это более подходящий термин, спасибо.
darthmaul
А почему тогда в США чуть ли не рекордное для т.н. "первого мира" поголовье выпускников, несмотря на то, что за обучение надо платить да и армия контрактная? Тут скорее пропаганда "тёплого офиса" и прочие социокультурные факторы играют.
transcengopher
В США, как я слыхал, на бытовом уровне есть очень сильный мем, что зарабатывают хорошо только люди с ВО. В итоге многие точно так же просто идут получать ВО и платят за счёт кредитов на обучение (иногда влезают в долги на неопределённое время). И пофиг, что хороший работник руками (сантехник, например) может зарабатывать не меньше.
Банкам, выдающим кредиты, поддержание такого мема на плаву, разумеется, выгодно — но это теория заговора.
0xd34df00d
Почему банкам? Для банков это долгие и довольно рискованные кредиты. Это универам выгоднее, скорее.
transcengopher
Думаю, не выгодные кредиты банки просто не стали бы давать — ведь хотя в законе указано, что такие кредиты бывают, заставить банк его выдать любому желающему будет нарушением свободы договора. Ну и банки, в теории, имеют хорошее лобби и при большом желании могли бы добиться послаблений или вообще отмены такой практики — но вроде бы, не пытаются.
Но может тут я тоже не прав.
spinagon
Это наименее рискованные кредиты, их даже банкротство не отменяет.
0xd34df00d
О, не знал, интересно, спасибо! Тогда это многое объясняет, да.
antonkrechetov
glestwid
Глядя на лоеров, докторов и дантистов — понимаешь что таки да, ВО — это первая ступенька к личным миллионам.
transcengopher
Конкретно в случае с докторами помогает ещё искусственное ограничение предложения на рынке труда. Ссылка — из этого следует, что не получится получить либо ВО, либо работу. Личные миллионы — они такие.
antonkrechetov А есть ещё вот такая статистика:
— https://www.newyorkfed.org/research/college-labor-market/index.html
0xd34df00d
Почему рекордное? Оно там не отличается принципиально от процента выпускников в какой-нибудь Норвегии или Финляндии, которые имеют совсем другой уклад жизни.
Ну и ещё в США куча выпускников во всяких fine arts и gender studies (субъективно, пруфов не будет), на что тоже надо делать скидку.
Gryphon88
Нужно, помимо армии, ещё не требовать ВО на каждый чих. В принципе, есть такая штука как компетенции, во ФГОСах, например, да и к каждому курсу, начиная со школы, пишут приобретаемые компетенции, если составить список требуемых компетенций для вакансий, то ВО может не потребоваться в большинстве случаев. Ну, это если чисто по бумажкам смотреть.
amirosta
вы про обучение программированию?
там львиная часть — это свежачок, сгенерированный уже спустя годы после прекращения советской власти.
имхо, нужно еще более радикальнее.
редкому программисту нужны вузовские знания.
программистов прекрасно можно готовить в техникумах-пту (или как они сейчас называются).
Ktator
А потом приходится пользоваться таким тормознутым говном как фронтэнд gmail.
amirosta
Дело в том, что ВУЗовские программисты или ПТУшные — это вам не дает никаких гарантий качества.
Вы можете обучаться в ВУЗе, вы можете получать дофига денег — а делать всё такое же тормозное говно.
То о чем вы говорите — это зависит не от квалификации программиста.
А от требований бизнеса к способу решения задачи.
Считает ли бизнес что нужно выделить на задачу достаточно ресурсов времени и рабочий силы высокого уровня или — нужно быстро-дешево.
Типично: выгоднее сделать быстро-дешево, пока не опередили конкуренты.
Скажем, приведенный вами пример:
Никаких таких сверхсложных фундаментальных вещей, типа знания высшей математики, от создателя gmail не требуется. Качество gmail никак не связано с образованием разработчиков gmail. Гугль может позволить себе достаточно квалифицированных специалистов, у них у всех (или большей части, как минимум) специализированные высшее образование, а не ПТУ.
DarthVictor
Большинство российских вузов и являются «техникумами-пту», если судить по тому, кем работают их выпускники.
AlexPu
>программистов прекрасно можно готовить в техникумах-пту (или как они сейчас называются).
В Финляндии так и поступают (подозреваю, что не только в Финляндии).
Причем с точки зрения денег, это даже выгоднее.
Если сравнить два варианта:
1) Школа (9 лет) + Училище (3-4 года) = работа + получение диплома ВО без отрыва от производства
2) Школа (9 лет) + Гимназия (3-4 года) + Университет (4-5 лет) = работа
первый вариант объективно выгоднее
FloorZ
В двфу хорошо программистов обучают.
Пока моя жена там училась, я офигевал с их программы.
Дифуры, графы, численные методы в перемешку с разными языками программирования, классифицированными по типам и назначениям "интерпретируемые, компилируемы, динамические, статические, строго типизированные...".
В итоге их гоняют по. Js, php, python, c, c++, c#, Perl, asm (основы).
А потом они пишут с нуля компилятор Паскаля на си, спп, шарп или питоне. (Лексер, интерпретатор, компилятор), потом пишут оптимизацию в asm и это просто курсовая, не диплом.
Сам помню, как помогал ей с курсовой. А потом помню помогал с курсовой по машинному обучению, делал ей формочки на qt. и opencv с выводом.
Так что у нас есть хорошее обучение программистов. Просто это не во всех вузах могут применить и народ только из двфу с их факультета на втором курсе, вылетает процентов 60-70 или переводятся в другой факультет на ИБ
Dr_Faksov
Вопрос — для чего каждому программисту нужно уметь писать компилятор?
A114n
«А вот, кстати, интересно, почему никто не напрягается по поводу того, что люди разучились отслеживать время без часов? Не думаете же вы, что Большой Трындец, который уничтожит все компьютеры и фабрики по их производству, не тронет производства электронных и механических часов? Или что вы при помощи школьной линейки и ножа сумеете выточить пружинки и шестерёнки, которые без микроскопа и рассмотреть-то непросто?
И даже солнечные часы не проканают — солнце ведь будет закрыто облаками и пылью.
В общем, надо, того — тренировать школьников вести отсчёт времени без часов. Хотя бы первые пять–шесть лет обучения. А также готовить пищу на костре, поскольку газа и электричества не будет. И ещё ловить эту пищу в лесу.
Потом уже можно переходить к роскошествам цивилизации — письму ручкой по бумаге и счётам.
А на последних курсах вуза уже можно показать подготовленным к выживанию людям сложное: часы, компьютеры и домашнюю бытовую технику.»
lex-kravetski.livejournal.com/679124.html
SwingoPingo
Да так то любые знания кроме фундаментальных к выпуску устареют (они устареют еще во время учебы и даже до поступления), но фундаментальным знаниям нужна практика и право слово, написание компилятора это очень не плохой вариант. Понимание как компилятор строит исполняемый файл кое что в повседневном написании да дает. Особенно когда приходится кодить на пограничных условиях, когда в распред среде сеть нестабильна, каналы узкие и т.д. Инкапсуляция процесса начинает оборачиваться своей нехорошей стороной и надо понимать, что там, «под катом».
FloorZ
ну фиг знает, моя устроилась C# разработчиком и ей эти знания помогают. А опыт работы со всем, помогает ей нормально взаимодействовать с другими разработчиками, которые заняты фронтом или бэком
И я уже молчу про то, что понимания контейнеров и все возможных алгоритмов защищает ее от написания говнокода.
FloorZ
что бы понимать, как это все работает изнутри и при виде утилиты make, ln, clang и gcc не бежать в ужасе, а спокойно собирать кросплатформенный софт на все случае жизни.
Вот возьми любого C# разработчика. Покажи ему сборщик scons, написанный на питоне, для кросплатформенной, крос-языковой сборки и дай ему собрать твой мега-проект на С++, который должен еще и модули на java для андрой, модули на Objective для ios и osx, а так же нативные либы на .net линковать и заставлять весь этот поровоз работать одним нажатием.
Никакая ide тебе не поможет, без понимания базы тупо слинковать это добро.
А я в gamedev почти каждый день людям разжевываю, как собрать тот или иной модуль для той или иной платформы и присабачить его к игре, прописать api и заставить работать, будучи почти не владея ни java, ни objective. Но фундаментальные знания и многолетний опыт в плюсах помогает изнутри понимать, как это все работает. Да даже при желании, можно какой то супер-тяжелую операцию на asm или векторизовать в AVX.
Dr_Faksov
А если не C#?
0xd34df00d
Призывную армию отменить, конечно, нужно, но вот вузы… Может, они просто для среднего программирования, ну, не нужны?
У меня программирования толком не было, а вот физики и математики было порядком, и я совершенно об этом не жалею, так как поступал на прикладную математику. Смысл идти в вуз на программиста?
playerro
В российских реалиях смысла действительно не было, потраченные впустую годы :(
radonit
Да и не в российских та же петрушка
zagayevskiy
В реалиях твоего универа не было. А моего — было. Не жалею, что закончил ВМК МГУ. Отличная база.
0xd34df00d
А я в известном смысле жалею, что закончил ФУПМ МФТИ. После этого работа программистом на условном C++ кажется зарыванием образования в землю, потому что работу, где мне бы пригодилось больше ну этак процента от полученных знаний, ещё поискать.
InterceptorTSK
В этом и есть проблема. Вы никому не нужны, и все ваши знания вполне может быть крутые — не нужны. Потому что их кроме вас — НИКТО НЕ ПОНИМАЕТ.
Вас там сколько было? 40 в группе? ну пусть 50, половина купленых, четверть случайных, на выходе 10? 15? Вот столько реальных программистов выпускает ваш вуз в год. И вы никому не нужны со своими заоблачными знаниями и не менее заоблачными технологиями, которые вы способны сообразить походя.
А вообще, складывается стойкое ощущение, что здесь вообще никто не учился в университетах. Причём поголовно, конечно же.
Впрочем, я прекрасно понимаю, что универ универу рознь, но не до такой же степени…
Объяснюсь. Все поголовно «влечивают» про какую-то теоретическую часть, но никто не говорит про практическую, а ведь это самое интересное. И похоже что практическая часть как раз таки чрезвычайно сильно отличается. И я сильно подозреваю то, что все высказавшиеся про какое-то там своё образование — вообще не имели или же имели, но очень слабую практическую часть обучения.
Теперь конкретный пример: программисты тгу на первом семестре теоретически проходят ровно то, про что пишут все, однако же практическая часть в итоге например после первого семестра (да да, первого семестра) — это написание собственной версии фара/нортона на ассемблере. Не написал — отчислен. Точка.
Для тех кто совсем в танке — вы можете изучать любую теорию, но что вы реализуете этой теорией? Вот я таки начинаю понимать, что всё это зависит от ацких пердунов, засевших на кафедрах непонять зачем. Они и подкидывают студентам тривиальные задачьки, практические. Однако же существуют места, где на кафедрах сходу подкидывают крайне сложные задачьки, и это и определяет дальнейшую судьбу студента.
Для тех кто совсем в танке с крайне толстой лобовой бронёй — ровно так же отличаются и школы. Пройти учебник алгебры за 9-ый класс сможет любой дебил. А вот решать весь спектр задач связанных с этим теоретическим знанием может далеко не каждый. Школы тем и отличаются. Теория у всех одна, а решаемые задачки подкидываемые учителем — отличаются как небо и земля.
Исходя из этого теперь про студентов на выходе. Ну приходит такой «умник» в кооператив рога-и-капыта, ему суют какой-то жаваскрипт вгавно тупой и тормозной, грят давай делай на нём всё. Умник просто в шоке. Зачем это гавно? Для каждых задач у умника куча всяких сложных задачек были, и умник прекрасно разбирается в том, что всё фигачить на скриптах — это полнейшая бредятина. Ему говорят — ставь сервак, крути скрипты. Умник в шоке… Ну потому что умник сходу оценил кол-во баз и транзакций, а на это всё хватит самописного кода на джаве в 300 строк и баз в текстовых файлах завёрнутых в рар. Ну потому что умник решал такие задачки, это не то что примитивщина — это более чем примитивщина. Но его тащщут зачем то в монструозный мскюель в 20млн. строк кода, который обрабатывает 50 запросов в день на трёх базах. Умник никогда на такое не подпишется в принципе. Это всё равно что собрать завод на потенциальный выпуск 30к деталей в день, но деталей нужно всего 30. Это же бредятина. По определению. Умник это понимает. Но проблема в том, что это понимание никому не нужно.
Посчитаем. Прогеров с ФУПМ МФТИ вышло 10-15. Реальных прогеров. Специалистов теории информации. Ну пусть в каждом пятом универе подбрасывают реально крутые задачьки студентам, на выходе с них есть толк. Сколько у нас универов с ф.инф.? Ну пусть 50. Итого прогеров выходит на всю страну где то 500-700. Слушайте, да в мире сказочных дебилов никчомных коих сотни тыщ уже — эти 500 реальных программистов просто потеряются и всё. Нынешний мир так называемых «прогеров» — это сказочное зазеркалье с грибами, норами и прочими тяжёлыми веществами. 500 реальных программистов с годных университетов в этом мире не нужны.
0xd34df00d
В группе было человек 12. На всём курсе под сотню. Купленных было ноль, случайных двое (примерно столько отсеялось к третьему курсу). Но это так, из любви к искусству.
Таких групп на факультете было восемь.
Вуз выпускает программистов ещё меньше. Вуз таки выпускает прикладных математиков.
SwingoPingo
А кто купит работу прикладных математиков уровня МФТИ? Давайте помечтаем, мы собрали университетскую компанию, выбили гранты, выкинули компы, накупили досок с мелом, надо разработать что то фундаментальное, хотя и «прикладное», судя по вывеске.
Кто будет заказчиком и под какого масштаба проекты?
delhi_heir
Разные физические расчёты авиация, космонавтика, металлургия, химический синтез, и так далее.
И даже автоматическая биржевая торговля habr.com/ru/company/iticapital/blog/267403
amirosta
Это можно сделать и с отдельной наукой.
Ученые, занимающиеся авиацией — дают логику работы программисту из не МФТИ и он эту логику прекрасно реализует.
Это здорово одновременно быть и хорошим программистом и узким ученым в какой то области, но это крайне редко встречается и рассчитывать на такое как на типовую ситуацию не приходится.
Вполне нормально разделять задачу согласно своей узкой специализации.
Там как раз меньше науки и больше техники.
Скажем, оптимизация по скорости и по близкому размещению серверов даст вам больше выхлопа чем мутные экономические наукообразные выкладки.
delhi_heir
Если всё было так легко и просто то, учёным не приходилось бы самостоятельно использовать MathLab и MathCad.
amirosta
Приведенный вами пример это вовсе не «программисты, разбирающиеся в космонавтике и сопромате», а совсем напротив «физики и химики и пр., обладающие базовыми навыками программирования»
Ученые работают со сложными расчетами еще со времен Ньютона и Галилея. А то что считают ученые последние лет 300 — так я вообще удивляюсь как они такие вещи вручную до компьютеров рассчитывали.
То, что сегодня для этого есть удобные инструменты — это только плюс.
Ничего такого сверхествественного в том, что ученый вбивает формулу в некий программный код я не вижу. В некоторых областях науки — это рядовая часть его работы.
И да, разумеется, обладая какими-нибудь плохонькими навыками программирования ученый может куда как быстрее обрабатывать свои результаты, нежели дожидаться пока программист ему накодит качественно.
И, более того, с точки зрения профессионального программиста их программный код довольно убог. Знаю, доводилось во времена работы на кафедре помогать готовить код к защите диссертаций.
Язык программирования Фортран, широко используемый в той же физике десятки лет, не зря уже много лет считается выдающимся по своим вычислительным возможностям. Что не мешает ему быть довольно убогим с точки зрения возможностей по удобству организации кода.
Там из реально ценного только эта сам алгоритм вычисления, грубо говоря «формула».
Повторить это на нормальном техническом уровне для профессионального программиста совсем не сложно.
В реальной же программной системе, эксплуатируемой уже не в научных, а в прикладных целях — «формула» хоть и является ценной частью, но является сравнительно небольшим куском кода. В реальной системе полным-полно кода для другого — логгирования, мониторинга, конфигурирования, обработки исключения, ввода-вывода, взаимодействия с пользователем, кода для unit-тестирования и для интеграционного тестирования, кода, связанного с развертыванием приложения, взаимодействия с СУБД, кода для организации параллельных вычислений и кода для синхронизации подсистем в распределенной вычислительной среде и пр. и пр.
Вот всё это может написать только программист, а не ученый.
Ученый, способный в программном коде зашить «формулу» и программист, способный создать ПО, использующем эту формулу — это сильно разные квалификации.
Я не спорю, что где-то кто-то может быть одновременно и хорошим ученым и хорошим программистом.
Но с учетом сложности современной науки и сложности современного ИТ сомневаюсь что этих людей может быть много.
Сейчас нужно узко специализироваться чтобы быть хорошим профессионалом.
0xd34df00d
О чём и речь: МФТИ не выпускает и не должен выпускать программистов.
0xd34df00d
Автоматической биржевой торговлей я прямо занимался, и там это образование толком не нужно. Оно (в своей цельности и полноте) не нужно даже тем, кто пишет сами стратегии — там статов достаточно, а шесть лет прикладной математики совершенно не обязательно.
0xd34df00d
Ну, в принципе, любая ресёрч-лаба в любой компании или при любом институте. Проблема в том, что мало компаний имеют ресёрч-лабы или хотя бы нуждаются в них.
Если говорить о личном опыте и мироощущении — я бы мог продолжать заниматься, например, машинным обучением, особенно не сейчас, а лет 10-15 назад (иначе я бы зарывал в землю инжиниринговую и C++-ную часть своих навыков, да и в современном машинном обучении строгая математика нужна сильно меньше, и именно поэтому я году в 2018-м или 2019-м решил перестать этим заниматься). Можно было бы, действительно, идти заниматься физическими расчётами в каком-нибудь
СухомBoeing или Lockheed-Martin.И, опять же, если говорить о личном ощущении — я последние месяцев девять довольно плотно занимаюсь ковырянием кое-какого куска математики, который довольно плотно связан с программированием и подразумевает написание кода, так что тут нужно и в математике немножко понимать, и код писать уметь. Но тут, кстати, ирония в том, что вуз мне для этого куска толком ничего не дал, кроме, возможно, навыка размышлять и какой-то математической культуры, и я до того потратил года три вечеров и выходных на то, чтобы хоть что-то из нужной области заботать (и всё равно знаю очень мало).
VolCh
Смысл есть идти на инженера-программиста.
0xd34df00d
Не слышал особо про эту специальность. Можете рассказать подробнее?
sentyaev
Из того что помню было: матан, дискретка, мат логика, алгоритмы и структуры данных, реляционная алгебра, разные парадигмы программирования, тестирование, расчет надежности, и т.д. В общем вся база. ЯПы изучали только для иллюстрации идей ООП, ФП и т.д.
Такой программист для решения бизнес задач.
0xd34df00d
Как анализ бесконечно малых? Не нужен среднему программисту. Да и несреднему, тащем, тоже.
Довольно широкое понятие. Большая часть из того, что там рассказывается, и что нужно программистам, входит в упоминаемые вами далее алгоритмы и структуры данных.
На каком уровне? Законы де Моргана и тому подобная булева алгебра изучается за день самостоятельно, очень мало кому нужные КНФ/ДНФ и тому подобные вещи — ну за неделю. Хардкорный матлог изучается годами, чистыми математиками и программистам не нужен.
Полгода с Корменом.
У нас на это ушло пара лекций на курсе по БД.
Очень интересно, что в рамках вузовского курса можно рассказать про условное ФП.
Можете рассказать про этот курс?
Прикладной матстат.
sentyaev
Действительно матан и матлогика на базовом уровне изучалась.
Дискретки было много, все пять лет.
По БД, коечно был курс по БД и как часть его была реляционная алгебра.
По ФП довольно стандартный курс был, как учебник был SICP.
Тестирование — я уже программу курса этого не особо помню, много лет назад это было, помню там про подходы к тестированию было, про черный и белый ящик, про модульное, интеграционное и приемочное тестирование, как подбирать правильные тестовые данные, граничные условия и т.д.
0xd34df00d
Этого у нас не было, даже намёков (впрочем, мы были прикладными математиками, так что неудивительно).
Спасибо, что поделились, любопытно.
sentyaev
Мы, получается, были прикладными программистами. Помимо того, что я написал было еще проектирование ОС, сетевое программирование, многопоточное программирование, системное программирование, компьютерная графика и т.д.
Если вдруг интересен перечень того, что изучали то смотрите тут начиная с 13ой страници.
Ru6aKa
А как же ЧМО?
0xd34df00d
А что это такое?
Мне только «численные методы оптимизации» приходит в голову, но это вряд ли имеет отношение.
Ru6aKa
Да это именно «численные методы оптимизации». Вполне себе дисциплина для «среднего разработчика» в отличии от ТФКП например.
0xd34df00d
На неё даже современные машинные обучатели кладут (хотя казалось бы, вот где оно нужно!). Фреймворк в питоне всё проглотит, изучать скорости сходимости и что-то про них доказывать не нужно.
Akon32
Хех, про виды тестирования, вроде бы, и я тебе говорил раньше.
Ещё у нас были предметы типа теории управления, автоматизированных систем, организации ЭВМ, операционных систем, что-то про микроконтроллеры, про какие-то экономические и правовые аспекты разработки ПО, и совсем уж узко-профессиональные предметы типа человеко-машинного взаимодействия (про юзабилити и проектирование интерфейсов) и методологии разработки ПО (про всякие водопады и эджайлы).
Конечно, это всё можно и самому учить, но полезен сам список предметов.
delhi_heir
А до сеньора вырасти программист никогда не должен?
Должен всю карьеру оставаться «вечным подмастерье»-формошлёпом?
PS а работодателю при выборе сеньора как быть?
0xd34df00d
Среднему сеньору анализ бесконечно малых тоже не нужен. Мне вообще сходу только обработка сигналов пришла в голову, где это вообще может хоть как-то пригодиться в виде Фурье всяких, да и то, там нужны лишь прикладные результаты (точно так же, как для взятия производных на практике не нужно изучать всю теорию пределов вместе с доказательствами).
И пожалуйста, прячте картинки под спойлер уже, особенно не несущие никакой смысловой нагрузки.
А работодателю умение взять интеграл и умение сплясать калинку-малинку примерно одинаково полезно.
Tsimur_S
Софт численного моделирования и физические движки в геймдеве.
0xd34df00d
Вычматы. Матана там нужно очень мало.
Матричный анализ. Даже не полноценный линал — вам не нужно знать про rank-nullity theorem, не нужно знать про доказательства свойств какого-нибудь SVD-разложения, и так далее.
Точно так же, как вы даже в быту пользуетесь логикой, но знать доказательство (или даже знать про существование) теорем о полноте и корректности логики первого порядка, или знать категориальную формулировку логики со всякими топосами совершенно не обязательно. И считаете вы вполне успешно без изучения аксиоматики Пеано.
Tsimur_S
Численные методы не используют матаппарат матана?
Бесконечно мало?
Аксиоматика Пеано и 1+1 =
112 являются частями арифметики. Достаточно использовать что либо одно что бы утверждать что я использую арифметику.По вашему же получается что что бы утверждать что в работе используется матанализ нужно как минимум публиковаться по теме теории струн.
0xd34df00d
Если вкратце, то нет. Максимум — для доказательств свойств тех или иных методов, чтобы показать, например, что метод аппроксимирует «идеальный» матанный объект.
На школьном уровне. По крайней мере, у нас в школе было взятие производных и интегрирование.
Но недостаточно, чтобы утверждать, что вам для счёта нужна аксиоматика Пеано вместе с доказательствами всяких её интересных свойств.
Кстати, оные свойства и смежные темы мне требуются в работе сильно чаще, чем математический анализ, ну да ладно. Вероятно, мои занятия не являются репрезентативными.
Нет, мой тезис немного отличается.
Tsimur_S
Хорошо, как мне понять когда лучше использовать метод Рунге-Куты а когда Рунге-Куты-Нюстрёма(первая попавшаяся в википедии модификация) или то почему тот или иной метод работает, если я знаю матан на школьном уровне?
Так никто вроде не утверждал подобное, пролистал вверх до коммента преткновения, там наоборот вами утверждалось что «матан не нужен среднему программисту/синьору» а не "${имя теоремы из матанализа} вместе с доказательствами всяких ее интересных свойств не нужны среднему программисту".
Я запутался, изначальный тезис вроде был таким: среднему программисту матан не нужен, потом — программисту из геймдева(или они уже не средние?) матан нужен чуть-чуть. Эта чуть-чуть дает право говорить что матан программисту нужен или это будет неправда?
amirosta
Для геймдева из математики из четырех лет ВУЗа реально полезную в геймдеве (обратите внимание это будет полезно прежде всего для разработчиков гейм-движков, большинству же и этого не нужно) информацию можно выдать за полгода-год.
Это из опыта моих 5ти (тогда еще так было, а не 4) обучения по прикладной математике.
И напротив: кое чего из полезного в геймдеве — вы в ВУЗе даже и не получите, если только не пойдете специализироваться на кафедру на какое-то направление математики, подходящее для геймдева.
То есть в чистом виде образование и избыточно и недостаточно одновременно.
Замечу, я говорю только о разработчиках базовых-ключевых сложных компонент геймдева — серьезных движков.
А прикладным гейм-программистам, что навороченных движков с физикой и рендерингом и и обработкой звука не пишут, а просто пользуются таковыми движками — хватит и месяца-другого линейной алгебры и т.п. простых преобразований пространства. И еще пару лет чистой практики работы с конкретным навороченным движком.
Прикладным гейм-разработчикам это можно освоить и самостоятельно. Это можно освоить и в школе в математических специализированных классах. Это можно освоить и на коротких курсах.
Tsimur_S
Рано или поздно может возникнуть ситуация когда прикладной гейм-разработчик, по мере роста амбиций, захочет заняться разработкой движков. Если у него нет университетского бекграунда за плечами сколько по времени займет переобучение? Ну допустим озвученный вами год. А сколько бы заняло если бы он уже имел за плечами матфак?
Лично мне кажется что лучше иметь к 22-23 годам 5 лет хорошего образования и по возможности полгода опыта чем иметь полгода курсов/самообразования и 5 лет рабочего опыта. В 22-23 это будет совсем неочевидно, особенно с финансовой точки зрения, но к 30-35 годам отрыв уже будет нагляден.
0xd34df00d
Если вкратце, то я не думаю, что возможность такой ситуации оправдывает требование
линаламатричного анализа для всех программистов.amirosta
По большому счету столько же. Уверяю вас.
Я и игростроением увлекался (свои движки) и матфак за плечами. Никаких сакральных знаний матфак не дает.
Кроме разве что системного мышления и определенного круга общения, но это можно и другими способами достич.
Ну в недели форы разница, из опыта своего скажу.
А скорее всего, вам никогда в жизни этой форой воспользоваться не удастся.
amirosta
Отрыв будет, возможно будет, если вы пойдете заниматься разработкой чего-то реально наукоёмкого. Это сколько программистов делает? 1 из 100 000?
Но подавляющее большинство программистов занимаются глубоко прикладными практическими разработками.
То есть если вы знаете чем именно вы планируете заниматься и там нужна наука — то да, учиться этой науки целесообразно. Причем учится именно специализировано. (тут правда вопрос: а сколько людей настолько точно знают, начиная учёбу в ВУЗе — а чем конкретно таким наукоёмким они будут заниматься после ВУЗа)
От того же универсального, а не специализированного образования, что дают на матфаке — особой пользы нет.
Если вы будете учить именно математику в ВУЗе, а не программирование практиковать все эти года, то у вас будет не отрыв, а отставание от того человека, что на 5 лет начал раньше вас работать.
А вот более инженерные вещи, типа распределенной архитектуры и т.п., если они будут даваться в ВУЗе — это реальный плюс. Но это не матфак, не математика, а скорее всего какая-то специальность, которой учат в политехнических ВУЗах.
Но и там 4 года учить особо нечего.
0xd34df00d
Почитать чужие статьи на тему, или взять справочник. Знаете анекдот про вычисление объёма шара?
А зачем вам это знать? Вас же не интересует, почему математическая индукция работает, и какая там связь с леммой Цорна, например?
Матан как вузовский курс (который у нас занимал четыре семестра от определения чисел через кратные интегралы и потоки-дивергенции до всяких Фурье) именно что не нужен. Точно так же, как не нужен вузовский матан для решения задачек из ЕГЭ на нахождение производных.
В конце концов, я вам могу сформулировать матан через нестандартный анализ, который требует матлог в объёме чуть большем, чем условные законы де Моргана, но это не означает, что для взятия производных вам нужен матлог.
Это будет неправда, потому что людей, разрабатывающих игровые движки, очень мало на фоне всего количества программистов, поэтому из «среднего» они именно что выбиваются.
А то, знаете, я не далее как вчера решал некоторую задачу, которая требует знать, что такое экстенсиональность, почему её наличие делает теорию типов Мартина-Лёфа неразрешимой, и как мне в моей конкретной задаче обойтись без экстенсиональности всего лишь поточечным равенством функций. Но это не значит, что в вузах должны резко начать рассказывать всю ту хренотень, которая написана по ссылке, и что она нужна среднему программисту.
mipiro
Численные методы всё-таки разные бывают. Чтобы понять вот эту книжку, и курса обычного анализа не хватит, понадобится курс функционального анализа, причём перед ним ещё и общая топология в каком-то объёме будет не лишней.
Другое дело, что те практики (в моём представлении обычно работающие со сложными физическими моделями) которым нужны нестандартные методы для решения УРЧП и интегральных уравнений, часто используют их как чёрный ящик — математика же нужна, чтобы обосновать их эффективность, лучше обрисовать границы применимости и нащупать новые подходы.
Понятно, что всем такую книгу точно читать не нужно, но всё-таки разумный уровень математической грамотности в этой сфере редко нулевой — я бы сказал, что он сильно зависит от конкретной задачи. Бездумное использование численных методов может привести к тому, скажем, что численный артефакт примут за реальный эффект — системное понимание границ применимости даёт шанс ошибаться реже и находить такие ошибки вовремя.
amirosta
Ну в госконторах смотрят на наличие диплома, да.
Им нужно иметь отмазку «почему мы выбрали А на эту должность», чтобы прикрыть свою задницу.
Скажите, а что даст знание матана (анализ бесконечно малых) сеньору?
В каких то отдельных редких специализация знание матана (анализ бесконечно малых) может быть полезно. Если вы разрабатываете некий научный софт, видимо.
Прочие математически вещи позволяю грамотнее делать какие-то очень специфические вещи для игрового движка, тут рядом подсказывают про моделирование физики (однако большинство просто воспользуется готовыми библиотеками), то же быстрое преобразование Фурье вручную в наше время смысла делать нет, полно готовых отлаженных оптимизированных библиотек.
Если если забыть, что для большинства подавляющего сеньоров — даже знание о том, что быстрое преобразование Фурье вообще существует — не пригодится вообще никогда.
Программирование — это про практику. А не про теорию.
Это набивать руку на архитектуру, к примеру. Однако то, что дают по архитектуре будущему сеньору — он уже к миддл-уровню будет знать больше.
VolCh
Ну вот задачу доводилось решать: есть серия интервалов времени — промежутки между пиками одной очень сложной колебательной системы, нужно выводить алерты когда эта серия характерным образом изменяется. Слишком быстро меняется — плохо, стабилизировалась — плохо, "зависла" — очень плохо.
BugM
Пик — логируемое событие. Просто по отсечке больше чем.
Дальше считаем хоть П(пик) per second, хоть что угодно.
Алерты вешаем на оба отклонения.
Вам для этого точно математика нужна? Я в Графане дашборд минут за 30 накидаю.
vladkorotnev
Не потому ли, что кто-то писавший Графану уже изучал матан и общее решение для этой задачи накидал в виде плагина? :-)
VolCh
Уже есть серия интервалов между пиками (определить пик тоже задача не простая — это не отсечка простая, это перегиб графика типа такого , причём локальные перегибы нужно игнорировать) — вот тут 4 пика основных.
Ну и это 90-е годы, Графаны не было даже в проекте, а надо было в реалтайме с очень высокой ценой ложноотрицательных срабатываний
Vitalley
На этом примере программисты которым ВО не нужно разбежались?
VolCh
В смысле в треде или на том проекте? )
BugM
90е не интересны. Устарели. Мы же хотим о современной разрабоке говорить?
В Графану льем просто значения. Наш код на этом закончен.
Уже в Графане берем неотрицательную производную (non negative derivative). Встроенная функция Графаны.
Графики производной будут очень говорящим. Все пики на нем будут отлично видны. Мониторинг это дело техники.
Зачем вам математика для этого? Я даже готов написать код реализующий это без Графаны. Приэтом я буду использовать максимум первый курс математики.
VolCh
Нам не производные нужны были а гармоники, появление-пропадание-смещение гармоник определ`нных частот. И даже если условная Графана это может то задача программистам была "разработать программу, которая...", а не "настроить какую-нибудь готовую программу". Такая постановка предполагает, что бизнес-задача, рынок и ограничения (типа в штате нет специалистов по Графане, а по C++ есть) уже проанализированы и принято решение о целесообразности собственной разработки.
BugM
Это даже не важно. На Графане точно можно найти подходящий показатель и мониторить его.
После такого всех причастных менеждеров и лидов надо сразу отправлять на мороз. А сеньеры сами уйдут. Их заставляют приседать, вместо того чтобы просто и эффективно решить задачу используя стандартные средства.
Специалисты по Графане? Это шутка? А специалисты по sendmail у вас есть?
Что надо делать и что проиойдет после таких решений я чуть выше написал.
Графана это просто вариант по умолчанию. На самом деле есть аналоги делающие тоже самое. Можно брать их. Главное никаких велосипедов.
VolCh
У вас очень радикальные взгляды. И некоторым сеньорам может быть интересно заниматься программированием дискретной математики, а не администрированием дашбордов или сендмэйлов (да, этим администраторы занимаются, а не программисты)
PsyHaSTe
Ну можно сказать что такие задачи хорошо если 0.1% программистов решает хотя бы иногда. Большинство слепляют сервисы с рестом и добавляют поля в JSON
Dr_Faksov
Про матан уж не помню кто сказал что матан — орудие исследователя, для рядового программиста вещь абсолютно ненужная. 99.9% всех нужд анализа покрывается существующими программами обработки. А если программа не смогёт — то и у вас пупок развяжется на бумажке посчитать. По-любому придётся обращаться к спецам.
dimaaannn
Гатчинское Отделение Вуза Нетрадиционного Обучения,
кафедра информационных технологий и всяких умных слов
Прайс лист:
Диплом программиста — 100 000р
Диплом старшего программиста — 300 000р
Сертификат повышения квалификации программиста — 10 000р (обязательно проходить раз в пол года, для подтверждения диплома)
Прохождение дорабочей практики на <название специализации> — 50 000р/мес
Ansud
Обучение по предметам по выбору. То есть первые 3 класса базовые понятия, без которых никуда: умение писать, читать, считать, слегка думать, а самое главное управлять временем и завести умение учиться, а не забивать болт на все. Дальше смотреть куда тебя тянет и развиваться в этом направлении, выбирая нужные предметы.
john_samilin
и какие же предметы выберет пятиклассник? физику? математику? литературу?
у ребенка до 9 класса есть ровно 0 способов решить, чего же он хочет от жизни
Ansud
Ребенок в пятом классе уже достаточно понимает для того, чтобы понять что именно ему нравится. Отсюда и плясать. Обычно только проблема в том, что мама лучше знает, что надо дитятку.
VolCh
Я вот в пятом классе не понимал, что мне очень будет нужен английский. И мама с папой, увы не понимали.
amirosta
Конечно.
Могу сказать по примеру племянника, который в этом возрасте:
Тортики вкуснее, чем супчики.
А играть целыми днями в компьютерные игры, намного увлекательнее любого другого занятия.
sumanai
Я и сейчас так считаю.
Keyten
Я тоже. Слово «функция» узнал сначала из учебника по JavaScript, потом через год пошёл в 5 класс и встретил его на алгебре. Помню, обрадовался, увидев знакомый термин.
Ansud
Неужели у ребенка нет того, чем ему нравится заниматься, кроме гейминга? Впрочем и на гейминге люди деньги зарабатывают ;)
amirosta
Гулять с друзьями.
Но какое это имеет отношение к нашему исходному обсуждению про самостоятельное планирование ребенком его будущей карьеры.
Или лазать на скалодроме — потенциальная карьера тут весьма ограниченная.
delhi_heir
Наверное, играть с друзьями, а не просто прогулки на свежем воздухе.
amirosta
Это называется «мама, я пойду погуляю».
А что именно они там делают — кто же за этим следит?
john_samilin
конечно понимает. что главное — это игры и мультики
asocial
Мне уже больше 30 лет, я до сих пор не очень понимаю, что именно мне нравится. А вы предлагаете детям решить, чего они хотят =)
tommyangelo27
ardraeiss
А одно другому не мешает. Он может понимать что ему интересно. И может не понимать что ему должно быть интересно(с точки зрения взрослых вокруг) для "будущей взрослой жизни". И с навыками преобразования одного в другое всё плохо может быть — окружающие не учили, поскольку сами росли в "должен/обязан/добытчик/мамонта в дом нести тебе".
delhi_heir
Зависит от ребёнка.
Я и в первом классе понимал, что хочу быть инженером: любил конструкторы и читать журнал Юный Техник.
К одиннадцатому классу, я лишь уточнил, что хочу быть конкретно инженером-программистом.
tommyangelo27
Везёт :) Я понял чем хочу заниматься примерно годам к 25.
ardraeiss
Это сильно от обстановки вокруг ребёнка зависит. Программировать я начал классе так в 6-ом аль 7-ом(тупо не помню уже когда именно, но компьютера дома ещё не было), по стопам папы и просто потому что интересно вот так конструировать код было. К моменту компьютерных занятий 9-10 классов уже занимался во Дворце Пионеров в компьютерном центре, использовал бейсик, паскаль и даже C.
Вот куда дальше эти интересы прилагать и как зарабатывать на этом — тут было абстрактное "получить высшее техническое, пойти в НИИ, работать", но это, снова, вопрос окружения ребёнка и предлагаемых оным горизонтов решений.
Вот в жизнь не поверю что это что-то сильно уникальное, в плане "получить интерес с детства и ему следовать". Мой зацепивший интерес, конечно, скорее тяготел к "делать компьютерные игры", чем к просто прикладной разработке — но базово захватил с головой ещё в средней школе. Всё ещё не очень отпускает.
amirosta
Хз, хз.
Компьютер мне в детстве купили по моей просьбе, а не наборот. В те времена компьютер был еще экзотикой.
Моих племянников спрашивают — какие кружки ты хочешь посещать, а какие не хочешь…
pawellrus
Все происходящее это всего лишь следствие состояния экономики и рынка труда.
В людской природе заложен алгоритм достигать максимально возможных благ для себя при минимально возможных затратах. Вот люди и приспосабливаются.
Обвинять в этом условного вайтишника Васю или создателя очередных курсов Петю — все равно что кричать на ветер, чтоб он не дул. Абсолютно ничего противозаконного они не делают. А этика отходит на второй план перед желанием вкусно кушать и жить отдельно от родителей.
Так же хочется добавить, что пет-проекты — не показатель качества сотрудника. Кодер в принципе не обязан кодить за пределами своего рабочего времени.
0xd34df00d
Да, не обязан. Нет, показатель — думаю, корреляция там есть, и существенно ненулевая.
faoriu
У автора баттхерт от того, что можно, оказывается, за год научиться кодить и начинать зарабатывать деньги вместо просиживания штанов в ВУЗе и вылизывания задниц вузовским преподам.
Matisumi
А можно, да?
MonkAlex
За год — вполне.
amirosta
Лично вытягивал с нуля до «вполне» стажеров-джунов за смешные 2 недели-2 месяца.
Другое дело, что прекращать пасти каждый их шаг экономически выгодно становилось где-то через полгода.
И где-то со второго года эти люди более-менее выгодны предприятию.
INSTE
То есть в итоге по затратам времени все равно приходим к трехлетней программе бакалавриата или 4 годам в техникуме — что и требовалось доказать.
amirosta
Вы слишком оптимистично оцениваете тех, кто выходит из ВУЗа/техникума даже обучившись по профильной специальности.
Это не программисты еще. А только «заготовки программистов».
Большая часть того, чему учат в ВУЗе или техникуме вам пригодится в реальной разработке чуть чаще чем никогда.
Опыт реальной коммерческой разработки длиною в полгода даст вам больше профессионального опыта, чем вы получите в ВУЗе-техникуме за 3-4 года.
Другое дело, что коммерческие фирмы, за редким исключением, вовсе не мечтают обучать своих сотрудников настолько интенсивно и насколько дорого насколько это делал я. Типичному же предприятию нужно чтобы человек вышел на работу и сразу начал хоть как-то работать (на практике все равно нужна хотя бы пара недель, чтобы в общих чертах войти в курс дел).
И курсы/техникум/ВУЗ нужны прежде всего для того, чтобы вас хоть куда то взяли.
Но курсы/техникум/ВУЗ ничего не говорит о том, насколько вы реально будете полезны фирме.
С большой вероятность, вы будете не более полезны, чем человек после курсов. Если только программирование не является вашей страстью со школы — тогда это другой разговор. Но если вы программируете с 14, то к моменту ВУЗа/техникума ваш уровень уже таков, что вы кое-чему уже можете научить ваших преподавателей…
INSTE
Ну я получал ВО, потому знаю как там. И не говорю, что там нормально. А говорю, что как раз примерно это время нужно (но заполненое делом и практикой + теория тоже по делу не помешает) чтобы получить от работника прибавочный продукт, а не только издержки. И что на самом деле обучение таки нужно, но иного формата.
kimisa
Не согласна. В ВУЗах дают азы. Рассказывают как правильно писать код, что такое БД и тд.
А вот как это применять на практике — это как и везде уже дается на месте.
Для этого как раз в ВУЗах есть производственные практики, на 4 и 5 курсах. Они как раз и позволяют понять чего ты хочешь и немного начать входить в курс всех технологий. И это как раз и дает толчок для развития. Просто чаще всего народ не ходит на практики, они просто это покупают.
Maksclub
я вас умоляю… за 2 года вполне дорасти до рыночного средняка с тем объемом и уровнем материалов…
amirosta
За 2 года вполне реально научиться выполнять большую часть работы, что требуется бизнесу.
Потому как бизнесу чаще всего требуются довольно простые вещи. И бизнес не хочет платить много.
Но после 2 лет опыта — вы просто специалист, от которого у вашего руководства голова не болит так часто, потому что вы уже не так сильно косячите.
Однако до сколько-нибудь квалифицированного специалиста, которому можно дать средненький проект и быть уверенным что он его самостоятельно хорошо сделает — еще лет 5.
kimisa
Это если работаешь в хорошей конторе, на хорошем проекте с хорошими технологиями. А не клепаешь сайты на заказ.
radtie
Ну кодить — да, а вот программировать...;)
Sano000
Ну и нормально, такие тоже нужны. Не оптимально, не эффективно, может даже отбить желание у потенциально хорошего разработчика. Но это тоже путь вайти. И многие по нему достигают хороших высот.
altai2013
Можно, но у людей разные способности: кому-то лучше даётся учёба в вузе, кому-то вылизывание задниц, а кому-то самообразование и много работы. Каждый эксплуатирует свои собственные сильные качества и результат на выходе может быть одинаково хорош для всех.
Flammar
Ну как сказать… Можно, но для этого нужно обладать приблизительно теми же качествами, что для поступления в ВУЗ и учёбы там.
Calc
В мобилке с годовалым опытом работы с руками оторвут, будешь получать больше чем грузчик/курьер/менеджер с 3-5 летним опытом работы. Вот и вся математика.
Expurple
Можно, я за год на первую работу на бэк устроился, в этом году
fougasse
Но ведь можно не просиживать и не вылизывать, если приложить минимальные усилия.
И зарабатывать тоже.
Зависит от целей. Если условная «штука баксов» достижима через полгода видеоуроков, то более-менее нормальная карьера без фундаментального образования уже редкость. Да, я в курсе про исключения типа Гейтса и других.
Конечно, каждый волен выбирать свой путь, но вреда от ВУЗа (по крайней мере образца 15-25 лет назад) я не вижу. Возможно, сейчас всё поменялось.
Flammar
И вспомним, кто у Гейтса родители. И, да, пару курсов он таки проучился, так что какой-то отбор он прошёл.
vvzvlad
Нет смысла ставить гейтса в пример ни туда, ни сюда. Просто потому, что таких как гейтс — штук пять-десять в мире, и очевидно, что он не обладает навыками, которые позволяет ему за счет его скиллов обходить все остальные миллиарды. Он, и остальные — отклонение, выброс, неважно, за счет чего созданное — родители, случай, какое-то ноухау в начале карьеры. Не получится повторить его путь, потому что делая «все так же, как он», вы не достигнете таких же результатов.
Ровно с тем же успехом он мог быть медалистом с красным дипломом или троечником, который едва начальную школу окончил, и ни то, ни другое не свидетельствовало бы в пользу красного диплома или бросания учебы, потому что людей с красным дипломом — миллиарды, и бросивших учебу — тоже миллиарды, а людей, достигнувших при этом высот гейтса — десяток. Людей с влиятельными родителями тоже очень-очень много, но как-то это не особо помогает. Просто исключайте отклонения из выборки и смотрите на тренды без шума.
fireSparrow
А вы статью-то вообще читали?
Она не про тех, кто реально учится, нарабатывает навыки и за год становится крепким кодером, а про тех, кто хочет «вайти в айти».
Maksclub
fireSparrow
«Войти в айти» — это мем, который высмеивает людей, думающих, что здесь молочные реки с кисельными берегами, заоблачные зарплаты платят за нажимание кнопок, и чтобы это всё получить, нужно просто узнать некий чудесный способ как устроиться программистом.
А вот людям, которые реально учатся и практикуются ничего не мешает. Я и сам, имея экономическое образование, устроился работать программистом в 31 год. И вот уже как 4 года полёт нормальный, очень рад, что решился.
TheShock
Malduan
Да, можно за год (или за три недели) выучиться, а потом вызывать у меня хандру, депрессию и выгорание каждый раз, когда я вижу код таких вот разрабов в каждой новой таске. Вот как сейчас. В коде все неправильно, все фигово, через год это уже нелься будет поддерживать. Потом переписываешь очередной контроллер (получая брюзжание от менеджеров по поводу, «почему опять так долго простой тикет правишь, Senior
же??»), что бы запрос переставал выполняться несколько секунд, все пишешь по фен-шую, все от иголочки, а потом через пару недель приходит тикет «а ведь снова долго работает!11»; заходишь в код, смотришь, а там очередой «инженер» влепил ненужный запрос в тело цикла.
Я теперь понял, почему из года в год работать становится болезненнее.
Ru6aKa
А зачем Вы выполняете за них их работу? Если приходит тикет «долго грузиться» или нечто подобное — то логичнее же этот тикет перевести на того кто пилил этот код (и менеджеры это норм понимают, типа я код не знаю, надо сначала потратить дофига времени чтобы разобраться, и только потом найти проблему, а Вася этот код писал он в курсе что там и как и ему надо просто потратить время чтобы вспомнить, а не разобраться с нуля).
Да и намного же интереснее наблюдать когда это все глюкало упадет и эти «инженеры» будут пробовать это все поднять и починить.
Сам до недавнего времени был таким как Вы, сильно лично воспринимал работу, и исправлял косяки других, считая их косяки своими (типа не доглядел, не доучил). Пипла становилось больше, косяков больше, я просто задолбался от этого всего и забил. Сейчас делаю только то что в моей зоне ответственности, остальные сами по себе. Новомодные инженеры это тяпляп, это решение из первой ссылки в гугле, или залипание в видосики часовые.
Andrey_Epifantsev
А как же code review? Разве нельзя заблокировать неправильные решения?
amirosta
Вы как-то слишком уж романтически относитесь к code review.
Из организации что практикует столь глубокие code review человек из статьи вылетит довольно быстро.
Но вот только столь глубокие code review — это довольно дорогое время высококвалифицированных специалистов, потому их редко делают глубоко. Если вообще делают.
А типичное code review — пробежаться быстро, на предмет цепляющихся за глаз косяков. И делает code review не обязательно высокооплачиваемый специалист, который гораздо эффективнее если он сам будет кодить. А делает code review зачастую коллега твоего уровня или около того.
Andrey_Epifantsev
На двух из моих прежних работ практиковали глубокое code review. Собственно это не так уж страшно как кажется. Задача не закрывается пока её не заапрувят хотя бы два других члена команды. Причём правом аппрува обладают не все подрят, а только те чей код был затронут изменениями. Ну или хотя бы те, кто близок к изменяемому коду. Тщательный просмотр чужих изменений занимает процентов 10 времени. Внесение исправлений по сделанным замечаниям на первых порах занимает столько же времени, что и сама задача. В дальнейшем 20-30% от времени реализации.
Но зато качество кода при таком подходе на высоте! Никакого дублирования, закоментированного кода, неправильного использования функций, undefined behavior и прочих вещей, которые не влияют на работу в первом приближении, но создают трудноуловимые баги и затрудняют дальнейшую поддержку и развитие кода.
Плюс резко повышается дисциплина — после пары таких ревью перед коммитом уже будешь тщательно вычищать и проверять свой код, чтобы он прошёл ревью побыстрее.
И очень активно проходит обмен опытом — если что-то сделаешь не очень эффективно, тебе подскажут лучшее решение.
Ревьювить нужно ведь не больше чем было внесено изменений. Так что это в любом случае будет быстрее чем писать код. И не нужно делать послаблений — нельзя давать аппрув пока не будут исправлены все явные проблемы. И ревью должны делать те, кто пишут код. Когда изменения затрагивают твой код, или используют твой код или ты используешь изменяемые функции — ты отнесёшся к ревью гораздо ответственнее.
amirosta
Не забывайте, что качество кода само по себе бизнесу не нужно.
Ему нужно решение задач бизнеса.
Согласен, что при хорошем финансировании и серьезном подходе — можно и нужно делать так.
Однако иногда (часто) бизнесу нужно быстрее и дешевле. На не медленнее, дороже и качественнее. Иначе просто время будет упущено и ваш качественный продукт уже никому не нужен и на нем ничего не заработать.
И что то мне подсказывает, что люди из статье не смогут пройти собеседование в такую организацию, что практикует столь тщательный подход к работе.
VolCh
Не в любом. Вот есть легаси система, приходит задача на минорное изменение какой-то функциональности. Вы три дня разбираетесь, где изменить пару строк, чтоб ничего не сломалось. разобрались, изменили, отправилиа на код ревью. Ревьюверу нужно плюс-минус столько же времени чтобы разобраться, а их, в вы говорите, двое. Простейшая, по идее, задача — 9 человеко-дней.
Andrey_Epifantsev
В ревью обычно можно добавлять комментарий, в котором можно подробно описать почему было сделано именно это изменение. А вообще, такое пояснение надо написать к коммиту, чтобы потом (другому человеку или этому же через год) можно было понять почему так было сделано. Git позволяет писать в комментарии хоть целый роман.
Я бы как раз не стал апрувить такое изменение, попросил бы добавить пояснений в коммит или коментарий в код.
Вообще ревьювить надо так, как будто автор коммита завтра исчезнет, а вам поручат править баги в этом коде. Если что-то непонятно, то надо требовать переделать код, чтобы он стал более понятен — функции или переменные переименовато, не использовать неочевидных конструкций, добавить коментарий на худой конец.
А теперь допустим, вы сделали это неправильно. И ревьюверу поручили это исправить. Ему уже не понадобиться три дня, чтобы понять, что не так.
Dr_Faksov
Понадобится 6 дней
Вы провели изыскания и оставили заметки как, ПО ВАШЕМУ мнению, всё это работает. Не как всё работает, а как это работает по вашему мнению.
Сначала ваш коллега будет 3 дня пытаться понять почему, согласно вашего описания, невозможно сделать как надо. Потом еще 3 дня будет разбираться как оно действительно работает. Итого — 6 дней.
simple_mortal
Вот я из вайтишников. Правда, курсов не заканчивал никаких. 3 года «вкатывался». 2 года уже работаю. Я к чему это; чуваки из цитаты выше вряд ли продержатся на работе больше месяца. В силу специфики профессии. За 2 года я понял, что вся прелесть работы в том, что нужно постоянно учиться. То есть не получится как у дальнобойщика: научился водить машину и за этом знании можешь всю жизнь ехать. Я не могу поверить в чуваков после 3-6 месяцев курсов, которые могу долго сидеть не то, чтобы в кресле тимлида, но даже простого программиста-стажера.
Кайф всей работы в том, что в программировании можно так глубоко падать в знания и навыки, как мало где ещё. И если ты сопротивляешься этому падению, ты просто не вытащишь. Если идёшь в ит за деньгами, это путь в тупик. Вообще это касается любой профессии. Но ит наиболее ярко это демонстрирует. И никто меня не переубедит. Даже за 2 года работы я успел увидеть людей, которые пришли не за кайфом, а за деньгами. А как известно, не в деньгах счастье. Это просто побочный продукт твоей деятельности, которая выполняется качественно и с каждым разом всё лучше.
sshikov
Именно так. Взять могли и по ошибке. Если удержатся испытательный срок — будет другой разговор.
Flammar
simple_mortal
Учился. Начал с плюсов, потом понял, что это слишком высокоуровнево, спустился до Си, потом до ассемблера. Я не смогу написать хоть что-то вменяемое на этих языках сейчас, но это дало очень много понимания как это всё работает. Вообще, я не собирался работать в ит. Так вышло. Друг помог. Подталкивал к этому решению. Я-то хакером хотел стать ))) Но вышло, как вышло. Пишу фронт. Чему я несказанно рад.
Хотя, признаться честно, я до сих про «вкатываюсь». И ещё долго буду. Смотрю на ребят лет 20-ти и поражаюсь, как можно так много знать в таком возрасте. Вот они в ит не за деньгами пришли. Им ит деньги даёт, чтоб они не уходили. Вот это уровень, а не фронт на жабаскрипте ;)
0xd34df00d
Чем плюсы высокоуровневее С?
Kudesnick33
А вы попробуйте программисту МК с пятнадцатилетним стажем показать пару плюсовых шаблонов. Не говорю, что все, но многие после этого дают понять, что собеседование их больше не интересует. Си прост настолько, что его можно глазами переводить в асм. Развернуть подобным образом вызов какого-нибудь виртуального метода или лямбду — несколько сложнее. Мозг должен работать несколько иначе. И я говорю сейчас про действительно хороших в своей области спецов.
0xd34df00d
Так это ж, эти все шаблоны как раз позволяют избежать всяких indirection'ов в рантайме. Это как раз отличная штука для низкоуровневого программирования!
Ну и да, в С тоже есть оптимизирующие компиляторы, так что перевод в асм не такой тривиальный, как казалось бы.
F0iL
Эм… если не упарываться по всяким там SFINAE (но это вас никто не заставляет делать), то шаблоны не сильно-то далеко ушли от Си-шных макросов и функций жонглирущих void*-указателями. Только в отличие от них обеспечивают проверку типов в compile-time, чем позволяют избежать большого количества ошибок, что только на руку embedded-разработчику.
А на «программистов МК с пятнадцатилетним стажем» я уже насмотрелся, пара таких «дали понять, что собеседование их больше не интересует» когда выяснилось что обязательно надо будет разобраться в том как работает Git+Bitbucket. Ну а что, за свои 15 лет успешной работы они привыкли просто копировать папочки на расшаренном диске…
Kudesnick33
Эти оптимизации тоже довольно предсказуемы. Не всегда, но большинстве случаев. И опытный сишник как раз и должен их предсказывать.
Если программист запилит компактный и надежный код, который влезет в 4 кб вместе с загрузчиком, потому что он понимает, как работает микроконтроллер и чего можно ждать от обвязки, я не буду спрашивать у него про гит.
Оптимальный сотрудник — это далеко не всегда FullStack.
Но мой предыдущий комментарий не про это, а про то, что объем материала и количество нюансов в с++ гораздо больше, нежели в си. Отсюда и «более высокий уровень».
F0iL
А когда программист не не может, а именно что не хочет освоить действительно нужный и полезный рабочий инструмент просто потому что «столько лет без этого жили, ну и нафиг оно» — это тоже такой себе звоночек.
Причем здесь вообще Fullstack — решительно непонятно, проект был чисто embedded.
VolCh
Кстати, всё чаще встречаются embedded по всем формальным признакам проекты на чём-то вроде raspberry на стэке:
И всё это где-то в атомобиле, например
sumanai
Хотелось бы там работать, прямо Fallout какой-то.
0xd34df00d
Это вообще не показатель. Я лет в 17, будучи зелёным юнцом, успешно писал код, влезающий в 1-2 килобайта attiny13 (или подобного контроллера, не помню точную модель) и управляющий некоей лазерной установкой. Кстати, на плюсах и с темплейтами.
saintbyte
github покажи
transcengopher
"А если найду?"
0xd34df00d
А вы свой?
saintbyte
Заходим лайкаем мой говнокод =))
github.com/saintbyte
0xd34df00d
Чё-т как-то его там мало и редко.
gn0m3r
Я вам, уважаемый, по секрету скажу, что из тех нескольких сотен спецов, что выпустила эта контора (или ей подобная), о которой речь идёт в статье, не вылетел с испытательного никто. Ну может быть один-два особо никудышных студента. Потому что вы недооцениваете качество их образования, и переоцениваете себя и рынок энтерпрайз-разработки. С ним не все так плохо, как в статье описано. С ним все ещё хуже. Потому что эти ребята (а курсы там не простые, о чем автор умолчал, ибо они сами отсеивают тех, кто по их мнению не годится, причем довольно жёстко) в вашем племени нифига не выделяются. Что сводит к нулю весь трёп о бесценных опытных знаниях большинства мидлов, попавших в разработку "естественным" путем. Опыт опыту рознь, и если не уметь учиться целенаправленно, и извлекать конецтрированную экспу из рядовых рутинных ситуаций, ты через три года продакшн-экспиренса можешь оказаться примерно на том же уровне, что и чувак, которого активно шпиговали знаниями и выбивали понимание на полугодичных курсах. Ну и да, курсы курсам тоже рознь. Кое-где ведь и правда учат понимать как это работает, а не только страшным словам и терминам
DepthRel Автор
Прошу прощения, что я умолчал? Видимо Вы имеете ввиду под «курсы не простые» вливание каши из месива обрывков знаний о языке + какая-нибудь БД за короткое время. Из не простого там только вливание.
Собственно, из выше сказанного, о чём может идти речь в таком случае? Если Вы подразумеваете под образованием изучение язык(а/ов), увы, Вы не правы.
И правда. Только это происходит явно не на курсах разрекламированных в банерной рекламе. Сомневаюсь что кандидату будут рассказывать о том как располагаются числа в памяти, или как происходит взаимодействие с API ОС. Ну может быть, максимум, расскажут о сборщике мусора и поколениях.
PsyHaSTe
Имхо средних результатов человек может добиться и без образования/таланта, на одном трудолюбии. Да, звезд хватать не будет, но уверенным миддлом на 1.5-2к долларов в месяц сможет. А это куда предпочтительнее, чем например у меня знакомый получает 32 тысячи на складе ГСМ, программируя формулы в экселе.
titsi
Зато у него свободного времени по более, и мозги не выгорят, так как выгореть не получиться.
PsyHaSTe
Нет, у него совсем нет свободного времени, потому что ГСМ он заполняет в армии, график по 16 рабочих часов в день, наряды и прочее удовольствие. Только вот в декабре наконец спустя 3 года уговоров бросает эту дичь и идет на чо-то более адеватное.
А "Выгорание" вообще переоценено. Это конеш неприятно, но если за год заработать как люди зарабатывают за 10 и потом "выгореть", то как бы ничего страшного, можно 2 года просто заниматься чем угодно дома, проедая накопления, а потом вернуться туда же или попробовать что-то другое, да ещё и сверху останется.
VolCh
Выгорание выгоранию рознь. В частности некоторые заработав за год как за 10 не могут остановиться потом, пока не сгорят.
Кстати, сейчас в голову пришла мысль, что у нас нормальный сеньор зарабатывает как раз порядка десяти средних зарплат по региону. Не думаю, что в России качественно ситуация отличается.
sshikov
Позвольте пару уточнений. Во-первых, старший инженер в Сбербанке это миддл в лучшем случае. Пусть вас название не смущает, оно может быть и более экзотическим. Даже исполнительный директор — это тоже может быть разработчик (тимлид, который еще пишет код, да, бывает), а между ними еще несколько уровней. А в Дойче Банке вы могли бы зваться скажем AVP. Угадайте, что значат буковки VP? Правильно, вице президент. А внутри — тот же разработчик, хотя конечно и синьор.
И второе, даже более важное. Я общался с коллегами, которые активно искали людей (у меня свой проект мелкий, нам если нужен человек в год, то это много). Так вот, дефицит людей такой, что берут всех, кто тянет на джуна. Т.е. те, кого не берут — они вообще не годятся ни на что. Мой более скромный опыт собеседований говорит мне тоже самое — все кто выглядит обучаемым, имеют шансы на оффер.
И третье. В наших московских реалиях зарплата 100 тыс — это то, что спросят студенты, знающие вот именно что язык. Один (для справки — когда я закончил свой ВУЗ, я не был программистом по образованию, но языков программирования я знал примерно четыре). Ну так, для простоты, пусть будет скажем Python. Если они при этом знают еще и pandas, ну или что-то в этом роде, и что-то умеют ручками сделать — то они эти 100 тыс получают с большой вероятностью. То есть это — не уровень вообще, хотя допускаю что где угодно еще получить столько будет в радость и более опытному разработчику.
Ну т.е. необычного во всей этой истории может быть ровно одно — что эти люди прошли собеседования. Но подвести итог можно было бы по окончании испытательного срока, а не просто по факту того, что их приняли.
john_samilin
А самое забавное знаете что? Что я с 10 годами опыта в разработке не могу пройти собеседования в некоторые конторы
sshikov
Ну, забавного тут мало, но я разве что могу предположить точную причину. Редкая и узкая специализация, например. Вариантов на самом деле много, я не знаю, какой у вас конкретно.
VolCh
Самый распространённый — спрашивают давно забытую теорию или сигнатуры и прочее, что смотрится в доках за несколько секунд.
sshikov
Это обычно означает, что потребности в этом человеке нет вообще. Ну, или это компания ГуглоЯндекс… что в общем тоже самое (то есть, один конкретный человек им вот прям так особо не нужен, потому что есть избыток желающих).
Я бы все-таки скорее думал в сторону, что дефицит есть по направлениям. Т.е. скажем в вебе — избыток, а еще где-то дефицит. Только это могло бы объяснить столь разные взгляды, когда одни видят дефицит годных кандидатов, а сами годные кандидаты не могут найти себе работу.
akryukov
Мне какое-то время приходится собеседовать как на java-web, так и на работу с данными. Наблюдаю именно такую картину, которую вы описываете.
На работу с данными и резюме меньше и вакансий меньше.
Думаю что корень проблемы в рейтингах популярности ЯП. Люди идут на то, что "популярное" и рассчитывают что это как то влияет на их шансы устроиться.
Я вот не уверен, что порог входа в работу с данными как то существенно выше, чем в веб-фронтенд.
sshikov
Ну да, правдоподобная гипотеза. Если на это еще наложить уровень подготовки (и ожиданий), то многое может объяснить.
VolCh
Вот даже не припомню туториалов по работе с данными, а по веб-фроетенду полно.
tangro
Дело даже не в редкой или узкой специлизации. Дело в том, что человек вот именно что-то практически делал руками последние 10 лет. И если начать просить его вот здесь и сейчас на доске писать руками разные сортировки или тасовать красно-чёрные деревья, то он этого не сделает, поскольку последние 10 лет он этого не делал ни разу, поскольку реальные программисты в реальной работе таким не страдают, а вот на собеседованиях — это может встретиться легко.
sshikov
>просить его вот здесь и сейчас на доске писать руками разные сортировки
Э… ну вот я же например не прошу, и не понимаю, нафига это нужно?
Я могу понять, зачем человеку может понадобиться сортировка или работа с деревом, и могу спросить, делал ли он это когда-то, и понимает ли, какие сортировки чем друг от друга отличаются. Но я четко знаю, что в работе ему это скорее всего не понадобится. Поэтому все что мне от него может быть нужно — это понимание, что он знает, где это описано. Потому что опытный человек скорее всего найдет и выберет сортировку из готовых, и правильно, а писать самому приходится ну очень редко. А неопытный все равно ничего лучше готового не напишет.
Но ведь откуда-то же берется такая мода это все спрашивать? Если человек что-то делал руками — он это умеет. Если это не то, что мы тут делаем — он нам возможно не подойдет. Но точно не потому, что не может написать на бумажке сортировку.
VolCh
Устроит ответ "Много разных есть, отличаются в основном потреблением процессора и потреблением памяти, и ростом этих потреблений с ростом размеров упорядочиваемых множеств, причём на разных множествах по разному. Лучшая в худшем случае может оказаться хуже на случайных данных и, тем более, почти отсортированных, чем заточенные под такие априорно изве. Ну и теоретическая сложность, О большое, не всегда лучший критерий для выбора, если нам надо три элемента упорядочить, например"?
tangro
Кого-то устроит, но большинство не устроит. Не будешь писать код здесь и сейчас? До свидания.
VolCh
Какой код здесь и сейчас писать?
tangro
Ну на собеседовании в какой-нибудь Гугл с удовольствием послушают рассуждения о том, какое там потребление памяти и какая там теоретическая сложность. А потом скажут открыть редактор и писать код. Если отказаться — на этом собеседование и закончится.
VolCh
Так какой код? Оно закончится раньше, если скажут написать сортировку, а на вопрос "пузырёк пойдёт?" ответят "нет" — я его сам закончу. А вот если попросят написать простейшую АБС, то напишу.
tangro
Написать там попросят что-то из задач среднего или высокого уровня литкода. И вот с некоторыми из них есть такой прикол, что если ты, например, знаешь, что такое суффиксное дерево или метод северо-западного угла, то решаешь задачу с лёту, а вот если не знаешь — можно сидеть и тупить в неё час.
sshikov
Если вы пишете на спарке — то как правило более чем. Он в общем-то практически правильный, потому что в общем случае сложно сказать, какая эффективность будет у той или иной сортировки, а распределенная сортировка на кластере — это отдельная большая тема, которая к условной сортировке Хоара имеет очень опосредованное отношение. Как и вообще оптимальные сферические алгоритмы в вакууме и те же самые — на загруженной машине, когда заранее неизвестно, что нам полезнее оптимизировать, память, процессор или скажем сеть?
VolCh
Я пишу на JS/TS, PHP, SQL. Иногда на python или Java. Сейчас вот пришлось на Kotlin
sshikov
А велика ли разница? Как уже резонно замечено, многие классические алгоритмы не учитывают скажем наличия кеша. А если чуть обобщить — то наличия иерархической памяти. Упрощенно, пока вы влезаете в кеш, у вас все со скоростью кеша, перестали — скорость упала скачком. Пока влезаете в память — у вас сортировка работает со скоростью памяти. Перестала влезать — скорость снова падает скачком, до дисков либо до сети. Соответственно, когда у вас несколько уровней памяти, то все приемы оптимизации из литературы перестают работать в чистом виде. А когда у вас нагруженная система, в которой работают сотни и тысячи процессов, нужно оптимизировать не отдельную сортировку, а все процессы в целом, и логика этой оптимизации перестает быть очевидной (как и критерий оптимальности).
Поэтому уметь писать сортировки совершенно не факт что нужно. А вот уметь мерять и анализировать производительность и все такое — дело другое.
0xd34df00d
Сферические алгоритмы и структуры данных в вакууме начинают ломаться ещё до всяких кластеров, когда мы начинаем говорить о кэшах, например.
sshikov
Ну да. Просто тут на чуть других объемах от них вообще зачастую ничего не остается.
spirit1984
habr.com/ru/post/345756 — внезапно проблема куда более распространенная, чем кажется.
Tsimur_S
Как раз наоборот, это крайне непростой пример тогда получается — python+pandas. Такой выбор примера лишь порождает дополнительные вопросы. Эта связка используется в около data science вакансиях. У них, как известно, в почете знание разных математических дисциплин. На 100к со старта может претендовать абсолютно любой студент или только с профильных кафедр топ 3-5 вузов? Помимо знания языка/фреймворка/общей технической грамотности проверяется ли знание математики? Если да то понятно откуда такой ценник.
Если нет то присоединяюсь к вашему удивлению ситуацией.
sshikov
>Как раз наоборот, это крайне непростой пример тогда получается — python+pandas.
Ну, дело в том что если выбрать скажем Java, то вариантов будет тоже немало. И шансы, что человек никуда не подойдет, потому что знает не то — они велики. Так что другие варианты тоже не проще.
Что до вопросов — то да, у нас это именно data science, в чистом виде. Но точнее я вряд ли отвечу (я из параллельной вселенной, где Hadoop + Spark + Java), я просто знаю, что к нам такие студенты приходили, и я бы их в разработку взял бы со скрипом. Но коллеги в data science их охотно взяли. Математику… ну по резюме не помню, но у них у всех были склонности к изучению ML, так что подозреваю что все же знали, хоть какую-то. Т.е. это как раз такое направление, куда студенту проще, потому что математику он как раз недавно изучал, а вот опыта разработки не имеет.
strannik_k
Да нет никакого дефицита. Давно уже очень сильный переизбыток подходящих кандидатов и нет способа за час-два отличишь хорошего программиста от плохого. Вот и куча подходящих кандидатов отсеивается вместе с кучей не подходящих.
MonkAlex
Нет дефицита? То-то в каждой компании регулярно напоминают — за рекомендацию специалиста дадут денег.
sshikov
Именно
strannik_k
Так это не из-за дефицита, а из-за методов отбора и специфики работы (на работе развиваются навыки решения бизнес-задач, а не сдачи экзаменов). Я же говорю, много хороших спецов, которые справились бы с работой, тоже отсеивают. Иначе почему разработчики заваливают первые, скажем, 9-ть собесов, а в 10-ой компании проходят и собес и испытательный?
sshikov
Ну, я не знаю, где там кого отсеивают, тот дефицит, который я вижу живьем, выглядит так — есть команда, которая очень хочет набрать еще людей. Она готова их учить, потому что есть специфика, и готовых специалистов именно в этой области вообще очень мало. Поэтому «много хороших спецов, которые справились бы с работой, тоже отсеивают» у меня вызывает сомнения. Некоторых из этих спецов я интервьюировал и сам, и сказать честно, на хороших они ну не тянули. Хотя не исключаю, что отсев где-то и есть, раньше.
strannik_k
Если какая-то специфика — может быть. Сколько люди из этой команды осваивали эту специфику до уровня, достаточного, чтобы писать проект? Меньше месяца или больше?
А вы уверены, что вы достаточно грамотно проводите интервью, всегда правильные вопросы задаете?Был у меня случай — провалил собес в одной компании, но через какое-то время устроился в другую. Но, там мне не понравилось и через месяц я снова начал искать работу. Так совпало, что в первой компании снова открылась вакансия и я снова решил попробовать пройти там собес. На этот раз я был более подготовлен и смог его пройти. Спустя месяц, оказалось, что я очень даже хороший разработчик по меркам команды. А тот, кого взяли в первый раз вместо меня был еще новичком.
Через год был другой случай — мы вместе с тем новичком проходили собес в другой компании. У меня на тот момент было 4 года опыта, у него — один. Он прошел, я — нет. Причина на самом деле простая — он более разговорчив и меньше волнуется на собесах.
sshikov
>Сколько люди из этой команды осваивали эту специфику до уровня, достаточного, чтобы писать проект? Меньше месяца или больше?
Сложный вопрос. Чтобы что-то начать делать — месяц. Сложные вещи — больше. От уровня зависит, синьор быстрее, ниже уровнем — медленнее. У меня выборка невелика, мы всего-то троих пока брали/вводили.
>А вы уверены, что вы достаточно грамотно проводите интервью
Нет :) У меня много опыта, но это опыт разработки. И я уверен, что могу неадекватно оценивать других — потому что когда у вас примерно 40 лет опыта, многие вещи оцениваешь не так. Что-то выглядит более простым, что-то наоборот. И эта оценка совсем не совпадает с оценкой менее опытных коллег.
strannik_k
Похвально, что вы готовы это признать! Редкое качество среди программистов. Обычно программисты довольно упертые.
40 лет опыта — впечатляет!) Наверное то, что 30-40 лет назад было базой, сейчас почти никто не знает.
sshikov
Мы охотно бы обучили. У нас дефицит на кандидатов. Ну т.е. реально, у нас работал один из коллег, который пришел к нам после курсов Java. Но у него надо сказать был приличный опыт SQL, лет 10. Ну и ничего так, втянулся быстро, Scala освоил. Без опыта конечно некоторые вещи даются нелегко, но при желании все можно.
amirosta
Я вас умоляю…
Ну у меня не 40 лет опыта.
А 25.
И я прекрасно вижу что ровно те же вещи в ИТ просто повторяются по спирали.
Ну были реляционные — стали No-SQL. Однако внутри все те же индексы да транзакции.
То есть базовые знания что сейчас что тогда примерно те же самые.
Другое дело, что сейчас важнее знать конкретный фреймворк. Раньше подобную конкретику от программиста не требовали.
akryukov
Не согласен. Транзакции в распределенных NoSQL уже не "те-же", что в реляционных, да и индексы тоже не всегда возможно применять.
amirosta
Про распределенные я ничего не писал. Там вообще другая история.
Я писал про то, что технологии повторяются по спирали.
Разумеется, с какими то изменениями.
Но чтоб так «раньше радикально иная была база у разработчиков» — нет, это не так.
akryukov
Я возможно что-то упустил, а какие NoSQL у нас не распределенные?
amirosta
Это не та вещь, что делают сразу, с рождения.
Скажем, Tarantool сравнительно недавно научился.
При том, что как изолированный экземпляр он уже всё умел — а распределенных транзакций еще не было.
akryukov
Я снова не согласен. Большинство популярных NoSQL СУБД (cassandra, mongoDB, clickhouse) как раз проектировались сразу распределенными с явной декларацией "транзакций как в реляционках у вас не будет".
Впрочем пример с in-memory СУБД хорош как иллюстрация не-распределенной by-design NoSQL СУБД.
transcengopher
А ещё раньше все базы были нереляционными и No-SQL — потому что SQL ещё толком не было, и все привычно хранили данные в файлах, иногда текстовых.
MonkAlex
Я согласен с товарищем выше — не видно на рынке толковых спецов. Я в собеседованиях не участвовал, но общался с некоторыми мимо собеседований.
Нет у них ни знаний, ни желаний. Мечутся бездумно, работать в ближайшее время они не готовы.
Отмечу, что информация по регионам. В Мск или Питере наверное ситуация лучше.
batyklya
В Мск и Питере спецов сейчас пугают специалистами из регионов. Мол не хочешь за 100 тыщ работать по 12 часов в сутки, мы сейчас наймем вайтишника из Екб которы за 25 тыщ зубами может остановить наждачный круг и будет при этом счастлив как молодое порося на выпасе!
Neikist
Не, фигня все это. Говорю как удаленщик из региона что как раз на сотню устроился. На 25к разве что вайтишник нулевый согласится.
Neikist
Кого там отсеивают? Что по моему опыту, что по опыту знакомых — офферы предлагают после первого-второго собеседования.
strannik_k
Я начинаю думать, что от стека сильно зависит.
Вы и ваши знакомые с каким стеком работаете?
По моим наблюдением, самый высокий порог входа — бэк на Java, изрядно придется попотеть и походить по собесам, чтобы на миддла или выше устроиться.
Далее — бэк на .Net, тоже требования сильно выросли.
Далее — фронт или бек на других стеках — средний уровень сложности.
IOS, Android — сейчас не знаю как, но лет 5 назад требования на сеньора там были, как у джуна на .NET или Java.
То есть, из того, что я замечаю, чем древнее стек, тем сложнее собесы и больше отсев.
Neikist
Знакомые из 1с или мобилок в основном. По требованиям хз, когда свичился из 1с в мобилки рассматривал бек как альтернативу. Примерно один уровень знаний требовался, просто в отличающихся темах. Меня на собеседовании на андроид разраба гоняли по архитектуре, SDK, стеку немного, многопоточности, немного про алгоритмы поговорили. Уровень чуть выше джуна.
PsyHaSTe
Моя статистика — из примерно 60 собесов что я прошел за жизнь я получил 5 отказов. Я и цифру то знаю потому, что каждый был ударом по самолюбию.
Alexey2005
В категориях «стажёр» и «джун» действительно переизбыток людей, тут никаких проблем с поиском. А вот дальше уже начинаются сложности.
А если все резюме, где возраст кандидата превышает 30 лет, сразу выкидывать в корзину, то проблема и вовсе разрастается до космических масштабов.
sshikov
Это где у вас такое?
strannik_k
Я думаю, везде такое.
Знакомый с 15-ти летним опытом недавно искал работу по удаленке 3 месяца. Отвечал хорошо по его словам, но не брали по непонятным причинам. Другой знакомый с 12-ти летним опытом лет 5 назад тоже с трудом нашел работу, хотя до этого был опыт работы сеньором в нескольких компаниях.
Сам проходил собесы в Москве, Санкт-Петербурге, Новосибирске, Омске.
В прошлом, проработав 3 года веб разработчиком, и затем 2,5 года проработав gamedev разработчиком на том же языке — C#, решил вернуться в веб. Говорил, что хотя бы 30 тыс для начала хотелось, т.к. подзабыл многое, но через полгода хотелось бы нормальную по тем временам зарплату миддла в нашем городе (Омск) — 60 тыс. Но работодатели нос воротили от чувака с 5 летним опытом, освоившего 2 разных стека и участвовавшего в разработке нескольких крупных проектов.
sshikov
Если вы про веб разработку, то я про нее ничего не знаю. Возможно там такое и есть. У нас и близко нет.
amirosta
Проблема в том, что он претендовал на зарплату в 30 000.
Это по нынешним временам ни о чем.
Тут он попал в нишу эникеев, стажеров, начинающих джунов. Опытные джуны — и то больше зарабатывают.
1) Подозреваю что он или претендовал не на ту квалификацию.
2) Или, действительно, настолько плохой специалист (я таких видел, возраст и годы в профессии != квалификация).
strannik_k
я про себя рассказывал) И это был 2015 год, тогда еще зарплаты в 2 раза не выросли. И я тогда нашел работу, вот только времени много потратил на поиски. И через год получал в районе 100к (при потолке в городе — в районе 120к), а не 60к, которые хотел получать через полгода работы.
Конечно, очень плохой специалист был. На руках было пару офферов на должность лида по последнему моему стеку, еще и с прежнего места работы звали к себе. Вот только все это предполагало переезд, что мне не хотелось.
amirosta
В 2009 году наши джуны, кто потолковее, после полугодового обучения зарабатывали по 15 000, выходя на 25 000 — 30 000 к году опыта.
В глухой провинции.
alexdevyatov
Джун? Тысячу баксов? В глухой провинции?
Извините, не верю.
amirosta
Не путайте джуна и стажёра.
Стажерами они могли и с 5 000 начинать.
alexdevyatov
Кто такой джун в вашем понимании и чем он отличается от мидла?
amirosta
Писал уже подробно про становление джуна
habr.com/ru/company/raiffeisenbank/blog/526342/#comment_22298978
Миддл — это, кто может обходится без того, чтобы проверять его решение внутри. Это не значит, что он не косячит вовсе, но работу миддла нет необходимости каждый раз проверять как оно там внутри сделано.
Начальник ставит миддлу задачу (не какой конкретно код писать, а именно задачу общими словами), получает результат, внутрь кода смотреть не обязательно.
Постановку задачи джуну нужно разжевывать.
Результат работы джуна посмотреть старшему программисту нужно обязательно. Джун, даже с опытом в год-два (иногда больше, зависит от человека) с высокой вероятностью запросто выдает не полностью рабочее решение, хотя и утверждает, что «я всё уже сделал». Пусть не всегда — но довольно часто (да хоть каждое второе).
P.S.:
Сode review и тестирование — штука полезная и сеньорам, но это о другом, это о человеческой внимательности, об обязательности, но не о собственно квалификации.
В принципе зачастую работу джуна не смотрят, ибо некому или «и так сойдет». В подобных конторах джун формально становится миддлом быстрее, нежели если он работает в более серьезной конторе под присмотром опытных коллег.
Объективного же критерия быть не может. Ты можешь быть сеньором в одной фирме, но стать джуном в другой.
zagayevskiy
Я, заканчивая универ в 2013 году, искал работу в Мск, и меня без опыта работы на C# были готовы брать на 80к в геймдев студию, пилить на Unity. Вы явно просили слишком мало.
strannik_k
Я бы так мало не просил, если бы проблем устроиться не возникало. На первых собесах 70-80к запрашивал, а потом уже сильно снизил. Продажник из меня никакущий и собесы — это не мое, костей в языке многовато. Видать, тренироваться мне надо было в этом, а не технические навыки качать.
Что-то местные в Москве и вправду хорошо зарабатывают. Я теперь понимаю, почему Московские конторы готовы иногородним покрыть расходы за переезд — они их все равно дешевле местных нанимают.
Меня в конце 2012-го взяли в геймдев в Московскую студию на Unity пилить за 60к, потом в начале 2013-го ушел в другую за 70к. У меня тогда было 3 года опыта работы на С#, полгода самостоятельного изучения Unity3D с пет-проектом на нем.
Baigildin
Я уверен что работодатели увидели в нём оверквалифайд. И не хотели взять к себе, думая что он сразу уйдет, когда появится вакансия посытнее.
amirosta
Чем выше квалификация — тем больше дефицит.
Сколько-нибудь сложную задачу просто некому поручить.
А среди джунов дефицита нет, это точно.
strannik_k
С какого-то определенного уровня и в каких-то специфических областях, наверное есть дефицит.
Среди сеньоров? Тут слишком расплывчатое определение. Если на должности смотреть, то сеньор — это в среднем 3-6 лет опыта. Такие могу самостоятельно вести большой проект на своем стеке или не качественно сделать на другом стеке. Оптимизировать — смогут, если уже делали или сделают, но изучая это в процессе выполнения задачи и рефакторя код. Сделать высоконагруженную систему — только если был опыт, иначе только методом проб и ошибок.
А можете привести примеры задач, которые некому поручить из-за дефицита спецов? Только не что-то специфичное и узконаправленное. Обычные сложные задачи, которые встречаются в работе, но для которых нужна прям высокая квалификация.
amirosta
Ну вот пример:
github.com/lumpov/cyberplat
Этот модуль построен на базе некой написанной на С библиотеки ipriv.
В основе библиотеки ipriv лежит код из конца 1997, реализующий широкоизвестный алгоритм шифрования RSA. Это одна из первых опубликованных реализаций алгоритма RSA. Нынче используются более современные реализации.
Упомянутая ipriv добавляет к коду RSA обвязку:
1) Подпись данных с использованием RSA
2) И проверка подписи с помощью RSA.
3) ipriv используется собственный формат данных пакетов данных и ключей. Формат этот не сложный, текстовый.
Сама ipriv создана в начале 2000х кодов, внутри неё код RSA из конца 1990-х.
Это код до сих пор прекрасно работает внутри нескольких десятков больших систем, многие из которых разработаны на языках, что еще не существовали даже на момент создания ipriv.
Однако чтобы просто скомпилировать ipriv на современных системах — приходится извращаться. Ибо сменилось уже несколько поколений компиляторов и библиотек, от которых
Задача распадается на 2 подзадачи:
1) Научиться компилировать библиотеку ipriv на современных Linux-64 и Windows-64. Реализовать binding к библиотеке ipriv на языке Go. Компилятор Go штатно поддерживает возможность собирать гибридную программу, написанную с использованием Go и С. Всё решение по итогу — всего 150 строчек кода + рецепт как скомпилировать старую библиотеку на новых ОС.
3) Реализовать ipriv на чистом Go, используя исходники на С в качестве подсказки (причем нужно реализовать не всю библиотеку, а только функции подписи и проверки подписи, ну и функции чтения ключей конечно же). Причем без необходимости самостоятельно реализовывать RSA на Go, а с тем, чтобы использовать уже имеющиеся реализация RSA, выполненные на Go.
Задача 3) скорее нудная и долгая, а вовсе не требующая высокой квалификации. Повторить чужой код — это не то же самое, что выдумывать самому.
Здесь вообще нет необходимости много выдумывать самостоятельно, продумывать архитектуру и пр.
Здесь не нужны специфические знания по криптографии, ибо не нужно реализовывать алгоритм RSA, он уже есть готовый реализованный нативно на куче языков программирования.
strannik_k
Что-то вы перестарались с примером — большой сильно, но ладно.
Я в этом на разбираюсь, но и не вижу, что тут не смог бы сделать усидчивый джун. И сеньору и джуну надо разбираться. Сеньор скорее всего сделает быстрее, т.к. лучше умеет искать, а также придумает, как упростить задачу.
amirosta
Зато однозначен. Никто из нас ничего не додумает сам.
Угу.
Но с этой задачи сливаются и менее квалифицированные и более квалифицированные.
Бюджет там хороший.
snizovtsev
Если бюджет действительно хороший, то пишите мне — сделаю :) Понятно, что неприятное легаси, но там же всего 7500 CLOC. Очень странно, что сливаются — по меркам крупных контор это очень простая задача.
amirosta
Имхо не такое уж и legacy, там в основе RSA лежит, он и до сих пор широко используется.
Задача 1) уже решена частично. Binding уже созданы, проблема компиляции под Linux решена. Без Windows не очень удобно, но не критично. Гораздо интереснее получить код на чистом Go, чтобы вообще не зависеть от платформы.
Если вы можете решить задачу 3) — переписать библиотеку на чистом Go, без binding, то да, было бы интересно.
snizovtsev
Если будет стакан молока за нудность — перепишу. Сразу скажу — хочу набить руку в Go, т.к. особо на нём не писал. Основные языки для меня c, c++, python. Лично я в этом проблемы не вижу — go же простой в сравнении с плюсами или джавой, но многих смущает.
VolCh
Смущает, что непонятно как на нём писать, чтобы было читаемо и поддерживаемо.
amirosta
Зачем гадать?
Просто посмотрите код Kubernetes и т.п. серьезных продуктов.
VolCh
Так посмотрел и вижу, что непонятно :)
0xd34df00d
Невыразительный какой-то. То есть, непонятно, зачем на нём писать, если есть плюсы, раст и хаскель.
VolCh
Асинхронное взаимодействие между хотя бы парой сервисов.
DepthRel Автор
Middle разработчик — это junior с опытом. Ключевое здесь «с опытом», как бы не хотели это отрицать те кто утверждает что junior уровень можно проскочить, если «прочитать эту книгу / прослушать этот курс / и другое.
amirosta
Формального определения не существует.
Имхо, миддл, это тот, кто может самостоятельно эффективно работать.
За джуном нужен пригляд постоянный.
Вот и вся разница.
Джуны тоже бывают более опытные и менее опытные.
sshikov
А это не важно. Я просто хотел сказать, что слово «старший» в названии должности вовсе не значит, что это синьор, или начальник. То есть об уровне оно конечно говорит — но не то, что напрашивается из самого названия.
amirosta
В крупных структурах с жесткой тарифной сеткой окладов «страший» просто используется для того, чтобы перевести человека на чуть более высокий оклад.
«Старшего» дают автоматически после года или двух-трех лет работы. Никакого отношения к квалификации это не имеет. Просто т.н. «выслуга лет».
sshikov
Ну так смотрите, автор на что жалуется? что этих вот, без опыта, сразу с курсов, взяли аж «старшим инженером». Я об этом и толкую — что во многих подобных компаниях это слово в названии должности не говорит вообще ни о чем, кроме может быть зарплаты (а точнее довольно широкой вилки). По-моему вы тоже самое и говорите, разве что другими словами?
VolCh
Опыта может быть лет 5, но всё ещё джун — не способен самостоятельно работать.
gohan
Можно переделать известный анекдот:
-Мам, а кем был Никола Тесла?
-Инженером.
-Как мой дядя Вася в Сбербанке?
-Твой дядя Вася — старший инженер!
vilka14
Вайтишник на связи, после 8-месячных онлайн курсов по DS. Позвольте пару уточнений с моей колокольни. Когда я искал работу в июле-сентябре, я отправил за 2 полных месяца 70 качественных откликов. Качественных — значит я прочитал описание вакансии, понял, что подхожу как минимум под половину требований, подогнал резюме под эту вакансию, направил отклик и сопроводительное. Вакансия свежая, не трехмесячной давности. Воронка: 40 резюме посмотрели (30 даже не открывали), 1 раз уточнили по опыту в сообщениях. 0 тестовых, 0 приглашений на поговорить.
Плохое резюме? Возможно. Но мое резюме смотрели многие, в том числе HR с тех курсов — их задачей было помочь в трудоустройстве. Оно много раз менялось и допиливалось, но результата это не меняло.
Возможно причина в том, что на некоторые джуновские вакансии приходится по 200 (не шутка, информация от тех же HR) откликов.
Слабые знания? Возможно, но знания никто не спрашивал, хотя я описывал свой бэкграунд. Высшее техническое образование, за 7 лет работы в госкорпорации своего предприятия хороший карьерный трек, пет-проекты с автоматизацией и аналитикой. Базы данных, с++, фулл-стэк проекты на node.js (кривые — да, я бы себе руки за них оторвал, но они работали, а я понял, как писать не надо), Python+ML, нейронки на голом pytorch. Серьезно заморачивался на Kaggle, хотя медалей пока нет. Я это вобщем-то подробно описывал в откликах.
Я такой не один, у нас весь поток с такими же проблемами. И после нас. И до нас. Да, первую работу находят. Но, как правило, это не очень хорошая работа. 40-60 т.р. зарплата в ДС. Ничего общего с тем, что написано в статье. Я не жалуюсь, я был готов к таким трудностям, т.к. в IT пошел не за легкой жизнью, просто сообщаю факт.
Поэтому, если честно, мне слабо верится в дефицит джунов.
Второе, я не верю в 120 т.р. джунские вакансии, на которые берут трактористов, заучивших термины. Я, пока искал работу после курсов, 2 месяца учился по 10 часов в день (уволился с работы). Сейчас я нашел хорошую работу дата-аналитиком, и пока не перевез семью в ДС, продолжаю учиться после работы до позднего вечера каждый день почти без выходных, получаю люлей на различных соревнованиях, разворачиваю реальный ML проект на предприятии на общественных началах в свободное от работы время. Но я не уверен, что выдержу конкуренцию с олимпиадниками и ШАДовцами, которые штурмуют эти вакансии.
Не все «вайтишники» пошли на онлайн-курсы за легким баблом. У меня был жесткий синдром самозванца — я со студенчества хотел писать код, но для этого нужно было уехать с моей мухосрани. Онлайн-курсы помогли мне пройти этот потенциальный барьер и начать делать то, с чего я кайфую. Если бы не они, то так бы и сидел до пенсии в провинции на работе, которую ненавижу.
DepthRel Автор
Всё дело в том, что у Вас не был написан опыт работы. А это красная тряпка для тех кто резюме просматривает. Второй момент, у Вас не самый популярный стек. Именно поэтому на курсах описанных в статье, обучают популярным языкам и пишут липовый опыт, чтобы резюме не отправилось в утиль ещё до просмотра.
sshikov
>Поэтому, если честно, мне слабо верится в дефицит джунов.
>Второе, я не верю в 120 т.р. джунские вакансии,
Ну, вообще говоря, это все не ко мне. Если вы перечитаете, что я лично тут писал, то я не утверждал про вакансии на 120. Я говорил, что студенты в Москве зачастую просят 100. И если они что-то умеют делать руками — то они их вполне получают. В вакансии при этом может быть написано меньше — но договориться на 100 вполне можно. Про 120 я вообще ничего не говорил, поэтому тут и обсуждать не знаю что.
Ну т.е. если кратко и другими словами — то 100 это для Москвы в общем не уровень, если говорить про ИТ, по крайней мере для крупных компаний. Но надо понимать, что попасть снаружи в эти же крупные компании конечно сложнее, фильтровать резюме вероятно будут другие люди, и без знакомств добиться чтобы вас посмотрели — не так просто.
И второе — опять же, у нас нет дефицита джунов. То что я описывал, выглядит слегка иначе. Ищут людей с опытом. Приходят джуны, или даже хуже. Т.е. в нашем случае скорее имеет место неадекватная оценка кандидатами своего уровня.
А то что вы про себя пишете — вполне тянет на те же 120 (с поправкой на то, что я не дата-аналитик, и у нас в проекте другие потребности).
Ну а уж про легкое бабло я вообще нигде не имел в виду.
akryukov
К вышесказанному добавлю, что работа с данными (ETL) это вообще не то, что изучают на курсах DS. Сужу по своему опыту и по опыту тех, кого приходится собеседовать.
ETL выглядит как то… проще? Типичная задача в энтерпрайзе по ETL — забрать данные из одной табличку, соединить с другой. Правда таблички могут быть в разных СУБД. Или обеспечить интеграцию с каким-нибудь источником через какую-нибудь шину.
Ну и в целом построить систему по обработке и доставке готовых данных пользователю.
Мне однажды попадало резюме вроде вашего. Я его отклонил, потому что соискатель с таким профилем навыков скорее всего очень разочаруется от того, что ему на самом деле придется делать.
vilka14
akryukov
На тех курсах сразу предупреждают, что DS fit-predict делает 10% времени, а 90% времени работает с данными. И большую часть учебного времени посвящали работе с сырыми данными и подготовке их для моделей. Хотя SQL было мало, и опять же нам честно сказали — SQL в отведенные часы не влез, учите сами, вот ссылки.
Но с утра до вечера джойнить простые таблички мне было бы скучно, Вы правы.
DepthRel
В резюме он был описан, но он нерелевантен. Когда HR видит соискателя на вакансию junior datascientist, а с резюме на тебя смотрит 30-летний мужик из деревни с последним местом работы — начальник отдела «госкорпорация Х», то резюме летит в утиль. Смотреть пет-проекты никто не будет. Но подавляющее большинство выпускников с онлайн-курсов имеют нерелевантный опыт работы, иначе они бы не пошли на онлайн-курсы.
Не популярный стек? Возможно. На курсах я учился обработке данных и машинному обучению на python, все остальное — несколько лет по книжкам for fun еще до курсов.
Но насколько я знаю, на более популярных направлениях типа фронтэнда ситуация точно такая же — конкуренция невероятно высокая, и будь ты семь пядей во лбу, ты можешь за два-три месяца не попасть ни на одно собеседование. Хотя если попадешь, то высокая вероятность получить оффер, потому что общий уровень при таком количестве все-таки низкий.
akryukov
Позволю себе еще одну гипотезу. Это время в больших командах распределяется между разными людьми. Условно, если есть 5 человек, то сотрудник поопытней — будет DS fit-predict 50%/50%. Четверо остальных — 100% просто работают с данными.
Соответственно позиция DS может вообще не предполагать джунов.
5oclock
За 7 лет столько перепробовали…
«Пощупали», «палочкой потыкали» или реально погрузились в каждый из пунктов?
Автоматизация,
Аналитика,
БД,
С++,
node.js,
Web-фронтенд,
python,
ML.
vilka14
Я не знаю как можно реально погрузиться в каждый. Один С++ чего стоит. Но с него я вообще начал писать код. В 2013 году скачал книжку Прата, и попер по теории и всем упражнениям, ловя кайф от решения задач. Затем искал на работе что-нибудь, к чему можно применить свои знания. Решал какие-нибудь мелкие задачки (потому что крупных не было). Выйти в большой мир и прицепиться к опен-сорсу мешал дикий синдром самозванца. IT предприятий в городе тогда не было, да и в 2020 их нет. Боюсь, к 2050 их там тоже не появится.
А тяга писать код была. Вот и штудировал книжку за книжкой, делая игрушечные проекты (поскольку переводные книжки отстают от технологий на пятак лет в лучшем случае, то о пользе сами понимаете, но я этого тогда не знал). Потом стал начальником отдела, и увидел некоторые процессы, которые можно цифровизовать. Запустил от начала и до конца один проект. Смотрю — люди пользуются. Попросили сделать еще вот это. Запустил второй. Тоже пользуются. Однако качество моих проектов оставалось ниже плинтуса — гитом не пользовался, про докер вообще никогда не слышал. Фреймворки? Ну что вы, только хардкод. Я понял:
1. Мою кашу в голове надо упорядочить. Там была даже не каша, а дикое хрючево.
2. Если ты ловишь себя на мысли, что дико раздражаешься, когда тебя отвлекают от разработки на выполнение своих рабочих обязанностей — то ты делаешь что-то не то. Поэтому пошел учиться с целью сменить профессию и место жительства. Было страшно. Потому что внутри госкорпораций люди искренне считают, что снаружи жизни нет, и ты умрешь от голода. Я тоже так считал. Это чертова секта, достойная целой статьи. Спасибо супруге, что видела мои метания и поддержала.
Отвечая на вопрос прямо: я реально погрузился в машинное обучение, чуть меньше — в работу с данными. Все остальное скорее пощупал. Щупал я каждую тему долго, иногда очень, но не интенсивно — все-таки работать в профессиональной команде с технологией и писать сольные велосипеды в обеденный перерыв — совершенно разные вещи. Там еще assembler и visual basic .net были. Вот их да, палочкой потыкал. Покидало в стороны, так сказать.
saintbyte
Я иногда думаю что пора прекратить быть умным — надо быть продаваемым
Matisumi
А кто вам сказал что вы умный?
0xd34df00d
Может, он уже тренируется быть продаваемым?
xakep2011
Да, такова природа человеческого общества. Надо совмещать.
Theranos сумели себя продать, не производя никакой ценности.
Apple умеет и делать и продавать.
Если выскочка-экстраверт удачно продал себя на собеседовании, то серьёзный проект сразу же покажет кто есть кто.
Но грустно, если умный специалист не умеет себя продать, он должен учиться это делать. Иначе как люди узнают, какой он молодец?
Alexey2005
Вот тут-то и пригодились бы подходящие курсы.
Gryphon88
Они давно есть, например, актёрского мастерства.
VolCh
Выскочка экстраверт может себя так поставить, что работать будут другие люди, а результаты будут считаться его в большой степени.
delhi_heir
Вообще-то, продаваны — отнюдь не тупые, просто их ум чётко специализирован на умении хорошо продавать.
Тот же, кто хорошо продаваем, но сам не имеет ума — будет получать крошки с барского стола продаванов.
Nedder
Статья похожа на крики Бендера из футурамы :)
greenkey
Думаю, автор просто засиделся в мидлах ;-) а мимо проскакивают активные новички…
Нужно взять — и не побояться наконец, попробовать себя в новой роли, заодно потренироваться в собеседованиях, это дело непростое и требует подготовки.
Все остальное — вода. Рынок все расставит на свои места, просто сейчас большая нехватка, собирают всех, кто хоть что-то стоит. Левак отвалится, крепкие и жилистые останутся. Накиданный при этом говнокод потом будут переделывать другие, и тоже зарабатывать на этом. А еще это даст работу хакерам и безопасникам, и много еще кому.
А вообще, программисту «с багажом» нужно стараться не бронзоветь, все очень быстро меняется. Сфера ИТ расширяется активно.
vladvul
тема хорошая — назубрить терминов и получить стол с компьютером, там уже можно для начальника ваять презентации и visio, он это будет ценить гораздо больше чем hard skills
Немного нетворкинга и координации — и вот уже новый начальник над кодерами с мозолью на заднице.
Ну а если вайтишник может в код (хоть какого качества) — вообще молодец
janvarev
Старый девелопер:
«Когда у вас все будут нетворкить, а работать будет некому — позвоните.»
vladvul
позвонят, конечно.
На четырех низовых начальничков где-то полтора настоящих программистов нужно.
iit
В какой-то степени понимаю автора, сам заканчивал сперва колледж а потом и ВУЗ где была алгебралогики, теория множеств, теория конечных автоматов, матстат, функциональный анализ.
Были лабы на паскале с дихотомией, операциями над матрицами, построением фигур на основе функций и потом подсчета объема фигурой через интегралы, списками, графами и деревьями. Что-то из этого освоил на отлично, а что-то до сих пор не смог освоить.
Запомнился декану кафердры тем что каждую лабу сдавал на новом неожиданном языке и окончательно выбесил сдав программы на brainfuck и whitespace.
В тоже время сам проходил и иногда до сих пор прохожу курсы по технологии X, смотрел и смотрю видеоуроки по технологии Y, прочитал +100500 статей на хабре когда он был еще торт, а даже написал пару своих которые не вышли из песочницы. Контрибьютил в opensource проект по почте (когда еще не было github). Проходил коучинг на управление командой.
С одной стороны бизнесу достаточно вайтишников которые могут из готовых +100500 бибилиотек в node_modules в том числе и для создания n пробелов для отступов в консоли собрать нечто как-то работающее и даже приносящее деньги. А чтобы эти вайтишники дальше веслали активнее давать им лычки SuperMegaUltraFinalSeniorLead%TechName%Developer.
С другой стороны самое сложное что использовал в работе — конечные автоматы в хитром xml парсере, оценочная формула байеса в умном рейтинге и кое-что из статистики в вероятностном скоринге и фановая анимация на js + svg состоящая из кучи формул.
Остальная работа же на уровне — по нажатию кнопочки взять строку в базе и поменять ей статус при этом добавить еще 3 записи в другие таблицы и положить сообщение в rabbit. В общем сплошные CRUD, CRUD, CRUD и еще раз CRUD...
В итоге для rocket science мозгами не вышел, а текущая работа больше для того чтобы поддерживать комфортный уровень жизни — монотонная до серости, но хорошо оплачиваемая.
При всем этом как-то обидно смотреть на настоящих "инженеров — программистов" которым когда-то хотел стать но не хватило зубов, и понимать что они не нужны а если и нужны то 5-10 штук достаточно для моего города. А нужны люди которые быстро выполняют задачу из готового кода мешая все подряд и при этом не знают как написать fizzbuzz...
Alexrook
Но вы же не рабочий завода, которому до другого завода может быть проблематично доехать, если на ближайшем нет вакансий ) Программисту ли говорить, что вы не нужны в своем городе. Вижу много вакансий, где готовы рассмотреть удаленного специалиста, так как их очень мало. Речь именно про сложные, инженерные направления.
Самому все это интересно куда больше чем веб, но так как у меня нет никакой базы в виде какого-то образования, для меня это не вариант. И даже если я все это изучу, то это та отрасль, где до сих пор требуют профильное образование. Поэтому я ставлю перед собой более реалистичные цели. Ну а вы реально могли бы заниматься чем-то более интересным, чем CRUD приложениями.
VolCh
Удалённая работа не для каждого программиста хороший вариант. Я не про программирование железа, например, а про вообще сам формат исключающий живое общение.
titsi
А чем инж прогеры занимаются в вашем городе? они же выполняют ту же работу CRUD...(разработка софта) или аникейщиком./сисадмин
iit
Например мой учитель — занимался разработкой селе-предупреждающий системой еще при СССР и до сих пор ходит в горы и меняет для датчиков батареи этой системы.
Еще один знакомый занимается обслуживанием оборудования аэропорта.
Пара знакомых создают и продают iot устройства для рекламных стендов.
Еще один занимался по для управления поездами.
Еще пара знакомых занимаются BigData и аналитикой.
Да даже старший брат и тот пере-прошивает чипы для авто в своем СТО
Ernest88
Быстро не выучить, это не очевидно разве что гуманитарию. Это дело надо любить, быть к этому предрасположенным и вбухать в него уйму времени. И то годами будет то чувство — какой же я нуб и как многого не знаю.
Alexey2005
Как раз в гуманитарных профессиях всё намного хуже. Это технарю нужно, по сути, просто «загрузить» в мозг некий набор знаний, который к тому же до некоторой степени заменяется SO и умением гуглить.
А вот гуманитарные профессии обычно связаны с наработкой рефлексов. Этот процесс совершенно не поддаётся ускорению. И за полгода, да даже и за год, рисовать или играть на скрипке вы никак не научитесь, хоть что делайте.
Zenitchik
А ещё наработать рефлексы для их применения.
raamid
Поддержу, что в гуманитарных профессиях хуже. Им нужно реально прочитать кучу книг и всегда найдется тот, кто ткнет носом и скажет что ты дурак. И ничего не докажешь, если лычек на погонах нет. А у технарей, если спор возникает, то он легко (относительно) решается расчетом или экспериментом или запуском тестов. Бывают конечно исключения, но в целом технари мне представляются более адекватными.
Arris
Некий набор знаний легко заменяется гуглом.
Но нет, если у вас нет рефлексов и навыков программирования (см. определение "навыка"!) — хоть вам SO, хоть вам гугл — ничего у вас не выгорит.
for i:=1 to 10 goto label
Да, когда-то я так писал. Очень-очень давно. Когда на кружке программирования не было практики, а только загрузка некого набора знаний без практического закрепления.
Вы не поверите, но с программированием точно так же. Это тоже навык и нарабатывается он сотнями и тысячами часов практики.
А в гуманитарных профессиях всё просто! Всего-то книжек прочитал философических и знай, молоти языком. (ирония)
ETCDema
За 20 лет эпизодически приходилось собеседовать программистов и реально наблюдается тенденция к увеличению количества кандидатов, но очень сильно падает их квалификация.
После ряда экспериментов пришли к выводу, что иметь (например) трех квалифицированных (и более дорогих) разработчиков лучше (и дешевле!), чем пять болванчиков и лида к ним.
eclipse20
Если человек горит желанием стать программистом, в ВУЗах нет никакой необходимости в наше время. Лично знаю пример чувака, который отучился на финансиста, поработал пару лет, потом изучил js где-то год и устроился на работу программистом. Но это не senior уровень.
Если же нет этого огня, то никакие курсы не помогут.
Чтобы стать программистом, лично мне пришлось жрать байты в литл эндиан и срать их в биг эндиан не забывая при этом пропускать их через всякие кастомные quick/merge сорты и красно-черные кусты. И это было приятной частью из того, что приходилось делать в универе. Но я не жалею.
loltrol
Ну такая штука везде работает, не только в войтивойти. Вообще везде, во всех сферах надувательство и искусственное завышение, фиктивная, далекая от объективности(или используется ситуативная объективность), оценка ценности.
Где есть слово «деньги» — там есть безумие :)
Chronicler
Автор, зависть плохое чувство. А правда в том, что ни вуз (ни тем более армия), вовсе не обязательны чтобы научиться программировать и много зарабатывать.
Бизнесу нужны те кто будет закрывать его потребности. Точка.
Если человек после курсов справляется с задачами бизнеса — то он подходит.
Если не справляется, это будет видно, ведь не в вакууме же эти разработчики плавают. У них и свое начальство, техлид, тимлид, менеджер, которое следит за ними и считает коэфициенты эффективности, наблюдает за затраченным временем, закрытием задач, и много за чем еще.
Вы прошли сложный путь и не добились многого — это не значит что теперь сложно должно быть всем. Видимо для вас вуз это как с армией "без этого не стать настоящим мужиком" (с).
Вы боитесь из-за конкуренции, почему? Если вы хороший специалист, то вам она не должна быть страшна.
DepthRel Автор
Статья никак не о ВУЗе, и уж тем более не об армии (флоте). Статья о том что система позволяет себя обмануть, набирая на ответственные должности людей без опыта. Бизнес несомненно закроет свои потребности, но Вам с этими «специалистами» работать, и пользоваться трудами их деятельности.
Chronicler
А не возникла ли у вас деформация за годы работы в госкомпании? В частном бизнесе никакой "системы" нет. Есть рынок и конкуренция на рынке.
У нас не гильдия ремеслеников со строгим отбором и не орден ассасинов с испытаниями.
Если человек прошел собеседование и устраивает руководство, то нет никакой проблемы. Вы ее из пальца высосали.
DepthRel Автор
Вы не рассматриваете сценарий, в котором руководство просто поверило в то, что кандидат может решить проблемы?
Chronicler
Так в 99% случаев никакой rocket science для переливания данных не требуется и знаний библиотеки языка хватает с головой. Поэтому, решать большинство задач программирования для бизнеса, может даже школьник, если он уделил программированию хотя бы полгода практики самостоятельно.
У вас так болит голова за руководство чужим бизнесом, что встает вопрос, неужели вы полагаете, что коммерческими компаниями заправляют дураки тратящие свои деньги впустую?
Если человек прошел испытательный срок, значит на его труд у компании есть спрос.
Ваша же статья выглядит в духе "а что так можно было?"
Mairon
Такое тоже бывает. У менеджмента компании и её владельцев могут быть разные интересы. Точнее интересы могут быть одни и те же — заработать больше денег, но по большому счёту они могут играть в игру с нулевой суммой. Так что не стоит считать по умолчанию, что коммерческими компаниями заправляют только умники, тратящие деньги только на то, что нужно.
5oclock
Приятель работал в такой коммерческой компании.
Там даже не менеджмент, а сам хозяин (он же — гендир) был такой, что вообще странно было, как компания ещё живёт!
У менеджеров среднего звена волосы дыбом становились от его действий.
Они даже как-то вышли на разговор с гендиром, мол, давайте кто-то из Ваших замов будет гендиром, а Вы — как хозяин бизнеса, — будете просто получать прибыль и отдыхать?
Нет. Руководить буду сам. Фирма работает, чего вам ещё надо?
В итоге, когда появились явственные признаки приближающегося краха — мой приятель оттуда уволился.
fzn7
Кто вы такой чтобы вмешиваться в чужой бизнес?
Chronicler
Я к счастью могу выбирать с кем и где мне работать. А вы — нет?
Точно так же я могу выбирать, пользоваться глючным софтом или пользоваться тем что подороже и получше и голосовать рублем, а вы видимо, выбора лишены?
DepthRel Автор
Вы видимо директор IT департамента, не меньше, если можете выбирать с кем работать.
Chronicler
Нет, я программист. У вас что, хедхантер не работает? Или вам переезжать из одного города в другой нельзя? Компаний на рынке очень много, а открытых вакансий еще больше.
Вот поэтому и берут всех кто подает хоть какие-то надежды. Было бы действительно много талантливых программистов, то всех подряд бы не набирали. Поэтому у хорошего разработчика всегда есть выбор где работать и с кем работать.
JerryJJ
Небольшая поправка — бизнесу нужны те, кто закроет потребности, а набирают тех, кто _убедил бизнес в своей способности закрыть потребности_. Пожалуй, автор как раз и пишет о том, что массово наблюдается расхождение этих двух понятий, а на распространившихся курсах людей еще и готовят ко второму, не сильно парясь с первым :)
amirosta
Если те, кто закончил за 21 день курсы и составляет вам реальную конкуренцию — то вы определенно выбрали свою профессию ошибочно.
А если они не составляют вам конкуренцию и не будут составлять конкуренцию вам еще лет 7 точно, то к чему горевать?
ImLoaD
Представим ситуацию, вы решили найти новую работу. Приходите на новую работу — а там начиная от сеньеров и заканчивая тим лидами и тех дирами — люди, за спинами которых только 3х недельные курсы. Понятно дело, вы можете отказаться, но что, если 5 из 10 компаний будут именно такими?
amirosta
1) Это не имеет никакого значения. Я даже не узнаю об их образовании на этапе собеседования. А узнаю не раньше чем через месяц-другой работы в этой компании в результате «случайного разговора в курилке»
2) При выборе того, над чем мне работать — я интересуюсь чего там бизнес себе хочет, насколько мне это интересно, и сколько бизнес мне за мою работу может/хочет заплатить. Образование коллег к этому никакого отношения не имеет.
Да не 5 из 10, а 9 из 10 такие и есть. Уже.
Смиритесь. Бизнесу в подавляющем большинстве случае нужно решать довольно простые задачки.
P.S.:
Прямо сейчас сотрудничаю с коллегой, который реализует платежную система, типа банковской, только масштаб поменьше.
У товарища нет проблем с арифметикой. И этого достаточно.
У него проблемы с шифрованием… С типами данных.
Тем не менее он пишет почти банковскую систему.
И она будет написана.
И бизнес на ней заработает.
И зарплату ему выплатит.
Но если бы бизнес нанял супер-спеца, то он получил бы правильную-грамотную зашифрованную платежную систему примерно в те же сроки, но существенно дороже.
Бизнесу это не нужно…
janvarev
> И зарплату ему выплатит.
Ой, не говори гоп, пока…
У меня знакомые писали очередную блокчейн-валюту и тоже были полностью уверены, что «им всё выплатят»…
А ещё со мной связывалась крупная сеть магазинов, запускавшая онлайн-вариант продаж. Хотели сотрудничать. Менеджер с трудом ориентировалась в скидочных купонах. Пробил их ООО по базе судов — с ними ряд поставщиков судятся, видимо, по причине неоплаты товара (кстати, очень рекомендую, неплохой быстрый способ проверить контрагента).
Очень удивлялись, почему я с ними не хочу работать…
amirosta
Так он уже 3-й месяц её (зарплату) получает прекрасно и пилит этот проект.
janvarev
Ну, 3 месяца это немного.
Надо посмотреть, что будет через полгода-год.
amirosta
Какая разница?
Ну не заплатят ему в 4-й месяц. За пару дней найдет себе новую работу.
janvarev
> За пару дней найдет себе новую работу.
Ну, если у него офигительные Soft Skills…
Тут в комментах неплохие разработчики обсуждают как ходят по собеседованиям от месяца до трех и более.
Так что думаю, насчет пары дней вы преувеличили.
amirosta
Я про вот эту вашу фразу:
И про вот эту:
Человек уже работает и уже получает деньги. И уже получил деньги не один раз.
Вы же всё никак не можете согласиться с тем, и выставляете всё новые и новые условия:
Да какая разница если он уже работает?
И уже получает деньги прямо сейчас?
JerryJJ
Если смотреть на конкретного человека и его потребность прямо сейчас получить деньги, не заморачиваясь ни о своем будущем, ни о продукте и его пользователях, то все звучит совершенно корректно :)
amirosta
Будущее разработчика — гарантировано хорошим спросом на ИТ-специалистов. Тем более, что пополнив своё портфолио разработкой платежной системы — он будет еще более интересен последующему работодателю.
Будущее продукта — это вообще не задача разработчика. Это задача бизнеса. Бизнес и говорит разработчику чего он, бизнес, ожидает получить от разрабатываемого продукта.
С точки зрения разработчика имеет значения будущее продукта только в смысле «а как написать так, чтобы удобнее было в будущем тестировать и изменять написанный код».
amirosta
У типичного предприятия, тем более с такими проблемами — несколько ООО.
Проблемы одного ООО ни о чем не говорят.
Я тоже не понимаю.
Одно дело поставщики товаров, другое дело — поставщики услуг.
К ним очень разное отношение.
Поставищки товаров сами дают отсрочку платежа на месяцы (если товар не ходовой), сами предлагают эту отсрочку. Им нет разницы, по большому счету, когда товар продастся. Лучше быстрее, но если быстрее не получается, то соглашаются долго ждать, если есть какая-то надежда продать.
Поставщики услуг, типично, ничего в долг делают, ибо им нужно своим зарплату выплатить.
Так что я вас не понимаю.
Поставщикам услуг легко дают предоплату.
Тем более, что деньги для вас это копейки на фоне тех десятков миллионов, что они должны поставщикам.
Это очень разные отношения.
По поводу моего крупного клиента — розничной сети, кстати, мне известны такие их приоритеты:
1) Если по графику платежей они никому не платят — то мне заплатят день в день.
2) Если у них в эти дни зарплата сотрудникам или оплата аренды розничных точек то мне заплатят завтра.
3) Если у них в этот день оплата поставщику, то они деньги собирают загодя, за неделю-две, ибо суммы там гигантские. Но на оплату мне это никак не влияет, ибо мои суммы на фоне тех десятков миллионов — фигня.
janvarev
М-м. Как минимум это говорит о том, что они кому-то не оплачивают. Тем более в истцах там были ИП — не думаю, что ИП нужны большие деньги. Там и суммы исков указаны были — в пределах миллиона-двух.
Во-первых, не легко. Зависит от конторы и от механики. Если вы работали с мобильными операторами или банками, то наверняка знаете, что они очень сильно продавливает постоплату.
Во-вторых, конкретно там предлагалась агентская схема с постоплатой, не очень хочу вдаваться в детали, почему.
Но самое главное — я не понимаю, почему я должен хотеть играть в эту рулетку «вы мне заплатите?». Я в неё играл с большими компаниями, и даже чуть-чуть с государством (в качестве далекого субподрядчика). Нет, я, конечно, могу сделать наценку в 100%, и выиграть с вероятностью в 50%, получив то же самое. Но зачем это мне, поддерживать эту часть рынка? Вообще-то есть какая-то этика. Компания должна знать, что если она позволяет себе с позиции силы не платить, заставляя других идти в суд, то с ней никто из приличных людей работать не будет.
amirosta
1) ИП не означает, что там 1 человек работает. ИП тоже может нанимать сотрудников. Оформлять свою деятельность на ИП — пять-десять лет назад было быть выгоднее, чем ООО. Особенность налогооблажения. Фирмы с оборотом и миллиард рублей в месяц — заметную часть своего бизнеса оформляли как ИП.
2) Типичная проблема по задолженности — это касается поставщиков товаров.
Давайте я вам расскажу то, что мне рассказал за кружкой водки руководитель одной розничной сети:
«Как ты думаешь», спросил он меня, «На какую сумму тут товара?» — и показал рукой в сторону витрин (мы бухали у него в служебной части магазина, в т.н. подсобке).
Я назвал сумму. Он рассмеялся и сказал, что моя оценка занижена раз в 10.
«Думаешь, это я такой богатый и весь этот товар и красивые дорого сконструированые витрины я купил?» — спросил он.
«Ну часть за свой счет, часть за счет кредитов банков» — ответил я.
«Нет» — сказал мне руководитель розничной сети. «Если бы я брал кредиты банка в таких размерах, то никогда бы не построил окупаемый бизнес, ибо проценты банков слишком большие, а товар продается слишком медленно, чтобы иметь гарантию выплаты этих процентов».
«Оптовики, поставщики товаров всеми силами стремятся отдать свой товар рознице» — сказал он мне. «Они отдают мне товар с отсрочкой, они предоставляют мне свои собственные витрины, мне не нужно ничего покупать. А когда приходит срок отсрочки, то я говорю им — или забирайте товар или ждите еще пока у меня нет денег для вас, так как я еще не продал ваш товар, он продается плохо».
«Чтобы организовать розничный магазин, на самом-то деле вовсе не нужно денег. Ты работаешь не на своих деньга, а на деньгах поставщиков товаров, они дают тебе кредит фактически, причем этот кредит беспроцентный» — так объяснил мне руководитель розничной сети.
Другой руководитель, оптовик, сказал мне так (за кружкой кофе, ибо мы с ним не настолько близко знакомы, чтобы вместе бухать, как с предыдущим):
«Эти гады, эти дети самок собак — розница — так охамели, что берут у меня товар с огромной отсрочкой, а когда приходит срок оплаты — не отдают денег, говорят, что не продали товар и предлагают вернуть мой товар или продлить отсрочку за оплату товара».
«Если бы у меня был такой хороший товар как сейчас, но тогда, в девяностые годы, то я бы по предоплате его продавал, а если бы кто бы из розничных магазинов в те годы заикнулся бы мне о продаже с отсрочкой — я бы того смело пинками выгонял бы из своей фирмы. Так как в дикие девяностые я с таким товаром как сегодня имею — был бы и царь и бог. Но в наше время приходится этих (далее был мат) терпеть и кредитовать за свой счет месяцами» — сказал мне оптовик.
И иногда розница, избалованная товарными кредитами, что предоставляют рознице оптовики — несколько наглеет. И, даже продав уже товар, всё равно не отдает деньги.
Если оптовик продает ходовой товар, который быстро продается — такой оптовик подает в суд, конечно.
Если оптовик продает товар, что продается медленно — такой оптовик дольше терпит.
Я это всё к тому написал, что все эти судебные разборки по задолженности розничной сети не имеют никакого отношение к услугам.
Эти кредиты товарами и выкручивание рук оптовикам — основа бизнеса современных розничных сетей.
Но это не имеет к вам, как к поставщику услуг — ровно никакого отношения. Эта проблема касается только поставщиков товаров.
Вы (мы, я тоже такой же поставщик услуг ИТ для розничной сети) — совсем напротив — имеет возможность даже брать с таких предприятий предоплату за свою работу. Причем легко.
Что я и сделал прямо сейчас. На работу зарядил 3 недели. Деньги взял вперед 50%. Фактически работу сделаю за неделю, но на полнедели позже срока. И они — розничная сеть — будут меня терпеть.
Как терпят их поставщики товаров-оптовики.
Но в отношении поставщиков услуг у розничных сетей прямо противоположенная ситуация.
Мы — в выгодном положении.
Поэтом не нужно обращать внимание на судебные разборки по задолженностям за поставку товаров.
Просто берите предоплату. Смело берите предоплату за работу.
janvarev
За текст спасибо. Интересно, как оно выглядит изнутри.
Вообще я это могу. Лет 6-7 тому назад я этим относительно успешно занимался — и выбиванием условий, и всем таким прочим.
Сейчас просто надоело. Могу себе просто позволить сказать «мне не нравится ваш проект и ваши условия». И мне ок — пусть не так много денег, зато проекты поприятнее.
amirosta
Если вы работаете на себя — то совершенно нормально, что кроме непосредственного выполнения работы вам нужно еще и согласовать условия.
А там где возникает работа и её оплата всегда возникает 2 противоположенных интереса — продавец хочет подороже и поменьше продать, покупатель хочет подешевле и побольше купить.
Это совершенно нормально.
Если вы работаете на дядю то выбиванием условий занимается менеджер для вас (точнее для фирмы), а работу всё равно делаете вы.
Если вы работаете на себя — то менеджера у вас нет. И его часть работы (согласование условий) делаете тоже вы.
amirosta
Это только ваш выбор:
Вы можете соглашаться на постоплату.
Можете требовать предоплату.
ИТ сейчас может позволить себе выкручить руки бизнесу (немножко, не зарываясь).
Нередко с большими так и работают.
Завышают цены, получают деньги позже. Но значительно больше денег.
Все риски перекрывает завышенная стоимость.
Разумеется, нужно иметь не одного, а нескольких подобных заказчиков, чтобы даже неудача с одним перекрывалась с лихвой другими.
Это не обязательная модель.
Можно и по предоплате с крупными работать. Но денег меньше.
Это только ваш выбор и ваши оценки ситуации — что предпочесть.
DepthRel Автор
Не смог смириться с фразой: «моя хата с краю»; и вопросом: «ты самый умный что ли?». Недавно разговаривал с парнишкой, студент крупного ВУЗа. Знает очень много на своём не последнем курсе, рассуждает сдержанно, и уверен что не представляет для рынка никакой ценности. Грубо говоря: готов работать за еду. Вот именно ему составят конкуренцию, и сотне другой таких же будущих полноценных инженеров. И дело не в учебном заведении, а в стремлении к росту.
vserykh
Это рынок. Вместо того, чтобы с ним спорить, стоит понять как он работает и влиться внего, научиться плыть в этом потоке. Кроме себя и своей жизни вы не можете ни на что повлиять.
Может быть, в будущем сможете — когда у вас появится какое-то влияние на мир. Но оно появляется только после того, как вы понимаете принципы его работы. И обычно оно появляется условно у одного на миллион (нужно иметь много сил, храбрости, и не иметь противовеса в виде семьи и интересной жизни).
Я понимаю ваш пост, я тоже не согласен с тем как устроен мир. Но тратить время и силы на переживание по этому поводу не планирую. Занят более приземлёнными делами. Работаю, учусь, получаю удовольствие от жизни. Стараюсь приносить пользу на работе, бизнесу, коллегам, другим людям. Делаю немножко хороших дел вне работы. Появится больше ресурсов — сделаю ещё что-то более хорошее.
Я за еду работать не готов. И конкуренции не боюсь. Именно из-за стремления к росту и интереса к делу. В этом и разница. Хорошим специалистам нет конкуренции. Сложнее в зашумлённом рынке найти работу, да. Но и рынок больше. Больше рынок, больше спроса, больше денег. Больше людей идёт на рынок. Много из них не разбираются в теме и не хотят разбираться. Им нравятся зарплаты. Работодатель готов за это платить — это его дело. С одной стороны, такой работодатель долго не проживёт. С другой стороны, рынок огромный и особо ничего не изменится.
Бороться с системой смысла нет. Масштаб не тот. Где я и где система?
Я сделал выбор — занимаюсь собой и теми, до кого хочу и могу дотянуться. Остальное — пустая трата времени и ресурсов.
sentyaev
Тут как будто проблема не в конкуренции, а в самооценке.
Уметь себя продавать — необходимый навык, иначе да, придется работать за еду.
Да и если, как вы говорите, человек умный и много знает, то пройти курсы про нужному фреймворку труда не составит, и при всех вводных он будет на голову выше всех тех, кто только курсы и закончил.
zagayevskiy
Ну и что? На собеседовании будет видно, кто что знает, и кто чего стоит. Никакой реальной конкуренции такие чуваки составить не смогут.
ardraeiss
Статья как раз про то, что при оценке по уровню "умение проходить собесы" — разницу то видно будет, да не в пользу "знает".
zagayevskiy
Что это за умение такое волшебное? Если кто-то не умеет проводить собеседования, это не значит, что собеседуемый умеет их проходить. Я никогда не задаю вопросы с бинарным ответом. Я пытаюсь узнать, что знает кандидат, и понимает ли он то, о чём его спрашивают. Если он какие-то штуки заучит без понимания — это будет видно, и он собеседование не пройдёт.
PyerK
Я тренировал ребят на собесы в Люксофты/епамы/етц.
За короткий промежуток времени (несколько недель) можно научиться хорошо вести диалог и отвечать на все их вопросы. На вакансии до 2-3к можно, как оказалось, настроить конвеер и вполне успешно трейнить вайтишников. Сама схема и сценарий собеседований там стандартная, и критерии не меняются уже лет 10. Если попал в Люксофт, то там уже тебя не уволят. В крайнем случае переведут на другой проект.
Сам же я легко вычисляю «ходоков» по собеседованиям. Они отлично знают ответы на самые каверзные стандартные вопросы. Но стоит задать простейший вопрос, который никто им не задавал ранее, как видно что ребята уплывают.
spirit1984
Когда я слышу про онлайн-курсы, я сразу вспоминаю этот ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-0001-introduction-to-computer-science-and-programming-in-python-fall-2016 — вот человека с прохождением этого курса, наверное, можно брать на джуна не глядя как минимум. Но мне ни разу не встречался вайтишник, проходивший его. Наверное, потому, что маркетологи MIT не догадались его правильно позиционировать)
remzalp
Посмотрел курс, то есть получается, что такого уровня знаний достаточно на джуна?
uldashev
Ситуация конечно не очень, но в глобальном плане все это уже было, в США лет 20 назад тоже самое творилось в отрасли, SoftSkills, месячные курсы Java и ты сеньор. А когда выяснилось, что код писать все же кому то надо, и писать так, чтобы он хотя бы делал в 5 случаях из 10ти то, чего от него ждут создали аутсортинговые компании, ну а что, здорово же, код пишется, затраты снизились, те с софтскилами, так как писать код они так и не научились — руководят, дело понемногу движется, код пишется, деньги капают, все довольны.
ImLoaD
Как говорится, «рыночек порешал». Досадно
20912
ИМХО: курсы бывают очень разные. В том числе и онлайн. Смотрел курс лекций по алгоритмической сложности от Школы анализа данных Яндекс. Свободно лежат на YouTube. Считаю, что при доступе к таким материалам, нужный профиль высшего образования можно собрать для себя не поступая в ВУЗ. Вопрос только, где взять интерьвьюера, который сможет это проверить на собеседовании?
janvarev
Кстати, это у вас не курсы, а самообучение.
У меня тоже странная практика — люди, обучившиеся сами, выдают значительно лучший результат, чем те, кто обучался на курсах. Видимо, мотивация другая — когда учишься сам, учишься ради себя. Те, кто идут на курсы, видимо рассчитывают на то, что ИХ НАУЧАТ (очень зря).
JerryJJ
Как выражается один известный мне очень крутой препод: «Образование нельзя дать. Его можно только взять».
AndreySitaev
На курсах люди не сами обучаются разве?
Или "сами" обучаются лишь те, у кого обучение строго ограничено рамками оплачиваемых 40 часов в неделю?
Redrik05
А куда и на какую должность устроился ваш ленивый друг?
amirosta
Судя по описанному — он не ленивый.
А просто неусидчивый, настроенный на быстрый результат.
Ленивым его нельзя назвать при такой кипучей энергии, вложенной в несколько подходов к «войти-в-айти».
Redrik05
Точно!)
DenisTrunin
Еще не хвататает названия курсов. Т.е. если даже новичков смогли научить на ведущие позиции, работают там реальные профи, сам на такие бы пошел. Предлагаю открыть занавес
DepthRel Автор
Не отвечу, потому что могу подставить инсайдеров. Если Вы хотите научиться обманывать интервьюеров с около нулевыми знаниями, думаю есть другие пути. Но мне кажется что все эти пути ничто в сравнении с реальным опытом работы.
DenisTrunin
Так а почему обязательно обманывать и почему с нулевыми знаниями? Работать то в любом случае придется. Если я к примеру хочу устроиться в сбер на ведущую позицию с минимальными затратами времени — какой путь выбрать? Курсы которые подготовят по ключевым технологиям, это как раз то что нужно. Проблема в том, что сейчас таких курсов огромная куча, но если вы(в качестве инсайда) расписали что люди именно после ваших смогли устроиться, это как бы показатель их качества.
MayRiv
Прочитал по-диагонали, какой-то лай на ветер.
Вечно находятся люди, которые любят со стороны покричать на окружающих «Что вы делаете! Это надо делать не так! Вы все должны перестать делать то, что делаете, а делать по-другому!» вместо того, чтобы самому чем-нибудь заняться.
Мне «вайтишники» ничем не мешают. В мою команду они не попадают, люди, ответственные за найм(иногда это я) неплохо отсекают таких. Не вижу проблемы.
DepthRel Автор
Уверены? Неужели должны уйти деньги со счетов, упасть самолёты, пойти на дно корабли, что бы это стало проблемой? Не замечать — Ваше право, которое я уважаю.
MayRiv
Было время, когда я руководил командой из 10 программистов. 9 из них давали хороший результат, 1 — был чем-то вроде самозванца, которых вы описываете, и его пришлось уволить. Не вижу в этом особой проблемы, реалии жизни.
А это уже проблемы процесса. Надо ставить хороший процесс со статическими анализаторами кода, код-ревью, автотестами, командой тестировщиков чтобы минимизировать проблемы.
VolCh
А для этого можно пройти курсы :)
amirosta
В принципе, в любой отрасли можно «просто прочитать книги, доступные в открытых источниках». Ну или купить эти книги. Или почитать онлайн.
Только от ученика при такой системе нужен еще навык самообучения. Чего ваш товарищ был лишен — вы это написали выше.
И все эти ВУЗы, школы, курсы — действительно ничего оригинального в подавляющем большинстве не дают. Все эти знания открыты, общедоступны и давно опубликованы.
Но задайте себе вопрос:
Смогли бы вы хоть чему-то научиться, если бы вас не учили, не говорили где почитать, не проверяли домашнее задание?
Отдельные редкие люди на это способны. Да.
Но подавляющему большинству нужно чтобы кто-то взял на себя ответственность за обучение тебя. И ты будешь готов за это платить, в том числе и хорошо платить.
На самом деле, если не лениться, то обучение с хорошим преподавателем, который уже знает куда обратить внимание, а на что не тратить время — всё же более эффективно, чем одно сплошное самообучение.
Другое дело, что те, кто выучились с самообучением — более целеустремленные, усидчивые люди. Большинство всё же не такие.
DepthRel Автор
Вы целиком и полностью правы. Но «вайтишник» начавший карьеру как и положено с уровня junior, впоследствии ставший инженером, не одно и то же что «вайтишник» занявший ответственную должность с около нулевыми знаниями.
amirosta
Это проблема того, кто его нанял.
Но вот если это проблема того, кто «профессиональный айтишник с образованием и 15 годами опыта», если такой «войти-в-айтишник» составляет ему конкуренцию… то мне совсем не жать того, кто пропинал балду 15 лет.
Neikist
А так же это проблема тех кто с ним будет работать. И проблема пользователей этого продукта. Уверены что никогда ни в одну из этих категорий не попадете?
amirosta
Вы так об этом пишете будто бы этого еще нет, а только грядет.
В среднем во всех отраслях нас обслуживают люди не выдающейся, а минимально достаточной квалификации.
И ничего — мир не рухнул.
ardraeiss
Мир в целом — нет. А вот, скажем, пара самолётов — вполне. "Бабы новых нарожают" это отнюдь не отечественное даже изобретение, даром что датируется веком так 19-ым минимум. Да, там не конкретно разработка… но вопрос к качеству принимавших решения и их профессионализму е.
Или можно и разработке бочку выдать — в лице сбоивших рентгеновских аппаратов.
oblakooblako
Есть хорошие курсы, есть плохие универы, есть умные HR, есть плохие «умные» книги…
Redrik05
Подробнее про хорошие курсы, пожалуйста
oblakooblako
itvdn c#
AndreySitaev
Позвольте еще накинуть:
— курсы можно проходить, а можно «проходить». Я проходил курс по нейронным сетям на сайте Stepik. Довольно сложный (по мне) местами — желательно немножко набить руку на программировании и сохранить что-то из студенческих знаний.
Я проходил курс сугубо на перспективу. Но были и курсанты, заводившие себе по два акаунта. От левого акаунта курсант публиковал пустой ответ. На крос-реферальной оценке этот ответ получал 0 баллов, зато появлялась возможность посмотреть корректное решение. Публикуемое потом (с незначительными изменениями) от основного акаунта.
Для чего им это? Возможно, для красивого резюме. Плюс, кажется, этот курс шел в зачет дисциплины «Нейронные сети» в одном из вузов.
К чему я:
— курсы — это хорошо. В особенности те, что заставляют напрячь мозги и потратить несколько вечеров на особо коварную задачу. Если «вайтишник» осилит курс React JS — это автоматически означает, что он также прошел курсы — либо составил себе сам программу и подготовился по ней — для ряда смежных дисциплин. Тут и основы верстки, и ванильный JS, и spinoff-ы типа XPath и регулярных выражений.
Найти в поиске достойные курсы обучения IT-дисциплинам, кмк, задача несложная. Сложно их осилить. А не получить липовый «электронный сертификат» о прохождении курса.
Redrik05
Stepik — крутая платформа. Сам сейчас прохожу там курс по Python(и да, там есть курсы, которые идут в зачет в некоторых ВУЗах). По сути, половину любого платного курса можно найти на Степике бесплатно. Фишкой платных курсов я считаю только менторство и командную работу с такими же как и ты. Но за это платить сумму в районе 100 000 — дорого. Если попадется слабый ментор, попадешь не в ту команду и тд, то деньги на ветер.
У меня нет цели войти в айти, но если бы были короткие боевые курсы, на которые берут по итогам экзамена по основам языка, ООП, алгоритмам и структурам данных, то я бы уделил пару месяцев своего времени подготовке и был бы не прочь заплатить деньги, но везде пестрит реклама для абсолютных нулей. Я такому не верю. Даже если человек что-то усвоил, нужно время, чтобы это улеглось у него в сознании. В рамках курса это анриил.
masterprize135
Статья полностью описывает мой опыт)
Был у меня брат, на два года старше чем я и в 17 лет спросил меня как начать программировать. Сам я начал "программировать" с 11 лет. Я ему ответил что надо изучать основны а потом на практике закреплять знания и изучать что то новое. Он сказал ОК, и вот спустя 4 года, он оканчивается ВУЗ и… Знает куда меньше меня. Ведь теорию он знал (как то, по крайней мере), но закреплять на практике никак не хотел. Вот так и вышло.
Rangdrol
В стране нет производств, нет нормальной высокооплачиваемой работы, это закономерно что люди будут идти туда где больше платят и всеми силами, правдами и не правдами пытаться заработать себе нормальные деньги.
Программирование это инструмент для заработка денег, не больше и не меньше.
Если между нормальной сытной достойной жизнью стоит задача надурить ейчара и тимлида на собеседовании то это будет сделано.
У меня где то год опыта, я себе еще 2 года накинул что бы претендовать на большую зарплату и что бы меня охотнее брали на работу, я понимаю что если не врать и не вешать лапшу на уши то в этой жизни ничего не получишь.
Alexey2005
Если все начнут так рассуждать, то лет через семь получим примерно такое:
— Что за дичь?! Где вы вообще будете брать таких людей?— О, всё продумано! Наши статистические исследования показали, что люди пока ещё стесняются накидывать себе больше 75 лет опыта, а нам как раз с пятилетним-то и нужны.
Arris
Это звучит смешно, но я однажды наткнулся на вакансию. Требовался в общем-то обычный эникейщик, но в числе требований было:
kbaa
Множество людей, которые добились успеха честным путём, сейчас находятся в недоумении. Врать конечно проще, чем работать и развиваться, но обычно это хотя бы не афишируют
Rangdrol
Например какие именно люди?
kbaa
У меня среди хороших знакомых наберется достаточное количество, в чьих моральных принципах я уверен. Логично предположить, что таких людей в целом немало.
Если в качестве примера вы хотите услышать имена каких-то широко известных людей, то увы, с такими я если и знаком, то не так близко, чтобы что-то гарантированно утверждать, поэтому не рискну.
Если у вас не получается честным путем добиваться желаемого — это не значит что у других так же. Отчасти соглашусь, что хитрить и на*бывать ближнего своего — более простой и распространенный способ, но тут уж кого как воспитали. Один мой приятель в беседе о моральной стороне работы с откатами сказал примерно так — «Ты пойми, если ты не дашь откат, это не значит что заказ отменят, всё равно найдётся тот, кто даст, а ты просто упустишь свою выгоду». Для себя я всё равно решил, что есть более честные способы заработка, но фактически в сложившихся реалиях мой приятель прав.
amirosta
То есть вы утверждаете, что существуют люди, что в принципе никогда не врут и режут только правду-матку. И даже не умалчивают, не скрывают важную информацию и истинное положение вещей (по сути это «молчаливая ложь» или «ложь бездействием») — даже когда речь идет об их кровных интересах? И эти люди не сумасшедшие и успешны в жизни?
Позвольте вам не поверить. Приспосабливаться к окружающему миру — естественное свойство здорового человеческого мозга.
В начале карьеры если не преувеличить свой нулевой опыт — тебя никто не возьмет.
Далеко в этом заходить не стоит. Всё равно проверяется. Да и не особо нужно потом, когда карьера началась. Но в начале карьеры придумывать себе фиктивные места работы — частая практика.
Разве это не о другом?
Вы можете не давать отката, но при этом покупать за углом и продавать втридорога. Честно ли это? А логично ли это в смысле бизнеса?
0xd34df00d
Если карьеру начинать до или во время вуза, то не нужно будет ничего себе преувеличивать.
Скажем так, у меня всегда было честное резюме без липовых мест работы, и это не помешало получить ещё до выпуска из вуза оффер в зарубежную компанию с релокацией.
amirosta
Значит, вы себя как-то зарекомендовали во время учебы? Ну дык это то же резюме по сути.
Я в своем первом резюме указывал то, чем занимался в ВУЗе. Помогает действительно.
0xd34df00d
Ну, если вкратце, я зарекомендовал себя как упоротый плюсами чувак, благодаря чему мой одногруппник порекомендовал меня товарищу, который искал C++-разработчиков себе в стартап в группе моего вуза в фейсбуке. Благодаря этому я в районе четвёртого курса получил работу, которую ну совсем не стыдно было писать в резюме.
Ну и до этого были всякие парттайм-работы-подработки, плюс богатый гитхаб, который я ещё до поступления в вуз завёл.
kbaa
Я думаю, мы с вами немного о разных вещах говорим. Там товарищ выше утверждает что
Может быть, это я его слишком широко понял (хотя часть про «в этой жизни ничего не получишь» даёт основания думать, что это не про частные случаи, а общий подход) и ответил, что у меня есть примеры честных людей, которые добились в жизни успеха. Я не утверждаю про «абсолютную честность», но ложь всё-таки разная бывает, и отношение к ней тоже разное. В моей системе понятий, врать о предыдущем опыте работы — фу. Это с большой вероятностью несет ущерб другим людям и неприемлемо. На себе испытывал, каково это, когда работаешь с человеком, который утверждал, что умеет что-то делать, а потом выясняется что или не умеет, или умеет, но не совсем то, или только слышал, как надо делать. Ну, т.е. если совесть позволяет втираться в доверие ради собственной выгоды — ок. Каждый сам себе судья в моральном плане. Просто хотя бы распространяться об этом не стоит, а то уже совсем как-то не очень. Если я не монополист, то это честно и логично в текущей экономической системе. Обмана и принуждения нет, а цена регулируется рынком. В большинстве случаев, если я продаю втридорога, то у меня или не покупают, или покупают, потому что высокая цена компенсируется какими-то другими факторами.A114n
Идею «везения» вы не рассматриваете совсем?
Тут ведь вот какая загогулина получается: враньё и лапша на уши даёт гарантированный результат. Сильно утрируя, такой же гарантированный результат даёт убийство старушки-процентщицы топором — тюк и вот уже рупь у тебя есть. А дальше, раз уж мы вспомнили Достоевского, возникает только одна проблема — одни люди это твари дрожащие, поэтому им врать или убивать старушек тяжело. А другие — хозяева жизни, право имеющие, и им это делать легко.
И если вы оглянетесь вокруг, вы увидите, что принадлежность ко второй категории означает успех всегда, это, повторюсь, гарантированный успех.
А люди из первой категории могут добиться успеха только случайно, и даже вам приходится оправдываться, утверждая, что вы знаете таких людей, или что такие люди вообще существуют. Потому что ваш собеседник говорит вещи общеизвестные, к любому на улице подойди, и он скажет, что сыто и сладко живет вор, бандит, мошенник, но никак не честный дурак.
kbaa
Разговор же не о везении вроде? У меня достаточно широкий и разношерстный круг друзей и знакомых. Есть и те, кому в чем-то повезло. Но в своем комментарии я говорил именно про группу людей, которые честно и по совести усердно работали, чтобы добиться желаемого. Между прочим, бандиты и мошенники тоже далеко не все сладко живут, в мутных делах и риски выше, но это уже другая история
Вообще не ожидал на хабре столько попыток найти обоснование тому, что можно и нужно врать людям.
«Прости нас, Юра, мы всё просрали»
A114n
Вы не уловили нюанса, видимо.
Я не пытаюсь обосновать то, что «людям можно и нужно врать».
Я говорю о том, что это очевидная и гарантирующая выгоду стратегия.
Вопросы о том, что «можно и нужно» каждый решает для себя.
Но факт есть факт.
Причём подавляющее большинство богатых и успешных людей — это даже вполне открытые лжецы, воры и мошенники. Вот, скажем, Дуров украл дизайн у Цукерберга, сам Цукерберг, похоже, тоже его украл в своё время. Или вот Тёма Лебедев довольно подробно рассказывал, как он подделывал информацию о своём опыте — сам придумал фирмы, в которых работал, придумал их заказы, слепил в портфолио и сказал, что «опытный дизайнер». Кого ни копни — мухлевал, классика же: «я могу отчитаться за любой заработанный мной миллион, кроме первого».
kbaa
Вы не встречали людей, которые за неудачные махинации поплатились имуществом или здоровьем? Я могу согласиться, что за «приукрашивание» своего резюме в большинстве случаев даже по лицу не прилетит. Вздохнут, выгонят и начнут искать другого работника. Но если рассуждать шире, вспоминать цукербергов и других личностей подобного масштаба, то историй когда «пацан к успеху шёл» и не дошёл будет заметно больше чем этих личностей. Вы вообще понимаете, какой бэкграунд надо иметь, чтобы оставаться живым, здоровым и на свободе, являясь «открытым лжецом и мошенником»? Я еще могу сделать небольшую поправку на IT сферу и людей пробившихся наверх лет 10-15 назад, когда один гик крал идею другого и в ответку мог прилететь судебный иск или гневная статья на популярном ресурсе. Но я не уверен, что сейчас также, в отрасль пришли люди с другим мировоззрением.
Опять же, не горю желанием учить взрослых людей, как надо и как не надо поступать, просто немного удивляет что дискуссия на эту тему вообще возникла и растёт
amirosta
Это актуально только в самом начале карьеры.
Людей вовсе без опыта — желающих брать мало.
JerryJJ
Да ладно, есть и производства и работа :) Подобные, как тут в комментариях, рассуждения — внутренние проблемы ИТ-отрасли, люди внутри которой временами очень уж замкнуты в своей области. Но то, что в эту область идут ради денег (не ради интереса и развития), и даже не потому, что можно заработать денег своим трудом, а потому, что можно получить большую зарплату даже толком не учась (aka срубить по-легкому) — это проблема
Rangdrol
Человеку свойственно искать легкие и кратчайшие пути для достижения своих целей, это абсолютно нормально.
JerryJJ
Для человека, решающего свою локальную проблему — совершенно нормально. Для тех, кто вынужденно станет пользователем его произведений (приложения банка, сайта магазина, контроллера лифта, турникета в метро, да мало ли чего) — уже не очень нормально.
А представьте, что вы заказываете софт у аутсорсера. Открываете его сайт, натыкаетесь случайно на раздел с вакансиями, просто из любопытства переходите на HH, и понимаете, что собираетесь подписать договор с компанией, куда набирают абы кого уже по требованиям. Акто туда откликается после таких курсов… ух… :)
Rangdrol
Это закономерный результат того что государству и обществу наплевать друг на друга и каждый конкурирует за место под солнцем что бы выжить. Пока существует такая система всегда будет ложь, обман и использования уязвимостей системы ради своей выгоды.
Rangdrol
Эта работа или копеечная или физически тяжелая и изнуряющая.
rusikus
Тут ключевой вопрос вот в чем. Эти люди которые в сбер и МТС устроились до сих пор там работают? И как давно?
DepthRel Автор
На сколько мне известно, работают. Не так давно, но конкретные сроки не назову, потому что это сразу же выдаст этих людей. Я статью писал не для «охоты на ведьм», а что бы компании начали присматриваться к кандидатам внимательней.
sshikov
>выдаст этих людей
Да ладно. В Сбере, если на то пошло, примерно 280 тыс сотрудников. И кому это надо?
DepthRel Автор
Не одним Сбером едины. В других компаниях могут заинтересоваться своими кадрами и присмотреться с лупой. А разоблачитель — не моё амплуа.
sshikov
Ой, ну бросьте. Никто не будет присматриваться. А если будут — то к их работе, а не к статьям про них. Ну вот прям менеджерам больше делать нечего, как выискивать, о ком это вы тут написали. Я понимаю ваши опасения, но они преувеличены.
rusikus
Я к чему веду, что если до сих пор работают, то с задачами своими справляются. Так в чем собственно проблема?
fransua
Сбер славен бюрократизованностью и общим бардаком в IT, первые полгода получаешь рабочее место и допуски, потом может быть таска придет, если руководителя будешь просить.
A114n
Ну вот смотрите, до тех пор пока у боинга не упал самолёт — все там отлично работали, «справлялись с задачами». И дальше работали бы, если бы самолёт не упал и люди не погибли бы.
А вот Windows, например, чуть ли не каждый месяц выкатывает обновления, которые вешают систему. Или вспомнить как в прошлом году они выкатили обновление на офис, которое убило скрипты, и куча завязанных на эти скрипты баз данных перестали работать. А хром примерно тогда же выкатил обновление, которое ломало пользователям доступ на сайты, и тоже потери исчислялись миллионами.
Но поскольку никто не умер — «до сих пор работают, с задачами справляются», и обновления до сих пор вешают систему.
Границу выставили на смерти, а вы даже этого не заметили. «Нормально» считается всё, что не связано со смертью или взрывами. Никто не умер? Что ж, ваша проблема — не проблема.
sumanai
Если бы боинги летали так же часто, как запускают ПК с Windows, человечества бы не хватило.
ardraeiss
Между "запускается" и "накатывается обнова с багом" есть определённая разница.
amirosta
Встречал это ровно 2 раза за последние 25 лет (со времен Win95, да).
Что-то не так с вашим железом или говнософта поверх ОС в вашей системе полным-полно.
Ну или возможно, ваша кряка для ОС так себя ведет.
F0iL
Вы феноменально везучий человек. Говнософт и кряка тут вообще непричем, это именно кривые недотестированные обновления.
windowsreport.com/kb4467682-bugs
www.zdnet.com/article/windows-10-update-causes-blue-screen-of-death-for-these-thinkpad-laptops-warns-lenovo
www.techradar.com/news/windows-10-may-2020-update-breaks-internet-connectivity-for-some-and-causes-deja-vu
www.tomsguide.com/news/windows-10-updates-cause-nasty-blue-screen-of-death-and-more-what-to-do
www.windowscentral.com/latest-windows-10-cumulative-update-slowing-systems-and-breaking-connectivity-some-pcs
www.windowslatest.com/2020/05/17/windows-10-kb4556799-issues
И этому вполне есть причина.
amirosta
Ну я же не говорил, что она и не зависала у меня никогда или не вылетала из-за кривых драйверов от моего железа.
При чем тут везение?
Не очень понимаю как квалифицированный ИТ-шник может влипнуть в эту ситуацию.
Условной «не подкованной технически домохозяйке» простительно.
P.S.:
Там выше про Thinkpad — просто ставил на Thinkpad не всё то ПО, что предлагает производитель, совершенно не думая нужно это или нет, а то, что на мой взгляд нужно.
И также не считаю что нужно от всего подряд бездумно отказываться от того, что предлагает производитель.
Принятие подобных решений и выполнение всех действий на этапе подготовки к работе нового Thinkpad и т.п. — занимает ну полчаса. Зато потом это работает устойчиво долгие годы.
P.P.S.:
Если к прежним версиям Windows и к прежним пакетам ПО, идущим в комплекте к новому железу — еще могут быть претензии.
То как раз в последнее время с этим всем стало значительно лучше. Работает куда как стабильнее. Имхо.
Имею практику с Windows начиная с Win 3.1. Далее Win 9x, Win NT 3.51 и пр. и пр., серверные, десктопные версии.
Сейчас десктопные определенно куда как более стабильные.
Ну или железо стало таким хорошим, хотя я всегда старался покупать получше.
P.P.P.S.:
В принципе, учитывая зоопарк железа на котором работает Windows, вполне возможны ситуации сбоев у отдельных пользователей на отдельном сочетании железа, драйверов и прикладного софта.
Но я бы не распространял эти исключительные ситуации на всё подряд.
Повторюсь, по моей личной практике, как раз напротив, нынешняя Windows удивительно стабильна.
F0iL
Поэтому
1. Дождаться, пока прилетит очередное обновление от MS
2. ???
3. PROFIT
amirosta
После установки драйверов — бывало, да.
После установки/запуска некого прикладного софта — бывало.
После установки обновлений ОС, повторюсь, пару раз за 25 лет.
Причем со старыми версиями еще до Windows 7 (с которой как раз началась стабильность, правда, Windows 8 я практически пропустил, поработал на ней пару месяцев и началась 10).
Предъявы можно кинуть прежде всего Windows Vista да Windows ME.
P.S.:
Бывает что обновление не устанавливается и откатывается назад или устанавливается криво и откатывается назад — не вижу в этом никакой проблемы, если все данные целы и не требуется переустановка ОС.
Это нормально для таких сложных систем как ОС.
У меня и Linux/FreeBSD/MacOS убивали простые штатные обновления ОС, бывало.
Даже один раз с Andorid было.
edskii
Ситуация к сожалению глобальная… Боинг 737 Мах упал по вине индусов-погромистов, которые также пытаются активно выбиться в люди, и неважно что там накодили, главное платят исправно.
DepthRel Автор
На сколько мне известно, вину за два разбитых Max'а возложили на Boeing не за систему MCAS как таковую, а за недостаточное информирование лётного состава о принципах её работы. Могу быть не точным.
ardraeiss
Там ещё ряд интересных деталей был, вроде проведения сертификации частично силами производителя же.
И ведь кто-то же принял приведшие к исходу решения и их завизировал.
Maksclub
Что такое «вина программистов-индусов»?
Или ы попытке выбиться в люди, чего не делают не индусы-программисты?Вина в индуистской природе?
Или в том, что виновным оказался программист, а не проектировщик + архитектор + ТЗ + QA + индженерная структура управления (тимлид, СТО) + заказчик?
Или вина в плохом преподавателе в Индии?
Или вина в том, что взяли неквалифицированного кадра?
Или вина в том, что американская корпорация заказала у неквалифицированного партнера продукт?
Еще раз, что такое вина индуса-программиста? Можете конкретнее?
Аналитика уровень «Бог»
vladkorotnev
Программист-индус — это далеко необязательно из Индии, главное чтоб работал так, будто ему платят по числу строк кода :-)
Правда фишка в том, что у боинга не только и не столько в коде был косяк, сколько по всей вертикали. Двигатели увеличили, стало задирать нос. Можно решить механически — ой, а это ж по новой на сертификацию идти! Можно решить программно и явно указать эту фишку в мануале — ой, а это ж пилотов переучивать, кто будет такой самолёт покупать, на котором без дообучения не полетишь! Вот и оставили существенную операционную особенность «на полях», за что и поплатились. Ведь код там мог быть и не "индусячий", но всё равно когда-то дать сбой, а действия пилотов из-за отсутствия переобучения остались бы такими же.
briarheart
Сам по сути являюсь «вайтишником», поскольку не обладаю профильным образованием, и ничего не имею против людей, которые меняют сферу деятельности по велению желудка. Галерам нужны гребцы, в конце концов. Однако, порой умиляют личности, приходящие время от времени на собеседование в нашу провинциальную компанию и демонстрирующие околонулевые навыки программирования, а затем с грустью в глазах рассказывающие о том что им нечем кормить семью, работая на должности кладовщика/электрика/еtc. В любой сфере не должно быть места человеку, который пришёл в неё лишь за тем, чтобы «коптить небо» и получать за это зарплату. Ну это в идеальном мире конечно же.
MinAps
А я изучаю наборы команд x86 и ARM.
Страдаю вечной оптимизацией и рефакторингом своих проектов.
Размышляю о гибридной эмуляции. Это когда программное обеспечение скомпилированное для ARM вызывает родные x86 нативные API операционной системы. Вечерами прикидываю увеличение производительности от такого трюка.
Пытаюсь писать свой компилятор (просто ради забавы).
Переписываю и обновляю документацию по ИБ каждые пол года по месту работы.
Заставляю работать сервера еще быстрее, выжимаю последнее.
Резервирую каналы, строю агрегированные каналы между офисами, собираю и разбираю RAID массивы, резервирую коммутаторы, активно моделирую аварийные ситуации.
За ужином подумываю (о высоком) о том что x86 процессорам придет конец только из за того что все поголовно ушли в фрейворки, питоны, и в прочие интерпретируемые языки. Все вместо нормального нативного интерфейса пихают целый CEF + HTML + CSS + JavaScript + колбеки на функции ПО написанного на C#. А я еще ругаюсь на такое поведение разработчиков, а тут вон оно что.
Надо оказывается просто курсы пройти что бы нормальную работу то найти… а не зубрить от транзистора до абстрагирования от абстрагированного.
Tsimur_S
А какая взаимосвязь?
Вот уж зубрить точно ничего не нужно.
MinAps
Вот Вас как Web разработчика интересует на какой аппаратной платформе я открываю Ваши сайты? Я могу просмотреть Ваши работы и на Малинке и на обычном ПК, и даже на телевизоре. Web разработчика не интересует целевая аппаратная платформа, такой же прогресс чувствуется и в разработке настольных приложений. Есть .NET, есть Java, есть Python итд.
Например возьмем Android.
Я могу установить его и на ARM и на x86? Могу. Могу установить приложения? Да. Как обычный пользователь я чувствую разницу? Нет.
Самое забавное что разработчики этих приложений не заботились об аппаратном обеспечении, но все работает.
Набор команд и процессоры x86 существуют только благодаря «багажу» нативного программного обеспечения. Это будет продолжаться до тех пор пока не появиться аналог dalvik/art для Windows. Если это произойдет то ARM придет в desktop.
Tsimur_S
Все равно взаимосвязи больше не стало. Что бы делать подобные утверждения нужно, как минимум, постулировать неразрешимые недостатки x86. На сегодняшний день x86 превосходит по вычислительной мощности ARM но проигрывает в цене и энергопотребление(и то есть Atom). Вопрос о том кто из них представляет лучший баланс энергопотребления мощности до сих пор дискуссионный. Единственные кто двигают в сторону ARM это Apple, посмотрим что представляет их процессор вне проприетарных бенчмарков с попугаями.
Лично я считаю что рынок переделится и установится равновесие, но говорить о преимуществе ARM по всем фронтам еще очень рано да и не верю я в серебряную пулю. Цена изготовления аргумент слабый, себестоимость чипа составляет несколько процентов его рыночной стоимости. Как видно АМД очень сильно подвинулись по цене что бы откусить кусок рынка.
SamaRazor
Только появляется момент, где от приложения требуется что-то большее, чем десериализовывать ответы с сервера — в андроиде подключается JNI, в iOS интероп в objC, и ресурсоемкие задачи внезапно оказываются в нативном байткоде, а не байткоде JVM.
Alexey2005
MinAps
Я как раз об этом, о зоопарке. Получилось так что большинство разработчиков совсем не интересует целевая аппаратная платформа. Это приведет к окончательному уничтожению границ аппаратных особенностей. Соответственно вместе с этим исчезнет «у рядового разработчика» интерес ко всяким MMX/AVX/SSE_1-4 итп. Набор команд и процессоры x86 существуют только благодаря «багажу» нативного программного обеспечения. Это будет продолжаться до тех пор пока не появиться аналог dalvik/art для Windows. Если это произойдет то ARM придет в desktop.
В конце концов забота об аппаратной платформе уйдет к ядерщикам, не разработчикам системных служб и приложений, а именно к ядерщикам.
VolCh
Она интересует, но в виде "наш софт для современного железа — проапгрейдейтесь", "что значит не собирается на MaсOS на АРМ, целевая платформа — Wintel десятки"
amirosta
Почему вы говорите о будущем?
Это уже в прошлом веке так было.
Всякие MMX и прочее — интересовали только отдельных разработчиков, создающий особо требовательный код, для которого оптимизация MMX и пр. могла бы дать реальный бонус. Ну например, разработчиков кодеком мультимедийных. Или систем шифрования.
Большинству от этого MMX никак не холодно и не жарко. В их программах просто некуда применить эти вещи.
Или их можно применять через уже готовые оптмизированные под MMX и пр. библиотеки типа OpenCV
MKMatriX
Тут есть одно забавное «но». Есть много кейсов где новичок справится быстрее. Это противоречит здравому смыслу, но тем не менее встречается часто. Причина проста, новичок не заботится о безопасности/сопровождении/читаемости/расширяемости/редких_багах. Все это выливается в скорость. Узнал я это, посоревновавшись с младшим братом. Т.е. мы брали его институтское задание и реализовывали, он на плюсах со знаниями с лент, я на js, окончив институт и имея годы стажа. Он всегда заканчивал быстрее. Да с багами, да нечитаемо, да это настолько нельзя сопровождать, что фикс багов занял больше времени чем само задание, да это нельзя будет расширять, много хардкода, мало универсальности, но он справлялся быстрее.
Так что логика аш`еров и менеджеров вполне понятна, более быстрый разработчик, простив разработчика тратящего время на по большей части стилистические прихоти. А что безопасность, сопровождение, менеджерам с этим не работать, они вообще к тому времени будут другой отдел курировать. Вывод прост — скорость не показатель умений)
Конечно есть куча задачек, где опыт поможет работать быстрее. Где я за пять минут смоге сделать, то что джун мурыжил несколько дней. Однако если задачек много, и можно выбирать скучные ради скорости, такие вайтишники вполне могут похвастаться превосходством)
amirosta
Зачастую это оправдано:
Часто нужно «проверить гипотезу», сделать MVP, нет финансирования.
А основная разработка переносится на время, когда инвестор ввалит бабло.
Еще есть задачи, которые проще написать заново с нуля.
И такой работы много.
Поддержка тут не нужна.
Другое дело, что иногда решение о качестве кода могут приниматься осознанно.
А иногда решения о качестве кода принимаются только исходя из цены разработки, без учета цены обслуживания.
Впрочем, есть нюанс:
Когда проект уже функционирует и приносит деньги — стоимость его обслуживания не пугает.
Arris
Да и переписывать его не надо. Ведь он уже приносит деньги… зачем тратиться? Best practices? Я вас умоляю, не вешайте лапшу на уши, когда будут новые фичи?
amirosta
Это зависит от того — а как вы умеете объяснить бизнесу смысл «переписать все».
Есть в этом какой то смысл или нет.
От того, что вам там внутри кода неудобно — это не аргумент.
А вот то что старый код не дает возможность получить ту или иную фичу вообще или не дает возможности получить её в приемлимый срок за приемлимые деньги — вот это аргумент.
iit
Если вам внутри кода не удобно — это первый звоночек что нужно все переписать, не важно под каким предлогом вы продадите это бизнесу. Так как именно от этого удобства зависит напрямую мотивация.
Для менеджера — представьте что проект это офисное кресло, проект с костылями, магией это офисное кресло где оставили крестовину и газлифт и так как времени нет — пиастру и сиденье заменили на седушку от велосипеда.
Да оно выполняет свои функции, да на нем можно сидеть, но вот после постоянного его использования каждый день по 8 а иногда и по 14 часов в день в течении года у вас извиняюсь начнет "гореть" седалище.
amirosta
Да вообще-то нет.
Если проект малоприбыльный или краткий по времени эксплуатации — смысла переписывать нет никакого. Но это вопросы вовсе не технические, а вопросы бизнеса.
Если вы не можете отрефакторить в рабочем режиме, а вам обязательно нужно подавать рефакторинг как «полную переделку, переход на новую принципиально иную версию ПО», то это не технический вопрос, а экономический и его нужно обсуждать с бизнесом.
Плохая аналогия подобна котенку с дверцей в боку.
Давайте я так напишу: «Представьте что это кресло, от которого пришлось отпилить подлокотники, так как конструктивно не было возможности их снять». Функционально, но не красиво. Менять не обязательно.
Эти художественные аллегории без технической мотивации построены только на вашей харизме. А это ненадежно.
iit
С одной стороны вы определенно правы про техническию мотивацию — да правильно собрать все проблемы, перестроить архитектуру, вести стандарты оформления кода, тесты, спецификацию.
Вот только бизнесу это не нужно. Бизнесу нужна фича X желательно вчера.
На штатный рефакторинг времени бизнес не даст, а если и даст то не на постоянной основе а после опять кранчи с выпустить фичу вчера.
В итоге вы можете помимо и так авральной нагрузки еще и добровольно в не оплачиваемое время чисто из принципа рефакторить код после работы и спасибо вам за это не скажут, мало того еще и многие будут сопротивляться.
Либо запустить проект до уровня когда рефактиринг не поможет и останется только переписать проект с нуля.
В итоге остается либо попытаться объяснить бизнесу почему качество важно, какие проблемы у нас есть и как их решать и постоянного собирать метрики и еще каждый раз доказывать как и почему качество проекта приносит прибыль и лучше это сделать на ранних этапах проекта.
Либо понять что вам не по пути с этой компанией — если в мелочах вроде того как вам писать код вы не договорись то в случае кранча или любых других проблем все это вылезет в очень неприятные последствия как для компании так и для вас.
Если проект "малоприбыльный" — то нужно его либо превратить в прибыльный. Если проблема в качестве продукта — тогда рефакторинг и поможет. Если проблема в известности то поможет маркетинг а не +100500 новых фич. Если не достаточно фич — значит хромает реализация и стоит начать вторую версию. Либо возможно сама идея мертва не мучить труп и похоронить его.
Если проект "краткий по времени эксплуатации" то лучше сразу сделать его качественным по максимуму, так как нет ничего более постоянного, чем временное.
Если же проект MVP то не нужно после запуска продолжать его пилить как обычный проект а стоит сразу начать с нуля при первом получении прибыли а MVP сжечь как это и было изначально заложено в его природе.
amirosta
Вы неправильно трактуете степень технической глубины, на котором следует общаться с бизнесом.
Бизнес не интересует — кластер у вас там или какой язык программирования, что там за архитектура и пр… Это исключительно ваша внутренняя кухня.
Бизнес интересует — а как сделать так, чтобы система работала стабильно — ответ «нужна репликация, а для этого нужно два сервера основной и дублирующий и переписать код в течении месяца».
Причем обратите внимание, умное слова «репликация» тут прошло вскользь.
Важно что:
Всё. Это тот язык на котором нужно общаться с бизнесом.
А то, что у вас там внутри будет PostgreSQL или No-SQL и т.п. — это уже не забота бизнеса. Именно потому и нанимают вас как технического специалиста, что это знаете вы, а не они.
Я понимаю, почему у вас проблемы в беседе с бизнесом:
«нам нужно изменить архитектуру, потому что эта архитектура говно» — с точки зрения бизнеса это абракадабра.
Хорошо еще если у вас атортитет немерянный и вам доверяют.
А если вы, к примеру, фриленсер со стороны подобного уровня ответ может трактоваться как попытка набить цену на ненужных работах.
Я как-то по молодости использовал термин production в разговоре с директором предприятия.
Он сказал мне: «Мне этого не надо, у меня не завод, никакую продукцию я не произвожу.». Хотя я имел ввиду development environment (debug environment) VS production environment. И ему это точно было нужно.
И это мой косяк, а не его, что он не понял меня.
iit
Бизнес разный бывает, просто я уже давно работаю в сфере где сам it проект — и есть продукт, что в основном руководство вполне понимает технические термины а если не понимает то есть CTO / ProjectManager / ProductOwner который может популярно перевести все это в понятный формат даже для 6-и летнего ребенка.
Для других сфер работает только момент с доверием — либо доверяют и выдают что нужно, когда нужно в необходимых объемах, при этом пока все это укладываются в бюджет на it и все что требуется работает сами не лезут.
Либо не доверяют и постоянно пытаются все "оптимизировать", провести аудит, вести новую %random methodology% управления и/или сертификации. Приглашают различных инфоциган которые в лучшем случае проведут никому не нужную лекцию о "выходе из зона комфорта" а в худшем уже расписали план внедрения, ликвидации текущей it команды и перевода it сектора компании на аутсорс с vendor lock и после продавливания к ногтю директора и высасывания всех активов компании.
Кстати именно в таких компаниях где it не основной продукт и отделу доверяют — работа вообще сказка, особенно если правильно настроить коммуникацию и процессы. Сроки по сравнению с продуктовыми кажутся смешными, переработки — только в случае ЧП и и своих собственных кривых рук. Ограничений на творчество кроме тех что коллективно приняты в отделе — нет. Единственные минусы это более низкий оклад, отсутствие бенефитов которые не особо и нужны, сложность в наращивании бюджета что важно если бизнес вырос а команда it нет, и опасность разлениться и не развиваться. Если же активно работать над собой и кодом — то можно очень сильно прокачиваться и в технологиях и soft skills.
tommyangelo27
amirosta
Вы хотите сказать, что у чистых ИТ-компаний нет рисков разориться?
tommyangelo27
Нет, я не хочу это сказать.
Мысль в том, что в трудные времена компании сокращают расходы прежде всего в отделах, не связанных непосредственно с производством.
Т.е. если это завод по резке металла, то айти отдел закроют гораздо раньше, чем продадут станок для резки.
amirosta
Им не столько умные термины нужны, сколько расчеты (точнее грубые прикидки, ибо точно этого не рассчитать):
Если мы сделаем рефакторинг сегодня за Х денег, то это позволит нам сэкономить на серверах завтра Y денег.
Это и означает говорить на языке бизнеса.
lennar
Баг = нерешённая задача. Не пройденное код ревью = не решённая задача. В нормальной команде такие задачи, с багами и прочей ерундой, никак не смогут попасть на прод.
И в итоге, после 3-4 кодревью, джун делает задачу в 3-4 раза дольше, чем мидл разработчик, при этом отнимая время у сеньоров.
BugM
Пусть джуна ревьюят мидлы. В чем проблема?
Я вообще считаю что милды с сеньерами и тимлидами все ревьюить должны. Это нормально. Когда я пишу код в модуль процентов на 70 написанный вот тем мидлом я ему и кину свой код на ревью. Он лучше всех это место знает и быстрее разберется что я там накодил.
tommyangelo27
Я иногда даю джунам ревьювить код мидлов.
1. Чтобы учились делать ревью
2. Чтобы знакомились с используемыемыми подходами
3. Чтобы знания о кодовой базе были у нескольких людей
MKMatriX
Это если процессы вокруг новичка нормально выстроены. А если его взяли на сеньора, туда где еще не очень знают чего хотят, или не особо внятно тестируют. На оффсайд проектах я такое часто встречаю, код тестируют только на основную задачку, не проверяя все кнопки и сценарии. Вполне представляю себе такое в сбере: «Хм, нам ув.чел. сказал что нужно машинное обучение, я пока не знаю как на этом зарабатывать, но создаем отдел» и в итоге легаси этого отдела уходит в фундамент.
aPiks
За последние 9 месяцев я побывал на 12 собеседованиях на миддла в серьёзных компаниях и прошёл только 3 из них с 4мя годами опыта. Не думаю, что вчерашний сантехник решит хоть одну алгоритмическую задачу из тех, что у меня были на собеседованиях или расскажет про архитектуру энтерпрайз приложения.
bobby001
Могу, канеш, ошибаться, но дальше не читал…
bobby001
Как приятно)
Вот и минусы пошли… включаю микрофон — почему?
bobby001
Поддались на рекламуху, как я понимаю…
Одновременно и радуюсь и сочувстую
JerryJJ
Рискну предположить, что за прозвучавшую в комментарии предубежденность к компании (строго говоря, никак не связанной с основным содержимым поста, как видно из текста), суждение о которой вынесено по одному слову :)
bobby001
То, что старается — однозначно молодец) а как получается — ну Вы ж сорри..., этож обжекив.
В любом случае — желаю удачи и успеха
JerryJJ
Это точно мне ответ? :)
bobby001
Я разве где-то писал об предубеждённости к компании, на которую ссылаетесь Вы?
ValentinDom
Извините, но я не понимаю, почему под «курсами, готовящими вайтишников», подразумеваются именно одни единственные курсы, о которых написал автор. Простите, но такого треша я не встречал даже на тех платформах, к которым отношусь со скепсисом. Тут бы неплохо, конечно, попросить имена, пароли, явки, однако, полагаю, автор боялся, что пост удалят за упоминание конкретики.
В общем, не все курсы — такие, как описано. Есть те, которые предлагают разумный вход в айти в разумные сроки. Мы, например, учим основам 2.5 месяца, но никому не обещаем, что за это время получится стать даже джуниором-разработчиком на начальной позиции. Средний срок, о котором мы говорим — полгода-год после выпуска с курсов. Именно тогда человек может претендовать на джуна с ЗП 50-70к. (хотя сейчас есть и те, кто предлагает начинающим больше).
В общем, много ещё можно написать про разницу в подходах между «нормальными» курсами и описанным в посте. В конечном итоге, это какая-то «Бизнес-молодость» для «вайтишников». К сожалению, востребованность образования такого рода порождает такие вот кейсы… Надеюсь, что это не станет общераспространённой практикой.
DepthRel Автор
Беспокоился не столько за пост, сколько за людей на которых могут выйти. Я не за «охоту на ведьм», я за профессиональный отбор кандидатов. Расскажите о Вашем подходе в статье, чтобы развеять мифы. Но в данном случае всё таки речь идёт о подготовке липовых «квалифицированных инженеров» за 3 месяца.
ValentinDom
Хорошая мысль — подумаем про статью. :)
DmitryLTL
Могу говорить за США, недавно знакомая девочка за три месяца подобных курсов устроилась на $90K/год.
Большую часть времени учат проходить интервью. Пишут опыт, есть зарегистрированные компании которые нарисуют вам опыт, с вебсайтами, историей и т.п… На телефонных пулах сидят операторы которые подтверждают про вас. За доп плату за вас пройдут телефонное интервью. С развитием AI скоро и видео интервью верить нельзя будет.
За часть зарплаты будут вести вас на новом месте и помогать с задачами.
Распознать их тоже довольно просто, они как пиявки присасываются к тем кто их пнуть стесняется и едут за их счёт.
Про всё это слышу уже лет 20-ть.
Есть лайфхак как таких отсеять, можно на irs.gov запросить налоги за послелние несколько лет. IRS не соврёт, но там надо чтобы кандидат запрувил. Если годовой доход был сильно ниже чем запрашивается, то картина ясная.
Ну и моё любимое — дать код и попросить рассказать что с ним не так.
Тут с запоминанием формулировок на память не работает.
DepthRel Автор
Было. Решением проблемы было приплести нашу бытность, а именно, рассказать сказки о чудо корпорации за Уралом, работающей не официально. И эта «невидимость» позволяет уходить от налогов. Не владею цифрами о теневом IT бизнесе в России, но в компаниях охотно верят.
DmitryLTL
Попросите Алексея написать статью по итогам приключения.
Было бы очень интересно узнать мнение с обратной стороны.
Или возмите у него интервью, если он сам ленится.
Вопросы мы вам подкатим если что.
DepthRel Автор
Алексей, как человек дальновидный, сказал что подобное возможно через какое-то время, когда уже будет понятно что происходит и будет получен реальный результат. Собственно, ветку можно продолжать вопросами на будущее :)
Maksclub
первая работа таковой и была — полностью черная на мизерной зп
к слову мой путь в ИТ именно так и построился — сначала устроился программистом, потом им стал :) но так мало кто делает и сможет повторить
BugM
Так все делают. Обычно паралельно еще и в институте учатся.
Andrey_Rogovsky
Это уже давно все так.
Diamon33
Внезапно готов подтвердить.
Умудрился пожить с одним товарищем, который со своими друзьями открыл компанию под подготовке тестировщиков (Manual, при желании чуть Automation — как привет Портнову). Заучивают, как проходить собеседования, как составлять резюме, дает контакты тех, что может разрекламировать новобранца, в общем — как себя продать. Берут 10-15% от зарплаты на протяжении 12-18 месяцев.
Лично знаком с людьми (да и не сильно далеко от них живу), которые устроились таким образом. Но та «компания» работает только с гринкартщиками, с визовыми рабами здесь мало кто хочет иметь дело, особенно при Трампе и его наездах на H1B prevailing wage.
Бэкграунд чек — местами проблема, да, но компаний масса, многие смотрят только на то, как человек себя подает, и что у него в резюме. А шанс перепрыгнуть из ниши «никто за $15-18 в час» на $35-40-50 — очень ощутимый прогресс, и является мотивацией для многих, а если человек готов учиться и прогрессировать по работе — он там останется. Если нет — то при желании денег сможет тянуть лямку. А многим этого более, чем достаточно, т.к. они занимались тем же самым, но за меньшие деньги.
0xd34df00d
Ещё я свою декларацию буду каким-то непонятным анонимусам показывать. Спасибо, но нет. Про свой опыт я не вру, но если бы мне компания такое предложила, я бы сказал «мы вам перезвоним» и пошёл бы дальше.
Ну и да, у меня в этом году нет работы с февраля, так как я сижу дома и занимаюсь своими личными проектами. Соответственно, доход за этот год минимум в два раза меньше моего обычного (а учитывая, что у большинства людей в контрактах нет severance за полгода, доход мог бы быть ещё меньше). Какой вывод вы сделаете?
DmitryLTL
Смотрят обычно за последние три года, так что вопрос был бы — ребёнок родился?
Никто не будет подобным заниматься для претендента на высокую позицию.
Мидлов и джунов проверять вполне норма. Если они не готовы быть проверяемыми, то вполне ок. Кроме irs есть куча частных фирм которые тоже самое без аппровалов выкатят за небольшие деньги.
sergey-gornostaev
Как считаете, ваш друг Алексей сможет три месяца выполнять работу старшего инженера? Если нет, то можете не беспокоиться за свою карточку, лежащую на верхней полке антресоли в книге с двойным дном, так как Алексей не переживёт испытательный срок и так никогда и не получит доступов ни к чему серьёзному.
VolCh
Доступ он может получить в первый же день.
sergey-gornostaev
Не, не дают. Доступ к внутреннему контуру так вообще не у всех есть, даже через годы работы.
VolCh
От конкретных компаний зависит.
sergey-gornostaev
Я про упомянутый в статье Сбер. Уверен, что и в других банках безопасность не мягче.
bogolt
Интересно, а если бы каждый был автоматом подключен к системе вроде flattr, ежемесячно выделяется сумма денег на дотаны, а затем уже по вашим «лайкам» она распределяется между разными проектами полезными лично вам. Тут по идее решается и проблема «забывания» оплаты, и проблема муторности переводов денег каждому полезному вам проекту и собственно проблема распухания трат от того что таких проектов может быть десятки.
ftdgoodluck
Ну смотрите, если посмотреть на результаты — получается, люди действительно устраиваются в компании и работают там. И если их не выгоняют оттуда через неделю — значит система работает?
DarkGenius
Что мешает компаниям построить грамотный процесс отбора? В некоторых компаниях собеседование разделено на 5-6 секций, которые проводят разные люди, и нужно понравиться каждому из них, чтобы получить офер. Здесь уже не получится зазубрить термины и пройти, понадобится и об архитектуре порассуждать и покодить в реальном времени.
amirosta
Незачем.
Статья о том, что, оказывается, действительно некоторые фирмы берут после курсов.
И это не ошибка фирмы.
Рабочие процессы в таких фирмах так построены, что фирмы устраивает наличие в штате специалистов такой квалификации.
То, что вы упомянули — это просто длительная бюрократическая процедура.
Обусловленная тем, что никто в крупной фирме не хочет брать ответственность на себя.
1) По факту достаточно первичного отбора, выполненного HR по формальным признакам (да, тем самым, где могут спутать Java и JavaScript)
2) Разговора с тех. спецом.
3) Разговора с будущим руководителем.
Это даже в самом строгом случае.
Уверяю вас, если вы не специалист, а вас собеседует коллега более высокой квалификации — то и получаса хватит понять, что вы говорите о тех вещах, в которых ничего не смыслите.
Maksclub
Вам очень не приятно, что приходят вчерашние менеджеры и продавцы, которые 15 лет назад поступили на специальности обычных ВУЗов и ВТУЗов, не догадываясь, как расцветет НЕ ИХ сфера и не их специальность? И считаете это не честным? :)
Вы поймите, это не ваш пирог — мы, люди без ИТ-образования, вам, ИТ-выпускникам с корками, ничем не обязаны и вам лично ничего не должны.
Я могу уподобиться вам и назвать вас идиотами, раз с 5-летним багажом вы не можете удержать меня, вчерашнего продавца сноубордических комбинезонов, и соревноваться с достаточной форой.
Но мой опыт продаж этих комбинезонов и просто опыт топтания этой планеты подсказывает мне, что не стоит идти против сути человека стремитьс к простоте заработка, к вкусному и интересному занятию, которое получается у людей (а то что получается у человека — начинает ему нравиться, такова психология) и сражаться как Дон Кихот: вы не управляете взаимоотношениями, потребностями и ценами этого рынка.
Нас уже ряды: кто-то мидл, кто-то сеньор… нужна корка и справка? Пффф, легко, поступим и предоставим — решили напугать ежа голой жопой…
UPD:: всякие онлайн-курсы и правда говнище редкостное…
DepthRel Автор
Между строк читаете. Статья не о том что нужно иметь корочку, а о том что приходят люди с нарисованным опытом, и протискиваются на ответственные позиции без понимания что это вообще такое.
billyevans
Смотря какие именно вы имеете ввиду. Я проходил отличные курсы с курсеры про алгоритмы, криптографию, компиляторы, теорию игр, машинной обучение и еще что-то. Там все преподы и курсы из лучших мест вроде Стенфорда или Принстона. ML ведет en.wikipedia.org/wiki/Andrew_Ng
А один из курсов про алгоритмы ведет Robert Sedgewick www.coursera.org/learn/algorithms-part1#about
Один курс по алгоритмам мне принес пользы больше, чем 5.5 лет в ВУЗе техническом с кучей устаревших предметов.
Arris
Речь, скорее всего, идет про наши рассейские онлайн-курсы, особенно про вылезшие в период пандемии.
Вам не приходила реклама: "Мы расскажем вам как учить людей по интернету и зарабатывать 100к в месяц не напрягаясь"?
Zenitchik
Да. Неприятно.
Зато когда инженеры — приятно. Они свои.
bobby001
Вот как не плюсануть)
От себя добавлю — даже если простой сапожник к сапогам относится с душой, то к нему будет стоять очередь
Femistoklov
Ну не знаю. Мне работа разработчиком не нравится. Работаю
.По-вашему, мне не место в профессии? Вы могли бы по этой причине не захотеть со мной работать?
amirosta
Очень часто придумывают названия должностей — просто чтобы платить не деньгами, а тщеславием.
Arris
Проблема в том, что потом пафосное название должности въедается в подкорку (и трудовую книжку) и вот уже "сеньор" сменивший 6 работ по нарастающей (знаете же — "уволить в запас с повышением"), претендует на СТО. Или на тимлида. Или на какую-нибудь руководящую должность, на которой он разворачивается на полную.
amirosta
Вы хотите сказать, что достаточно только пожелать сильно (а твое желание подстегивается трудовой с крутыми названиями) — и тебе автоматом дадут должность?
Arris
Ну, конечно придется щёчки понадувать, языком поболтать… но и такое я тоже видел.
Хуже того, я под таким человеком даже поработал немного.
Пафосу, гонору, "ты будешь делать так, как я сказал или я тебе скажу, как надо делать", а сам, пребывая в должности СТО и тимлида разработки, два дня разворачивал vagrant и экосистему для PHP 7.1. Не развернул, пошел ставить это на реальное железо, за два дня справился, ага.
amirosta
И что с того?
Директор завода не должен лично уметь работать на токарном станке.
Arris
Еще как должен. Иначе это не директор, а г… но.
Да, от него никто не требует, чтобы он вытачивал детали настолько же профессионально, как токарь высшего разряда. Но знать, что это такое, он обязан. И как это работает. И зачем это нужно.
Ааакей, объясняю подробно: я повысил зависимость в проекте с 7.0 до 7.1
Он заявил, что обязан проверить, не сломал ли я зависимости (в проекте из 1 контроллера, фреймворка и 3 файлов). Пошёл проверять. 4 дня проверял. Да, попутно он еще собеседовал по телефону людей ("чем отличается git commit от git push"), читал хабр, общался в слаке, пил кофе с печеньками и глубокомысленно передвигал окошки по монитору. Зарплата у него была в 4 раза больше, чем у меня на тестовом.
Эффективно себя продал чувачок бизнесу.
amirosta
Да вы че.
А если это какое-то наукоемкое производство? Директор должен лично всё уметь? Все сложнейшие этапы?
Знать что это такое и для чего нужно, то есть понимать смысл токарного станка в цепочке производства — да, должен.
Но вот уметь лично на нем работать — нет.
Директор даже может не знать как его включить. Это нормально.
Знать для чего это нужно и уметь это лично делать — это разные вещи.
Arris
Завязывайте с демагогией.
По сути есть что сказать/возразить?
У нас не завод и не директор. У нас стартап и СТО. От директора (владельца бизнеса) никто, действительно, не требовал умения ставить экосистему (хотя, я думаю, он бы справился быстрее). Он для этого программистов нанял и СТО.
А вот если начальник цеха токарного не умеет на токарном станке работать — это звоночек директору. А он не умеет. Зато умеет щёчки надувать.
amirosta
В ИТ такое огромное количество технологий нынче, что вполне нормально знать только часть их сколько-нибудь досканально, какая бы крутая у тебя должность при этом не была.
Для такой должности как CTO достаточно знать принципы — зачем эта штука нужна, что можно от неё ожидать, чтобы знать чего можно потребовать от сотрудников в части эксплуатации этой штуки.
Знать все технологии положено только тому, кто с ними лично работает. Что и логично.
amirosta
Ну если это так просто — то почему бы вам не надуть щеки и не увеличить свою зарплату, пусть не в 4 как была тогда разница, а хотя бы в 3 раза?
Вы преуменьшаете значимость умения общения с бизнесом.
Типичное заблуждение, когда нам кажется, что начальник должен разбираться в нашей сфере лучше чем мы.
Это наше подсознательное инфантильное желание из детства — чтобы за нас кто-то отвечал, чтобы можно было свалить с себя ответственность на другого.
Для начинающего джуна, да, это крайне желательно. Ибо джун без пригляда старшего товарища такого может наворотить… К сожалению не все фирмы ставят в пару к джуну старшего опытного разработчика, это нужно.
Но после того, как вы уже достигли какого-нибудь профессионального уровня, что можете работать самостоятельно, а без постоянной слежки за вами со стороны опытного разработчика — то все меняется.
Понимаете, вас нанимают именно потому что именно вы обладаете техническими знаниями и навыками.
Именно за ваши технические знания/навыки вам и платят денежку.
Кстати очень может оказаться что совсем не здорово, что вами руководит человек что в недавнем прошлом разработчик. Он прекрасно понимает где плохо вы работаете, видит где вы ленитесь. Не укрыться, не отмазаться. Это в психологическом плане ад.
Как раз лучше, если руководитель обладает софт-скиллами, умеет сглаживать углы, закрывает вас перед руководством вышестоящими, правильно мотивирует сотрудников.
Например, одно из дел CTO, чтобы над вами не стояли разъяренные нетехнари (директор и пр.) «когда у вас сервер упал», чтобы они не мешали вам работать, его поднимать. Но это не значит, что он должен лично его поднимать.
А с учетом того, что это CTO — ему нужно кроме этого иметь представления о технологических цепочках у подчиненных. И только.
P.S.:
В некоторых фирмах CTO сам может являться непосредственным разработчиком.
К слову сказать таковыми могут являться даже и директора: Ларри Эллисон (Oracle), Павел Дуров (vkontakte), Билл Гейтс (Microsoft), Джон Кармак (id Software). Но первые 3 очень быстро отошли от разработки, а последний отдал общее руководство специализирующемуся менеджеру.
Ибо быть хорошим специалистом и в менеджменте и в технических вещах отлично разбираться — можно только в мелких фирмах/в простейших технических проблемах.
ИТ слишком разнообразно, слишком сложно.
Невозможно знать всё.
delhi_heir
amirosta и Arris — вы оба путаете гендира с техдиром!
Всё это должен знать и уметь техдир, а гендир может быть просто финансистом или продажником.
Arris
Да-да, я уже заметил. Меня сбили с панталыку.
Разумеется, гендиру/владельцу бизнеса не обязательно уметь работать на токарном станке (хотя плох тот генерал, что не умеет разбирать калаш).
А вот начальнику токарного цеха уметь работать на токарном станке обязательно. И техдиру хотя бы надо уметь его запускать и знать ТБ :)
Демагогия она такая — легко отвлекат от сути.
amirosta
Вернёмся к ИТ.
Возьмем веб — есть сильно разные по инструментам специализации фронтенд и бэкенд.
Невозможно знать все инструменты, если ты с ними не работаешь регулярно лично.
Это конечно здорово, если CTO и бэкендер и фронтендер одновременно. Причем хороший спец в обоих направлениях.
Но в нашем обычном, а не идеальном мире — сие не всегда возможно.
Это нормально так как нынешнее ИТ — это о глубокой и узкой специализации.
amirosta
А что, должен был предложить бизнесу купить его рабочее время как можно дешевле, а не как можно дороже?
Мне одному кажется, что это у вас просто зависть?
Arris
Я, может, тоже хотел за зарплату в 4 раза больше не над кодом горбатиться по 12 часов в сутки, а сидеть, провода под столом пинать, хабр почитывать и печеньки жрать. И вопросы задавать про гит по телефону.
И я бы понял, если бы этот деятель действительно оправдывал свою зарплату. Но нет, судя по тому, что я видел, он её не оправдывал. Зато сумер надуть щёчки и продать себя задорого.
Вернитесь к тому что началось, ну: https://habr.com/ru/post/528678/#comment_22325832
amirosta
Разумеется.
С точки зрения бизнеса это человек был полезнее вас в 4 раза, и не вы его. Иначе бы на его месте были бы вы.
Как там на самом деле — это не важно.
Важно то, какая в реальности была зарплата у вас и у того человека.
Мир не совершенен и нет абсолютно правильных решений.
Смиритесь с этим.
Arris
Все гораздо проще. Он продал себя бизнесу раньше, чем я. Тут сработало "кто первый встал — того и тапки".
И вернитесь уже к началу: у человека в трудовой по нарастающей 4 места работы в позиции "заместитель тимлида в мухосранске", там 3 месяца, сям 2 месяца, где-то аж 6 месяцев.
О чем я и говорил: "можно, имея пафосные записи в трудовой и минимум знаний, надув щёчки, получить дорогую должность"
amirosta
Рассуждать что «я более квалифицированный, но зарабатываю в 4 раза меньше» можно сколько угодно.
Однако в конечном итоге всё зависит не от того, что вы думаете о себе, а то, что думает о вас бизнес (и ваша задача — убедить бизнес оценивать вас дороже).
Если вы действительно более квалифицированный, то легко находите себе работу на зарплату хотя бы в 2 раза больше.
Arris
Я же написал: "работал".
Но, к сожалению, чтобы получать 600 тыс рублей на руки, мне не хватает квалификации.
Теперь вы сами можете посчитать, сколько получал на руки этот деятель.
A114n
Ваш текст внутренне противоречив.
В этом абзаце вы утверждаете, что важно то, что думает бизнес, и ваша зарплата («оценка») связана с тем, как хорошо вы умеете убеждать бизнес.
А в этом абзаце вы вдруг начинаете утверждать, что зарплата связана с квалификацией.
Мы знаем, что эти параметры даже не связаны.
Они могут случайно совпасть, а могут и нет.
Так «в конечном счёте» зарплата-то в 2 раза больше зависит от того, вы «более квалифицированный» или от того, сумеете ли вы «убедить бизнес»? Вы уж разберитесь.
amirosta
Для любого наемного специалиста скиллы по общению с руководством — являются частью его профессиональной квалификации, наряду с технической квалификацией.
amirosta
То есть он все же не 4 дня vagrant ставил?
А занимался совсем другой работой, причем именно своей работой?
Arris
come on, задачка на 15 минут.
А не "подошел, полчаса посидел, почитал гугл, покликал кнопками… подумал, отошёл, попил кофе, посидел в гугле, покликал мышкой, поговорил по телефону, попил кофе".
amirosta
Для человека который занимается этим регулярно — да, конечно.
Arris
Я этим никогда не занимался. Я тупо следовал инструкции и читал надписи на экране.
У меня это заняло ~25 минут. Что я делаю не так?
amirosta
Ну вот видите. Оказалось, что все же не 15 минут, а почти в 2 раза больше?
Вам то деваться некуда — это ваша часть работу. Её нужно сделать обязательно.
Человек, у которого основная работа совсем иная, может ковырнуть-ковырнуть, потом решить, что тратить такое количество времени не рационально.
Arris
Это вообще не входило в мои обязанности.
Мне стало интересно — чего там такого сложного, что надо 2 дня возиться? Я взял вечером, после работы и сделал. Ну, примерно за полчаса. Еще чаю попил в процессе, музыку послушал.
amirosta
Это входит в специализацию любого разработчика. Разбираться в этом нормально. Это не выдающееся достижение для разработчика.
Но не входит в специализацию любого руководителя. Разбираться в этом хорошо, но не необходимо.
В специализацию руководителя ИТ-шников входит по сути, работать переводчиком между бизнесом и технарями.
По вашему примеру мы видим, что это действительно бывает необходимо. Вот вы не понимаете откуда там деньги. А он понимал.
Ваша ситуация — ну это как бы токарь похвастался, что знает правильный угол заточки резцов, а его тупой, но много зарабатывающий начальник понятия об этом не имеет.
Но у начальника зарплата всё же в 4 раза больше. Так что он вовсе не тупой. Но не тупой в других вещах.
Начальник не туп в софт-скилла так называемых. А в технических скиллах не тупы вы. И это нормально.
В результате начальник благодаря своим софт-скиллам смог правильно со своей выгодой общаться с руководством, а вы не смогли, так как ваши скиллы преимущественно технические.
Я и говорю — ваш начальник по сути переводчик между бизнесом и технарём.
VolCh
А вы уверены, что вы сделали именно то, что он пытался сделать? Я вот забил на Вагрант после того как не смог сделать динамическую привязку домена к динамическому же локальному IP виртуальной машины
VolCh
Ну вот я пришёл тимлидом, решил для начала перевести локальную разработку на PHP под Вагрант, о котором слышал много хорошего. Три дня проколупался, но не смог достичь запланированных удобств. Плюнул и стал на хорошо знакомый Докер переводить
Arris
Там даже до запуска голого проекта дело не дошло, какие там удобства… хотя делалось все "по инструкции".
v_sapronov
По-моему, все в порядке.
Есть мнение, что не надо «выжигать себе глаза», чтобы программировать на там уровне, на котором сейчас пишется большинство продуктов. Рынок проверяет эту идею и тестирует границы, в том числе, набирая вайтишников и бросая их на реальные проекты.
Если окажется, что это не работает, то компании вовремя повернут и заменят их и «настоящими» разрабами и мы вернемся к старым добрым временам. Ну или обанкротятся — не вижу смысла их принудительно спасать от этого. Нет причин для беспокойств.
Если окажется, что такая тактика работает, то и отлично — компании оптимизировали затраты на з.п. сотруднику со сверхквалификацией которая (как окажется) не нужна для выполнения требуемой работы. Сотрудники, в свою очередь, оптимизировали свои затраты времени и сил на обучение необходимое для получения работы. Везде сплошная оптимизация. В итоге потребитель получит продукт дешевле. Бизнес, производство материальных благ, ничего личного.
Хотите изучать теорию категорий и писать на Coq — нет проблем, но это точно не то, за что вам платят.
В целом весь этот вой против вайтишников считаю попыткой засидевшихся и подзаржавевших (не в смысле Rust, а в другом — в плохом) сторожил защитить свой статус-кво. Боятся, что их смоет волной дешевых, молодых, амбициозных, не нюхавших матфизики кодирующих макак. Если это окажется возможным — что же, такова жизнь. Мы же не хотим нарушать работу рынка. Если это невозможно — то волноваться нечего — ничто старожилам не угрожает, их цена даже подрастет на фоне неумелых конкурентов. Тот факт, что старожилы крепко волнуются говорит мне о том, что они и сами знают о том, что чтобы писать круды, не нужно «сидеть днями и ночами».
Дискламер: 16 лет опыта разрабом, кодирую и сейчас, имею топовое российское образование по computer science.
numitus2
Хороший комментарий. Видимо пора и миллинеалам не вписаться в рынок
ardraeiss
С торчащей в интернеты камерой, ибо ачЁтакогото, дёшево же, быстро, конкурентно, инновационно. Но да, это вопросы не к качеству разработчиков, а ко всей бизнесмодели.
v_sapronov
Это же рыночек: будет спрос на софт без торчащей в интернеты камеры — появится и предложение, чтобы появилось предложение, нужно чтобы кто-то этот софт написал и позовут настоящих профессионалов… Опять же система самобалансируется исходя из спроса.
Ну или шторку механическую на камеру…
ardraeiss
Не без того. Только это всё же не "удобство пользователю", а "быстрее навариться на первых юзерах".
transcengopher
… но ваши голые фотки уже будут размазаны по всему Интернету. Тлен.
v_sapronov
Есть еще вариант: компания чей софт торчит камерой в интернеты может получить иски и выплатить по ним деньги и понять, что что-то пошло не так в разработке. Ну или даже просто репутационные потери. У нас тут Zoom преследуют за обман с шифрованием…
Ru6aKa
Я как бы тоже люблю побрюзжать на молодежь вайти, но по другой причине — устаю повторять одно и тоже по много раз. Даже когда рассказываешь как правильно решить задачу — то у них просто оперативы не хватает запомнить решение. И я уже сдался и просто молчу, и рано или поздно все старички сдадутся.
v_sapronov
Повышайте з.п. по причине «у вас много зеленых разрабов, их надо учить, это дополнительная серьезная нагрузка», ну или уходите туда, где никого учить не надо. Опять же — рыночек… Если есть спрос на учителей, то будете учителем.
v_sapronov
Недостаток памяти — вообще самый простой недостаток для устранения. Диктуйте на диктофон, или людям этим скажите: «видите, вы не схватываете все сразу, пожалуйста, пишите на диктофон, чтобы я не повторял одно и то же». Все — проблема решена — пусть на ночь слушают вас…
Simplevolk
Или описывать задачу в Jira\вики
WandererTM
К сожалению, это больше не работает. Есть в сети такой короткий рассказ — «Копроэкономика» (почитайте. Ну, или, освежите в памяти).
По большому счёту, никто в бизнесе (начиная с грандов, а на них и помельче ориентируются) не заинтересован в выпуске на рынок качественного продукта. «Х… к, х… к — и в продакшн» (с)
Тут даже не знаю, что сказать. Если «старожил» за все эти годы научился максимум что «круды» писать — то туда ему и дорога (в смысле, «на свалку истории»).
У меня жизнь сложилась так, что пришлось поучаствовать в реализации проектов абсолютно разной тематики — был и свой мультивалютный опердень банка (середина 90-х), и серьёзная информационная система предприятия, и интересная с технической точки зрения «шабашка» (начало 2000-х, торговая система одной фирмы — 4 магазина с реляционной базой, реплицируемой практически в онлайне по модемным(!) каналам. да, репликация «мастер-мастер» 4х4, пользуясь случаем, передаю привет СОВРЕМЕННОЙ репликации PostgreSQL) и самый серьёзный проект — одна из подсистем на ЖД, непосредственно завязанная на управление движением. Кстати, недавно с удивлением узнал, что она до сих пор работает. На минутку: мы перестали её сопровождать в середине 2000-х годов. Обслуживающий персонал только выходящее из строя железо меняет и заливает нашу прошивку. А там «практически» жёсткий рантайм — оцените уровень надёжности.
А по поводу темы топика — у меня сейчас сын в универ поступил. Честно говоря, я ожидал худшего. Конечно, с нашим уровнем образования не сравнится, но некоторые ПРОФИЛЬНЫЕ предметы преподаются — моё почтение. Я «мониторю» его задания и как с него спрашивают. Сравнивать его знание, например, С++ с выпускником подобных курсов — это как сравнить кремниевое ружьё с АК-47.
Алаверды: овер 30 лет разработки (IBM 360, PDP 11/40-70, IBM RISC, теперь x86), одно из лучших образований в СССР и постоянное самообразование все эти годы. И да, до сих пор «играющий тренер».
v_sapronov
Я с этим не согласен. Есть большой рынок качественных товаров. Все что угодно можно купить качественное и долговечное. Просто копропотребители всегда выбирают цену и получают соотвествующее качество — это проблемы исключительно копропотребителей.
Даже если ваш посыл про копроэкономику верен, то не понятно, что предлагается — спасти весь мир и всю экономическую систему высококачественными крудами и формочками с идеальными рамочками написанными на монадах?
Огромное количество активностей в программировании сейчас невероятно простые и требуют только внимательности у усидчивости. Не вижу смысле на такие активности нанимать людей с PhD…
WandererTM
А я с этим не согласен. КОЕ-ЧТО ещё можно купить качественное, но в основном — всё одноразовое. Бытовая техника, авто, электроника и т.д.
И, главное, цена ДАЛЕКО не всегда коррелирует с качеством.
И, кстати, не приведёте пример качественных и «долговечных» программных продуктов? На рынке (в отрасли), где была бы конкуренция и потребитель мог бы выбрать между несколькими поставщиками, заплатил бы побольше и остался доволен?
А при чём здесь «высококачественные круды и формочки с идеальными рамочками на монадах»? Напомню, что было написано в сообщении, которое я комментировал:
По вашему мнению, БОЛЬШИНСТВО продуктов — это круды и формочки?
И ещё из исходного сообщения:
Вот как раз формочки и простейшие круды «кодирующие макаки» как раз писать могут. Проблема в том, что, как я говорил, современные системы — это не только эти простейшие операции. А вот тенденция ВСЕ компоненты систем реализовывать руками и «мозгами» «кодирущих макак» как-то настораживает.
Я в беседах с молодыми разработчиками часто привожу один пример: работал в 80-90-х на системах СМ-4 (RAM 256Kb), потом на СМ-1420 (RAM 2Mb), операционка RSX-11M. Максимальный размер программы — 64Кб.
Чисто информационная система (но достаточно критичная, городская справка), СУБД Adabas-M (да, вся СУБД меньше 64Кб), ужасная дисковая подсистема (пакеты на 20 Мб), пользователей (терминалов) чуть больше 20(!), из них очень активных (операторов) 16-18. В ЧНН (час наибольшей нагрузки) у оператора на то, чтобы принять звонок, выслушать абонента, понять, что ему нужно, набрать запрос, получить ответ, огласить его абоненту и нажать кнопку отбоя звонка уходило 22 секунды. Сам поиск информации в БД занимал меньше секунды (в редких случаях — меньше 2-х).
Когда во второй половине 90-х возникла потребность заменить данную систему, новая реализация была сделана на QNX4, в качестве СУБД — Watcom SQL. Скорость работы по сравнению с современниками на Linux, Windows, DOS впечатляла. Но вот пользователи жаловались, что скорость работы (т.е., поиска в БД) была существенно меньше, чем на СМ-ке.
При этом, работало это то ли на 386-х, то ли на 486- компах. Сравнивать их вычислительную мощность с СМ-кой даже смешно.
Так вот, моё глубокое убеждение, что разница в бОльшей степени обусловлена тем, что тот код (и ОС, и СУБД, и самой прикладной системы) писали совсем не макаки (скорее всего, ещё и на ассемблере). Плюс, не было такого нагромождения новомодных стеков и фреймворков.
А сейчас у меня ноут, с которого пишу, имеет памяти в 8192 раза больше (во сколько раз i7 превосходит ЦПУ СМ-ки — даже думать не хочется). Стало всё работать ли лучше/быстрее хотя бы раза в 2 — НЕТ.
Плюс, повсеместная тенденция, что код д.б. В ПЕРВУЮ ОЧЕРЕДЬ, читаемым (sic!). Помню, в начале 2000-х (вроде) решил познакомиться с Java, по старой привычке после беглого просмотра синтаксиса языка, стал смотреть исходники библиотек. Помню, смотрел реализацию какой-то коллекции. Так там для того, чтобы «красиво обойти» её, вводились фиктивный первый элемент (перед головой) и последний (после хвоста). Т.е., создание двух элементов (выделение памяти, инициализация и т.п.) — и всё ради того, чтобы написать просто цикл for, без проверки условий перед циклом. Нашёл ещё какой-то подобный прикол — и закрыл для себя Java (на достаточно длительное время).
Просто мы тогда как раз писали систему, где если информация не доставлена за заданное время — то это считалось отказом. Поэтому было странно такое видеть.
А такой вот подход (читаемость в ущёрб скорости) — это, к сожалению, мэйнстрим сейчас.
v_sapronov
Попробуйте Miele. И, может быть, Mercedes — но только не копромодели, а что-нибудь в районе E klasse и выше.
Я не предлагаю выбирать дорогое, я говорю, что если хотите качественное, то должны платить больше…
Да большинство программных продуктов которые приносят прибыль — это круды и формочки.
Ключевое слово «большинство» — это не означает, что «все», это означает существенно выше 51%.
Код должен быть понятный, даже если он хуже по производительности, потому что производство кода — это бизнесс. Вкладывать деньги в больше быстрого железа выгоднее и более предсказуемо, чем тратить их на поддержку непонятного, но очень быстрого кода.
Закрыли для себя Java — поздравляю! На нем писан не один движок сверхбыстрой алгоритмической торговли на биржах (угадайте откуда я это знаю?). Бизнесс доверяет большие бабки джаве и ее производительности…
Ну и так далее — динозавры пытаются сохранить свой статус кво непосредственно перед вымиранием. Ничего личного, но вы отрицаете, что система как она есть (на Java, Kotlin, С#, F#) как-то работает и ниша применения оооочень быстрых языков сокращается постоянно вместе и с потребностью в специалистах соответствующего класса. Ну и как-то работает система — пишу вам с телефона, сейчас бы вспомнить в какой заднице находится Nokia c ее С++ и Qt…
titsi
А что с авто не так? Сейчас при выборе авто самое главное это компромисс между «цена 1 км пути» и «безопасность». хотя для кого-то будут и др потребности «экологичность» если живешь в европе, или «частота поломок» если живешь в дали от сто или ритм жизни требует «чтобы не ломалось».
Взять тот же ford focus (у кого-то получилось что 1 км пути 3,3руб — это же дешево, навряд ли можно найти машину у которой 1 км пути будет дешевле и остальные параметры будут +- такими же) Тыц
Arris
Есть у меня один знакомый… в феврале пошёл на какие-то курсы учить питон и ML. До этого программирование в руки не брал (не считая фортрана в ВУЗе).
… В начале лета их закончил. Всё лето искал работу, в сентябре нашёл. В какой-то стартап с машинлёрнингом и вот этим всем. Сначала жаловался на "синдром самозванца", а потом, похоже, привык.
… вчера человек начал доказывать, что полнотекстовый поиск по текстовой базе на 3 гига делать надо исключительно регулярками, сфинкс не нужен, эластик не нужен, а если я не делаю это регулярками, значит я… как бы помягче выразиться…
И еще с апломбом таким…
amirosta
В некоторых специфических случаях так и надо.
Например, на Хабре была статья — некая фирма именно так организовала поиск по логам в дополнение к фильтрации по полям структуированного лога. Продает как сервис анализ логов.
Имхо, можно довольно гибко находить нужное, если логи недостаточно структуированы для какого-то случая.
Но, полагаю, ваш знакомый полагал сие решение не для какого-то узкого-специального случая, а для всех подряд. Это конечно перебор.
Arris
Была бы задача искать по логам — я бы взял какой-то из имеющихся инструментов (благо, есть) либо действительно искал регулярками. Иногда ищу, что уж там отрицать :)
Нет, у меня новостной сайт, 3 гига — база текстов статей. По этому всему нужно искать что попало, быстро, со словоформами и морфологией. Полнотекстовый индекс MySQL недостаточно быстр/удобен/итд.
Я использую мантикору (manticoresearch.com). Сфинкс устарел и не поддерживает много интересных штук. Мантикора выбрана по совокупности требований/возможностей. К тому же это развивающийся продукт, на гитхабе прислушиваются к пожеланиям пользователей.
Разумеется :)
"Не умеешь пользоваться регулярками — нехер умничать, что какой-то сфинкс используешь"
v_sapronov
Правильный ответ как делать поиск: «смотря чего у вас больше CPU или RAM?»
Стандартный трейдоф перформанс на память…
amirosta
В случае sphinx — или диск.
Arris
Всего хватает, а вот дисковая подсистема неторопливая. Поэтому мантикора и RT-индексы.
Alexrook
Сбербанк? МТС Банк? На должность мидлов и сениоров берут нулевых людей? Я правильно понял? Не верю! Сейчас даже в какую-то говноконтору по конвеерному клепанию сайтов трудно попасть на должность стажера! Проходил тут один тест на стажера. Да, многие ответы можно просто выдать, запустив код и посмотрев на результат, хотя я и без запуска кода знал ответы на большинство вопросов. Есть даже какие-то совсем стандартные вопросы. Но так же есть много вопросов, где надо пояснить почему код ведет себя именно так, а не иначе и как сделать лучше. А тут уж надо обладать серьезными знаниями по языку или фреймворку. Такие ответы по конкретному куску кода в гугле не лежат на блюдечке. В общем, что-то слабо верится, что в крупных компаниях, оказывается, устроиться проще, чем в какую-то шарагу.
northmule
Согласен что сомнительно. Везде просят решить минимальное тестовое задание, а потом проводят код ревью
DepthRel Автор
Многолетнее нытьё о коде с листочка, лайф-кодинга и тестовых заданий сделали своё дело. Технической части на подобных собеседованиях практически не касаются.
sergey-gornostaev
Мне не везёт, наверное, на одно собеседование в формате разговоров о прошлых проектах и гипотетических, но реалистичных задачах, приходится четыре собеседования в формате балансирования красно-чёрного дерева на маркерной доске и допроса с пристрастием.
DepthRel Автор
Вы рассуждаете также как и я пол года назад. Как оказалось, это действительно правда.
Hivemaster
На самом деле эта статья — это хитро замаскированная реклама. Если отбросить из неё все эмоции, то остаётся заявление о факте того, что за короткое время полностью нулёвого человека любого пола и возраста подготавливают для реального трудоустройства в банк мидлом на зарплату в более, чем 150k. И статья эта уже завирусилась.
northmule
Открываем первую страницу одной популярной поисковой системы и в самом большом квадрате с рекламой видим — «Зарабатывай 170 т.р рублей уже через 4-е месяца после обучения на позицию Java разработчика»
Вижу это объявление и думаю, что за 5-ь лет практики в разработке я просто не тем занимался, надо было идти на курсы.
Получается все эти рекламы про курсы «вайти» — это как своеобразное «Азино три топора» — только вторых запретили рекламировать в публичных местах
amirosta
Буквально 3 дня назад видел сумму 400 000 там.
northmule
Таргетированая реклама «посчитала» что бы привлечь ваше внимание — 170 не достаточно
frowning
Не стоит забывать, что таких программистов гонят ссанными тряпками уже после первого ревью :)
К сожалению, за 1-1.5 часа собеседования нельзя на 100% убедиться заучил человек всё и сможет ли он сделать что-то больше, чем решение маленьких тестовых задач. А браться за большое тестовое задание готова лишь малая часть кандидатов.
К счастью, уже на испытательном сроке становится видно какие у человека навыки и является ли он самозванцем. На моей памяти лишь в нескольких компаниях собеседование было на том уровне, чтобы оценить весь уровень знаний, исключая просто заучивание и мелкие задачки. Но это скорее исключение, чем правило.
Pavel1114
Снова пустое нытьё в топе хабра
HavenDV
А мне кажется, что да, они устроятся, начнут делать типовые задачи, но когда возникнет что-то более сложное — работадателям придется платить тем, кто сможет это сделать и имеет достаточный и разнообразный опыт. И платить заметно выше уровня типовых задач, который они сами и установили, наняв подобных работников.
Это как в знаменитом баше:
«Господа студенты, не учитесь, пожалуйста! Старайтесь как можно больше получить на халяву! Чем меньше вы знаете по окончании института, тем более ценен я как специалист и тем большую зарплату я могу потребовать за свои услуги!»
tendium
Хайп по IT превратил профессию из ремесла в масштабируемую. Если раньше программирование было уделом гиков-фанатиков (в английском есть отлично подходящее слово hacker в положительном смысле, а не в том, которое у нас), которые знали всех вот этих ваших Кнутов наизусть, понимали, что стоит за указателем, что такое битовые операции на уровне процессора, да, черт возьми, знали что такое 0xCC и 0xEB 0x05, например. То сейчас я все чаще сталкиваюсь с вопросами а-ля: а что такое
00110101<<2
или0011 & 0101
(примеры высосаны из пальца, но не суть).Программирование, имхо, прошло десакрализацию. В профессию пришли люди, для которых это просто заработок — это те люди, которые не будут вне работы копать очередную технологию или разбираться во внутрянках используемого фреймворка или языка. Это не значит, что хакеры-фанатики стали не нужны, просто их, во-первых, нет в том количестве, в котором есть спрос на программистов, и (во-вторых) не каждой фирме они объективно подходят для решаемых задач, уровень которых банальная (или не очень) бизнес-логика, не сильно интересная для хакера-фанатика.
titsi
Это с любой профессией так. Не всем нужны докторы Хаусы, не всем нужны Эпингеймеры, не всем нужны Адвокаты из крутых голивудских фильмов.
iago
Со всем согласен, одну лишь неточность заметил — думаете, эти вайтишники нахватавшиеся обманывают собеседующих? Из недавнего — у самого жена вайтишница, экс-налоговый инспектов, слава богу я и отец программисты с рождения и дали ей фундаментальные знания.
Но речь не о ней — с ней на курсы ходил парень лет 30. До курсов самый большой скилл — танк 80 уровня в World of Tanks. Прошел курсы, насочинял себе проекты, в которых якобы участвовал, опыт работы год, пошел собеситься на мидла на зарплату 2к зелени. Там его раскусили — и что он нигде не работал, и что проекты липовые — но им было не важно. Аутсорс такой аутсорс, клиенту позарез нужно доукомплектовать команду мидом — будет ему мид, в процессе чему-нибудь научится.
Что это значит для нас, «настоящий» айтишников, прошедших Макколена, и кодящих с детства? Только то, что среди моря дерьмовых проектов, на которых по уши засядешь в рефакторинге на каждый чих от таких вайтишников, нужно выбирать те, где работают такие же как ты. Или только стартовавшие. Поверьте, среди нас тоже хватает динозавров, которым за счастье поддержка гнилья на технологиях 2001 года — просто нужно найти проект под себя. У меня пока получалось, не знаю как будет в будующем.
envy12
Вообще не трогают и не вызывают агрессии такие люди. Скорее восхищение даже и стимул улучшить свои навыки презентации. Ведь компания, которая наняла на должность senior программиста с двухмесячным стажем узнаёт об этом. Может через неделю, может через пару месяцев. И в итоге усложнит процесс приема для всех. Это реальный минус
pr0r0ck
Автор, а от чего у тебя такая обида-то?) Не уж то за отрасль и сообщество кодеров переживаешь?) Я могу ошибаться, но материал для меня выглядит так — Я вот всю жизнь батрачу в гос. компании, оканчивал университеты, а платят мне как джуну в коммерческой структуре, причем берут туда сразу после курсов, сразу на миддла. Давай вспомним как всё было на самом деле — я вот тоже окончил университет профильный — программа ни о чем, то же паскаль и бэйсик, и совсем чуть C/C++, оно даже на момент обучения уже было не актуально. Основную часть знаний получил самостоятельно, потом работал в разных коммерческих организациях (опять таки универ не помог, даже диплом не спрашивали нигде, собес hr, собес с тимлидом, тестовое задание) — умеешь прошел, не умеешь — не прошел. Не так давно записался тоже на профильный курс — но не в стиле 21 день, а годовой, так вот, казалось бы многолетний практический опыт сделал бы для меня курс вообще детской шалостью, но вот нет, спустя десяток занятий — я действительно стал восстанавливать многие пробелы в знаний, причем о их наличии (пробелов) я бы так и не узнал если бы не курсы. Поэтому я бы курсы строго не судил — есть, наверняка бесполезный хлам, но есть и действительно полезные, даже для казалось бы опытных разработчиков. Что плохого в том, что на курсах тебе дадут уже структурированную информацию? Раньше то мы только стэковерфлоу да хабр трусили в случае возникновения дилем… Если могут — пусть учат, тем более если кого-то там после этих курсов куда-то даже на работу берут. Как по мне — огонь) и пусть там даже учат вещам вроде «Как пройти собеседование, без практических навыков и опыта» — это тоже скилл, если это работает — значит маст хэв)
AlexPu
Не стоит путать то что должно быть, с тем, что есть на само деле — сейчас это все не более чем титулы, которые служат в основном для того, чтобы потешить самолюбие их носителей. И если один из десяти вдруг продемонстрирует реальную компетентность, то именно он и будет реальным senior developer по факту а не по должности.
Причем такое положение вещей не только в РФ — IT специалистов не зватает… очень сильно не хватает… пожтому компании охотно берут тех, кто просо способен связать пару слов с использованием технического жаргона — авось из кого-то что-о дельное получится… Да это издержки, но в отличие от российских компаний, европейские (насчет американских просто не знаю) в принципе готовы к этим издержками и изначально закладывают их в свои расходы. Более того в некоторых странах обучение на рабочем месте является приоритетным методом обучения
VolCh
Или чтобы обойти ограничения тарифной сетки: "не можем мы платить джуну больше 2000$, сделаем тебя миддлом авансом"
AlexPu
Или так… Или по любой другой причине никак не связаной с квалификацией работника
TheNavi
Расслабьтесь, это вообще мировая тенденция, Россия здесь вообще не уникальна. Работая в большом международном корпе с распределенными командами, я вижу как это происходит в рамках всего мира. Как, например несколько сеньоров например из Европы, заменяются толпой индусов, а через несколько лет толпа индусов заменяется на еще большую толпу мексиканцев и качество дальше падает еще катастрофически (хотя для такой работы хватило бы и 2-х сеньоров). С моей точки зрения, я вижу множество факторов, которые приводят к этому. Высокая стоимость (и зачастую весьма обоснованная) действительно толковых специалистов и короткий цикл жизни софта и как следствие необходимость писать код быстро и быстро выкатывать в прод, что бы через полгода-год, сказать это что сделали все фигня и надо быстро запилить новую систему вместо старой (много ли сейчас приложений или систем с жизненным циклом лет в 10 хотя бы ?). Как следствие, с точки зрения бизнеса — толпа вайтишников выгоднее, чем команда профи в краткосрочной перспективе. Как минимум с точки зрения устойчивости проектов, тупо если из команды в 20 вайтишников уйдет 3-5 сотрудников, это даже не сильно заметно будет (да и заменить не сложно) — то из условно равноценной команды профи-сеньоров в 4 человека — потеря даже одного — уже критическая ситуация для проекта. С обратной стороны — текучка кадров вайтишников — это другая сторона попаболи менеджера проекта. У тех же индусов в среднем attrition rate (текучка кадров) в среднем идет от 15-20% в год (тупо из 5 пришедших — один уйдет в течении года), а у тех же мексиканцев доходит и до 50%? И как работать с такими вайтишникаим, если learning curve (время на обучение что бы понять все внутренности проекта) в твоем проекте порядка 18 месяцев и к моменту окончания числа обучения нужно начинать все по новой, поскольку первые пришедшие в проект уже ушли ?
kadario
Вот, кстати, да. И с каждым годом эта тенденция все растет и растет :( Обидно. Но есть чувство, что скоро этот пузырь все же лопнет, как писал автор. Хотя подобное чувство у меня с самого первого дня моей работы в области.
WizardryIB
HR в Сбере — это дно! Согласен. Но там давно специалистов набирают по указанию сверху. И не только плохих! Греф так часто меняет команду, что «слоны» просто не успевают научиться ходить, не то чтобы затанцевать…
1c80
Не понятны претензии к этим курсам, наоборот всё очень грамотно сделано и учеников даже не кинули, дали лодку, вёсла и до воды довезли, а дальше как сможешь уже, кто утонет, а кто и выплывет.
При этом падаванов научили правильно просить бабло и не прогибаться, под баблоносителей, то есть нормальный спец, потом сможет в несколько раз больше слупить, если он правильно выстроит общение с заказчиком.
Вот если бы падаваны демпинговали, то тогда конечно, это был бы серьезный повод бежать туда с монтировкой наперевес или с каким другим объяснятелем.
Ресурсов этой планеты на всех не хватает и на любое место дающее возможность найти в супе мясо, будет толпа голодных, это неизбежно, это жизнь. А так-то ЗП в 150к за которую еще и пахать надо, в 2020 году совсем не предел мечтаний.
LucasP
Жду появления курсов: «как стать сантехником за 21 день». Вот реально, я осознаю, что сантехником не стану… учат меня или нет. Персонажам идущим на курсы предлагаю вчитаться до полного прояснения мозга.
tehdima
Вообще когда начинал читать, то думал будет что-то типа «вот мой путь таков, другого нет»
Но фактически по большинству тезисов согласен с автором, фактически сам знал одного парня, которого после курсов приняли на должность синьора-помидора. Не буду оценивать его квалификацию как программиста, но все же по мне senior — это даже не про знание языка, фрэймворках и умении вайтбордить на собесах, это про возможность самому ставить задачи в контексте проекта и самому иметь возможность их решить, а первое невозможно без боевого опыта.
Я вижу это так, что в жизни компании наступает такой цикл, когда им нужно включить микропылесос для рынка и заполнить кадровые дыры, а потом отписаться об успешных нестандартных кейсах их эйчаров, хотя может и могу ошибаться.
Единственное с чем я не соглашусь — то что ИТ не резиновое. «Оно из куда более эластичного материала». Не надо боятся что тебя, качественного, закаленного в боях ИТшника рынок(именно рынок а не компания) разменяет на зеленого вайтишника. Рынок сам все отлично порешает, как показывает практика, и на видимом горизонте все расставит на свои места, и пока у клиентов одного банка будут утекать деньги из-за дырок, ты в другом будешь пилить киллер-фичу и наблюдать этот мир в огне.
delhi_heir
Столь любимые хрюшами волшебные soft skills, позволят свои косяки повесить на козлов отпущения.
kimisa
Мне вот со своим опытом 9 лет стало обидно. Несколько раз откликалась на вакансии Сбера и МТС, но в ответ тишина. Может просто эти выходцы курсов просят меньше. Хотя меня не берут на работу еще и за слишком большие требования к офису (как мне пишут в отказах). Так и пишут — теплый офис с окном, это у вас завышенные требования. А мне вот надоело работать рядом с обогревателями. Хочу сидеть без теплых кофт.
Rampages
Просто чтобы набрать хороших HR’ов нужен хороший HR :)
В больших компаниях вообще порой бардак с бизнес процессами и должностными обязанностями, где ты работаешь за несколько разных ролей. В малых вообще устоявшихся бизнес процессов нет и все меняется постоянно и при этом руководство не всегда доводит до всех что где и как поменялось, а все эти умные системы CRM, ERP иногда только усложняют работу, вместо упрощения так как работодатель не умеет их использовать для получения выгоды, а так как уже купили и внедрили отказаться сложно...
IlayDeveloper
Объективного взгляда не обнаружено. Автор кажется забыл, что мы на рынке живем и руководит здесь всем только маячащая прибыль на горизонте. И, встав на место человека, принимающего решение куда двигаться в рамках деиндустриализированной экономики, что автор может предложить? Либо сфера услуг низкооплачиваемая: таксист, продавец, консультант, либо высокооплачиваемая: ит, менеджмент, юрист, политик и т.д. И, конечно, все ломятся в ит т.к. в инженерной специальности самые прозрачные критерии достижения успеха: умеешь/не умеешь, а рабочий инструмент — компьютер — есть у всех. И курсы прекрасная возможность зацепиться в этой отрасли.
А говорить, что раз человек не горит программированием с детства и его не посещал восторг от реализации собственного проекта, то не нужно сюда лезть — поищи что тебе по душе. Ну это все равно, что предлагать рабочему с конвейера начала 20 века выбрать занятие себе по душе. Вариантов на выбор не слишком много.
it4lpr
Солидарность и респект тем умельцам, которые умудряются превращать в реальные ценности (продающийся продукт или выигранные (в кавычках и без) тенедры) труд людей, которые за полгода — год получают _достаточный_ для этого навык ( в данном случае программирования, тестирования, администрирования). Раньше была боль, что можно было со специализацией не угадать, потратить на неё годы и потом с ужасом наблюдать что ниша схлопнулась. Но слава прогрессу, новые ниши появляются стремительно и есть технологии, которые также стремительно позволяют в них входить с нуля (человеку), потому что вся отрасль НЕ НУЛЬ основы для этой ниши сделала и ведет без него. Так что да, можно жалеть о потерянных годах в универе, а можно вспоминать с улыбкой свою молодость и мурлыкать песенку " у природы нет плохой погоды..."
M0n0Max
Уважаемые расскажите мне как "войти вайти" так сказать с улицы да и без знания инглиша можно ли будет научится хоть чему-то до 2021 и заработь на этом. Могут ли меня взять на обучение с мин окладом?
Apxipelag
так вот почему я подолгу не могу найти работу (правда сисадмином широкого профиля)! оказывается надо нарисовать себе кучу проектов и нагло врать в глаза будущему начальнику. а думал, что просто плохой специалист. тьфу
уеду на 13-й кордон, буду откликаться на Кузьмича
it-xp
моя квалификация:
30+ лет увлечения кампами, с переходом от эпохи, когда упаси боже сказать кому что ты компьютерщик до сегодняшнего гордого «Йа Айтишник!!!»
мой опыт:
от System 360 (кампы БЕЗ операционки, да да) и Asm 8086 до фреймов с virtal DOM и блокчейнов всех мастей, руководство как гениями, так и долбодятлами, управление продуктами как «пилим с нуля» так и «ну, есть у нас тут 'немного' легаси»
мои soft skils:
Прямой и непосредственный, циник, правдоруб, но добрый. Если и рублю правду матку, то не матом, а кратко и по делу. Жесткий прагматик, который предпочитает дискуссию спору (обоснование в основе аргументов, а не либидо) и требующий такого же предпочтения от оппонента, без чего уважение моё сложно заслужить. (типа положительно токсичный, как кислота против ржавчины) типичный суровый админ короче)
В принципе мне, понятное дело, искать работу не приходится — инвайтов завались всегда, но обычно с первого раза не устроишься — приходится несколько собеседований проходить в разные проекты, перед онбордингом, а история моя всегда примерно такая — устроился кодером, всё супер, я кайфую программируя, они во мне души не чают, начинают прибалтывать в лиды/СТО/продакты и уже на этих должностях начинаются выгорания, потеря энтузиазма, да пошло оно всё лесом и тд, в результате чего больше 3х лет в одном проекте как то не получается и за 20хх годы накопился весьма приличный опыт трудоустройства, так вот в 201х у меня резко возрос процент отказа после собеседований по причине overqualified — типа такой себе «чувак ты для нас слишком хорош» ) при том что я особо цены не ломлю и синдром самозванца у меня присутствует не слабо так, особенно если
сноваопять впаривают руководящую должность, или стек суперновомодный, в который я ещё не успел, или наоборот, давно подзабытый уже. Так вот, я часто ещё при непонятном отказе списывал всё на модное «у нас молодой коллектив» в описании, а я дядька 40+, а тут похоже вон оно как может быть, нужен вайтишник, или вайтишник собеседует, так что спасибо автору, учту, если снова куда на зп поработать приспичит )it4lpr
Вы правильно списывали на «у нас молодой коллектив». Вам, если реально умеете, что пишите, нужно свое дело делать. Адекватного белого найма в РФ для умеющего «по площадям» 40+, но без связей — нет.
it-xp
Вы не совсем правильно поняли мой посыл — я работал без проблем в молодых коллективах, а здесь имел в виду непонятку в плане отказа. Разумеется я не могу судить о реальной причине, да и я отношусь к тому типу людей, у которых нет возраста, моя жена тоже программист и она на 20 лет младше меня, я могу даже просто в свободное время легко затусить с молодыми людьми, часто бываю в студенческих движухах, но в некоторых компаниях вполне может быть стереотип, что люди в возрасте не совсем совместимы с этими самыми молодыми коллективами — они же меня не знают, да и процент таких команд довольно маленький. Скажем так, да, я не точно выразился, надо было сформулировать как то так: 'нечто вроде «у нас молодой коллектив»'
Не знаю с чего Вы это взяли — на рынке в принципе кадровый голод с одной стороны и засилье посредников на этой почве с другой, рекрутинговые агентства процветают и предложений от них гораздо больше, чем от прямого работодателя. В основном отказы «overqualified» я получал либо если хантит крупная контора, либо если собеседование и скрининг проводит агентство, а устроиться в стартап, либо например войти в команду opensource проекта, вообще не проблема.
Я вполне не плохо живу за счет доходов с консультаций, инвестиций, менторства. Да, были мысли запустить свою IT компанию, но я ещё занимаюсь исследованиями в области распределённых систем (не финансовые блокчейны, например в роли DPKI, квантовые вычисления, криптография), у меня на морально-менторско-технической поддержке пара Российских стартапов, например tuq.su, просто так, не забабло, а для души, просто ребята классные и идеи интересные, так что наверное я воздержусь пока от создания какого то юр. лица, управления конторой и прочей дополнительной ответственности. А имелось в виду, что у меня не опубликовано резюме, закрыт досткп к linkedin аку и всё равно меня постоянно пытаются хантить, на почту, в телегу, даже звонками на мобилу прилетают инвайты, но я к этому отношусь терпеливо, понимая, что вычищать себя из баз разных контор, занятие не благодарное — пусть будет, мало ли, вдруг пригодится, жизнь она такая штукенция, а так есть пару мест, где соломка постелена )) Так что не надо мне для трудоустройства ни каких связей, просто резюме опубликовать и отбоя не будет, да и toptal и turing есть которые первые же найдут куда устроить «дедушку» )
И к слову об РФ, да, понимаю, удобно, когда все говорят на Русском, но в целом сейчас программер, не владеющий Английским совсем, это странно, а специфика профессии такова, что можно работать откуда угодно где угодно и мой Вам совет, ищите работу где нибудь на angel.co
it4lpr
ageism — это реальность. И к этому нужно быть готовым. Вот Вы подробно описали, что сумели, искренне за Вас рад. (Кстати, особую пикантность ситуации придают многочисленные примеры такого же успеха. Пикантность в том, что примеры приводятся именно не успеха в предметной области, а как успех по-прежнему востребованности в области, несмотря на возраст.) Здесь весь топик про странности и специфику современного найма. Поэтому я повторю: «Адекватного белого найма в РФ для умеющего «по площадям» 40+, но без связей — нет.» Стартапы, ментерство — это не белый найм. А если у кого то с этим нет проблем, значит спец не «широкого профиля».
0xd34df00d
Эйджизм — это в обе стороны штука. Мне в мои 24 говорили, если упрощать, что моими предложениями заведомо можно подтереться, так как я слишком молод.
gazkom
Если коротко — куча гонора и 0 знаний. System 360 без «операционки»… OS/360 — нет, не слышал
5oclock
Действительно странно.
Я подростком даже на ЕС1036 ковырялся во вполне себе в операционке.
СВМ там была и какая-то оболочка ещё — сейчас уже и не вспомню.
anonymous
Выпускников айтишных курсов можно смело брать на джуновские позиции. Брал и не жалею.
A114n
Забавно, когда я написал о том, что образование и опыт работы это ключевые критерии подбора — все наперебой принялись убеждать меня, что это не так, что «важно знать и уметь, а остальное неважно». Хахаха.
ardraeiss
Вот только какое именно образование и как помогает? Я, скажем, стал программистом до того, как получил соответствующую корочку. И таких в группе хватало — принёсших на диплом куски своей работы, которая и так наличествовала ещё до начала учёбы.
А вот что из той учёбы мне пригодилось в работе… я так до сих пор и не понял.
A114n
Формальное, разумеется. «Без бумажки ты букашка».
Помните шикарную историю про директор_ку Yahoo, у которой оказался поддельный диплом?
Если взять с улицы бомжа, обрядить в костюмчик и дать ему бумажки о том, что он закончил физтех и работал 10 лет сеньором даже в том же сбере — его можно без подготовки отправлять на любое собеседование, и его возьмут на работу.
delhi_heir
Напомните, пожалуйста.
A114n
Ох, я ошибся, моя вина.
Столько лет спустя у меня оба скандала слились в один — директорку осуждали в связи с дискриминацией мужчин на работе, а поддельный диплом оказался у директора.
amirosta
Конкретно ту тётю взяли в Yahoo вовсе не за костюм и не за диплом.
До Yahoo она себя зарекомендовала в Google на руководящих должностях.
A114n
История о том, как она себя «зарекомендовала» на самом деле просто шикарна.
Я немножко обновил свои воспоминания и понял, почему я перепутал её с тем чуваком, который наврал в резюме про диплом. Потому что она оказалась человеком ровно того же типажа — имитация бурной деятельности, пыль в глаза, кидалово.
Тут прямо лежит на поверхности, что её выпнули из Гугла, когда больше не смогли терпеть её глупость даже в благодарность за то, что она "начинала с ними в маленьком стартапе" (из-за чего, очевидно, её и терпели и повышали все эти годы).
Зарекомендовала она себя примерно так:
Успехи Майер в Google на позиции разработчика оказались не слишком впечатляющими. Она больше месяца возилась с системой, которую нанятый ей в пару Джефф Дин построил гораздо быстрее. Тогда Марисса поняла, что больше не хочет программировать — но и уходить из Google тоже не желает. Она стала искать своё призвание, осваивая работу во всех департаментах проекта. Майер поработала в отделе маркетинга, в PR-службе, помогала настраивать сервера, писала речи для руководства, проводила служебные совещания.
В общем, ничего нового — специалист по активизму. «Шурочка, если мне не изменяет память, вы числитесь в бухгалтерии?»
Что касается Yahoo, то там она «зарекомендовала» себя ещё круче:
Однажды генеральный директор провела все выходные, общаясь с командой дизайнеров по поводу логотипа компании. Они подолгу обсуждали такие детали, как угол наклона восклицательного знака (81 градус). Есть и другие случаи: по словам одного из дизайнеров, уволившегося из компании, однажды Майер продолжительное время спорила с ним о том, какой ширины должна быть рамка на странице — и «довела» его тем, что попросила обосновать, что лучше для интерфейса — три или пять пикселей.
…
Процесс затянулся на месяцы. Она просто не могла держать в голове всё, что ей сказали менеджеры. Было сделано более 20 перестановок, и никто не знал, над чем он будет работать, когда Майер наконец определится.
Доведя компанию до рекордных убытков, она продала её «Веризону» и получила 200 лямов долларов за эту сделку.
Буквально это прямая иллюстрация к тому, что я написал.
Как в этой ветке комментариев — любой дурак с хорошей бумажкой (в данном случае это бумажка о работе в Гугл) получит хорошую работу, даже если он очевидно недееспособен.
Так и в ветке комментариев выше — враньё, подделки, имитация всегда важнее настоящей работы. Часто упирают на то, как она «много работала», но толку-то в «ста часах работы», если ты сто часов обсуждаешь угол наклона восклицательного знака?
У меня была такая коллега в одной компании, тоже работала директор_кой, и, забавно, тоже PR и вот это всё. Знать не знала практически ничего, но тоже всё время много сидела «на работе» и постоянно везде лезла. Если бы ей повезло, и она бы начала работу не в российской компании, а в Гугле, то теперь тоже была бы миллионершей и успешно руководящим руководителем на успешно руководящих должностях.
alex_vesna
Почему никто не желает для начала дать строгие определения?! Программист это не тот кто может пройти собеседование. Это никогда не входило в требуемые навыки человека пишущего код за деньги.
Для владельца бизнеса, не имеет значения какие из имеющихся проблем, вы можете решить. Его волнует если по гамбургскому счету, лишь на сколько возросла/упала выручка, с вашим приходом в кампанию, или то же самое но в обозримом периоде, — 3 месяца, полгода, по отношению к затратам на вас.
Программистом пишущим добротный код НЕВОЗМОЖНО стать за период времени, меньший чем 3-5 лет. В силу того что необходимо качественно усвоить, огромное количество, на прямую не связанных со знанием языков, технических (как вообще работает операционка?) и обще-математических (ой сколько же напридумывали алгоритмов, для решения одной простой задачи!?), и чисто опытных (а как главный гуру это написал в коде?) знаний.
Это не специальность в которой работают с материальными объектами или людьми. Тут не работают способы привычно используемые в «реальности», типа «дрессировки». Здесь абсолютно бесполезно что либо заучивать или зубрить. За место этого тут нужно понимать и видеть как практически это использовать. Каждый программист САМ и только сам доходит до понимания вещей, необходимых для написания хорошего кода. И таки КАЖДЫЙ путь, даже к одним и тем же навыкам уникален всегда.
Так что гораздо больший интерес вызывает само появление феномена «наглых говорунов».
Может стоит обсудить что не так с программированием в принципе? Почему заместо программистов, в проектах сидят обезьянки для тыканья функций из библиотек?
Может вообще дело в нас а не в этих смешных «курсовиках с понтами»?
И специально для тех кто жжет за за социальные навыки и прочие посторонние скилы, — Идите в жопу!
Ну или как можно дальше от программирования. Не бывает отличных математиков работающих дальнобойщиками. Мне неизвестны случаи топ менеджеров, обладающих реальными навыками в какой либо специальности, из имеющихся у людей в его подчинении. Это строгая линейная зависимость, — хочешь «разговоруниться» или стать афигенно социальным, плати потерей в навыках программирования. И точка.
quaer
«All you need in this life is ignorance and confidence, and then success is sure». Mark Twain.
«Если в человеке сочетается невежество и уверенность в себе, то успех неизбежен».
Марк Твен.
roberartua
Проблема началась не сегодня и не вчера. Еще в начале нулевых модно было быть «менеджером». Потом все массово шли в вузы на финансовые специальности. Потом то же самое началось с бухгалтерией и такими же сотрудниками недоучками, которые приносили очень много проблем своим клиентам. Сейчас новый виток истории. Модные слова IT, удаленка, фрилансер, SMM. Количество запросов по обучению на курсах SMM увеличилось в 3 раза относительно прошлого года, по программированию рост составил от 20 до 50% по разным тематикам. То же самое было и по SEO и по контекстной рекламе и по MBA (когда это было модно). Обычный виток роста пользовательского интереса, который спадает сам собой после того как львиная доля не может устроиться на работу. В 2007 года я искал сотрудника себе в отдел, паренек не умевший сделать таблицу в html просил 80000 рублей в месяц. На тот момент, около 100-120 получал начальник отдела. Поэтому, я считаю, что рынок сам рассудит кого и куда.
it4lpr
в 2007 — 120 тыс. нач отдела? Минск что ли?
wkia
Банальность, но программист программисту — рознь. Для полноты картины хотелось бы понять, что есть «программист» в этих компаниях (например, в Сбере какие задачи и обязанности у «вайтишника»?) и какая у него зарплата (хотя бы относительно усредненных значений)? Просто чтобы сравнить с обязанностями и зарплатой усреднённого сеньора.
Ведь судя по списку вакансий на hh, в той же северной столице многие работодатели жаждут получить себе сеньор-программистов на зарплату ~100K при требуемом опыте работы 1-3 года. Да что там сеньоры, будучи студентом 2 курса бакалавриата можно устроиться стажером-программистом на «полдня» за половину этой суммы, а то и больше.
И получается, что желания новоиспеченных программистов не только реальны, но и вполне осуществимы в короткие сроки. А значит ситуация с многочисленными онлайн-курсами — это классический случай, когда именно спрос рождает предложение. (Это началось не вчера, конечно, но кризис этого года заставляет всё больше людей обращать внимание на стабильную ИТ-сферу.)
Можно сделать вывод, что проблема совсем не в том, что "Технологические компании (...) легко обманываются людьми, которые зазубрили понятия...". И уже тем более не в онлайн-курсах. Вернее, это даже не проблема вовсе. Я совершенно уверен, что формулируя требования к вакансии подобным образом (см. выше) работодатель полностью понимает и принимает риски.
Остаётся только один вопрос — почему? Почему работодатель идет на эти риски? На этот вопрос у меня, к сожалению, нет ответа, есть только догадки. Зато на хабре есть много представителей компаний, больших и не очень. Может, они ответят?
ЗЫ. А условный «Алексей» из этой истории — молодец. Он захотел стать программистом, и упорно идет к этой цели, как и остальные его одногруппники. Я не знаю, останется ли он программистом через 10-15 лет, и не знаю, что его сейчас побудило пойти в программисты. Я знаю одно — точка старта не важна, ведь все мы с чего-то начинали.
InterceptorTSK
ну вот вы можете нанять модельеров и понять кто из них круче и кто вам подходит?) вы же в модельерах разбираетесь хуже, чем свинья в опельсинах, разве нет?)
Hivemaster
Во-первых, не надо быть специалистом в информационных технологиях и гением, чтобы понимать простую истину «Как заплачено, так и зафигачено». Если у конкурентов отличные системы делают мидлы с не менее, чем пятилетним стажем, и зарплатой около 200k, а тебе предлагают нанять годовалых за 100, то стоит задуматься, почему таких не нанимают все. Во-вторых, для понимания отдельных областей деятельности нанимают замов. Надо нанять одного надёжного и хорошо замотивированного директора по ИТ, и он займётся правильной организацией работы с непонятным.
VolCh
А как понять какие кандидаты на позицию директора по ИТ компетентны в ИТ, а какие нет? )
Hivemaster
В идеале нанять человека с успешными проектами в крупных и известных компаниях. Если столько денег нет, то придётся методом тыка: нанял, дал поработать, попрощался, если не устраивает результат, нанял следующего.
bobby001
Заминусуют, но это правда, что после 2 месяцев курсов становятся программистами.
Хорошая память+гугл в помощь. А что ещё нужно?
Разве проблема заучить несколько названий из языка?
Тем не менее, обращу внимание, что, к счастью, бэкэнд и операционки пишут не эти люди,
Hivemaster
Нужно развить очень высокий уровень абстрактного мышления, построить в мозгу нейронные связи, которые противоестественны в обыденной жизни человека, научиться думать на используемом ЯП, а не просто знать его синтаксис. Всё это требует годы практики и высокого уровня вовлечёности. Программист, выучившийся за два месяца на курсах — это как человек, научившийся у соседа бренькать на гитаре, против музыканта, занимавшегося с детства в музыкальной школе, закончившего консерваторию и годами выступающего в филармониях.
titsi
Верстать страницы сойдет.Мб еще sql запросы целый день катать, не более.
SwingoPingo
Так вот кто нам базы ложит!
sumanai
Ну это вряд ли, как только отойти от стандартного SELECT * FROM users WHERE user_id = 1, то начинаются проблемы.
A114n
Тем не менее, чтобы спеть под бреньканье «Владимирский централ» на вечеринке (или даже в электричке) этого вполне хватит, и это покроет задачи 90% слушателей.
А вот музыканты, закончившие консерваторию, часто сидят без работы.
VolCh
Но петь "Владимирский централ" не идут?
A114n
А то! Дисквалификация.
Hivemaster
Только подъездные гитаристы не позиционируют себя способными забацать Вивальди, да и никому в голову не придёт применить их для исполнения кончерто гроссо. С выкидышами курсиков всё совсем наоборот.
wkia
Так вроде же бренчащий на гитаре человек не претендует на место в оркестре филармонии?
Очень странно, что в статье и в комментариях все сравнивают новорожденного программиста с бывалым программистом со стажем минимум лет в пять, судя по описаниям. Ведь новорожденные вообще не претендуют на место опытных — их берут на зарплату ниже средней и дают задачи, которые они в состоянии решить. А «сеньор» или «несеньор» — это всего лишь слова, которые тешат самолюбие и только в начале карьеры.
И тут, кстати, я не понимаю, в чём претензии у автора статьи? Все когда-то были начинающими, только кто-то ещё в школе, кто-то уже в ВУЗе, а кто-то только после 25. В чем между ними разница? Только в возрасте. Разве начинающий программист не может устроиться на работу? Не только может, но и должен, иначе как он получит боевой опыт? Я сам, например, на последнем курсе универа устроился на работу программировать на VBA, имея только ВУЗовский курс Паскаля и факультативный C++, оба далекие от реальной жизни. Мне платили зарплату за выполненную работу, а я набирался опыта.
Я уверен, что старшеклассник, несколько месяцев изучавший туториалы, много бы отдал, чтобы бы его взяли на работу. Но ему по возрасту не положено. А после 25 — можно. Если работодателя устраивает такой работник, если поставленные задачи решаются — какие тут могут быть претензии?
sergey-gornostaev
Справедливости ради стоит заметить, что в упомянутом в статье Сбере разница между этими «всего лишь словами» может измеряется сотнями тысяч рублей.
wkia
К сожалению, автор умалчивает о месте работы «Алексея», его должности и зарплате. Если бы эта информация была, было бы намного понятнее. В разных компаниях должности могут называться по-разному (я знаю компании, где вообще нет градаций у программистов), поэтому при смене места работы большее значение имеет какие обязанности и задачи выполняет сотрудник, и какую зарплату ему за это платят.
По косвенной информации из статьи можно сделать вывод, что начинающий программист «Алексей» после окончания курсов нашел место в условном Сбере с зарплатой ниже среднего, что соответствовало его ожиданиям, и что также соответствовало ожиданиям условного Сбера. Тут же всё логично? Почему все недовольны и считают, что «Алексей» кого-то обманул?
Akon32
Инженер, закончивший университетскую программу по специальности "Программное обеспечение вычислительной техники и автоматизированных систем", изучает в процессе этого примерно 60 дисциплин (примерно 15 из них — всякие "философии" и т.п.). На это уходит 4.5 года (+ написание диплома) лекций, практик, домашних заданий.
Не может объём знаний, полученных за 2 месяца, сравниться с объёмом знаний, полученных за 3.5 года (не будем учитывать "философии").
Чтобы на 2х-месячных курсах получился "инженер-программист", а не программист с крайне узкой специализацией, нужна эффективность обучения в 20 раз выше, чем в университете. Возможно, за 45 будних дней можно изучить оглавления 45 дисциплин, чтобы потом гуглить; но вряд ли удастся все оглавления вспомнить, да и такой подход исключает практику.
Ru6aKa
Не защищаю курсы, но и не соглашусь с тем что написано.
Да знаний за 3.5 года было получено больше, но эти знания были забыты (просто потому что не использовались), ну и в большинстве своем эти знания старые и неактуальные. С какой скоростью развивается IT? и как часто министерство образования пересматривает программу таких специальностей?
Базовые знания по инженерному делу в разработке ПО ненужны, базовый минимум для разработки это теория алгоритмов — все остальное ненужно, специфика. Кто-то может считать что тестирование — это какие-то базовые знания для разработчика, но нет, контроль качества появился очень давно, и никак его не могут натянуть на глобус разработки, хотя пытались очень многие.
Да и лично я считаю что за 5 лет универа, даже самого лучшего, инженера не получить. Инженер — это развитие способностей с детства и раскрытие максимального потенциала в универе.
И лучшее что можно сделать, это выкинуть инженера из названия и из обучения, и оставить только разработчика с его спецификой.
Akon32
Я и выкинул всё, не относящееся к программированию, кроме математики. Если считать, что "программисту не нужна математика", то матан с натяжкой можно тоже выкинуть из списка, алгебру и аналитическую геометрию — с большей натяжкой.
На выходе какая-то "заготовка разработчика" получается. Наверно, можно впихнуть "теорию алгоритмов" в курс информатики 9-11 классов школы (или вместо чего-то бесполезного), и быстро получить толпы таких "разработчиков".
Сколько фундаментальных вещей в программировании появились за последние, скажем, 10 лет? Примерно с десяток, думаю. Знания по ним можно относительно легко обновить. В зависимости от используемого критерия "фундаментальности", кто-то даже может сказать, что ничего нового не изобретено. Тысячи библиотек считать не имеет смысла, они могут каждый день появляться, для обучения работе с библиотекой достаточно несколько дней-недель курить документацию.
InterceptorTSK
И в чём фундаментальность этих ваших фундаментальных вещей? В том что через год заменятся другими «фундаментальными» вещами?))) А где собственно фундаментальность?
0xd34df00d
Так и фундаментальная вполне себе линейная алгебра сегодня будет читаться не так, как 50 лет назад. Упомянутую выше фундаментальную теорему линейной алгебры можно доказывать напрямую для матриц (как, увы, делали мы всего-то 12 лет назад), можно выводить для линейных операторов, можно выводить для R-модулей как следствие одной из теорем об изоморфизме (той, что читается речовкой «изоморфный-образ-группы-гомоморфен-фактор-группе-по-ядру-гомоморфизма», только с апгрейдом до модулей), можно выводить из соображений гомологической алгебры (но зачем?).
Ура, фундаментальная математика нефундаментальна!
norsen
Интересное эссе, спасибо автору! И дискуссия, как я вижу, оживленная.
У меня это вызвало разные мысли, так что внесу и я свои «5 копеек». Зайду немного издалека.
Тут неоднократно говорили в комментариях, что якобы есть рынок, и компаниям, наверно, выгодно так нанимать. Увы, насчет выгоды далеко не все так однозначно. Давно, в плановой экономике СССР были проблемы, что брали человека на место по плану, а делать ему нечего. Как ни странно, в капиталистической есть те же проблемы, только более сложно обусловленные.
Есть такая модная книжка — Д. Гребер «Бредовая работа. Трактат о распространении бессмысленного труда», довольно интересное чтиво, хотя «много букв» и не вполне научное; основная мысль автора: капиталистический мир создает много работы, которая «не нужна», однако оплачивается, в силу различных причин. Например, автоматизация вместо сокращения рабочей недели привела к увеличению потребления. Не буду вдаваться в подробности, а то боюсь уйти в оффтопик, да и рассуждения товарища Гребера в некоторых местах представляются утопическими, но здравое зерно в этом есть: ситуация в различных областях занятости так или иначе соответствует описанному. Например, в совещяниях по кибер-безопасности большинство людей не знают ничего про технические аспекты. Если посчитать всех, кто занимается кибер-безопасностью, то будет 1 инженер, который делает реализацию или там технический аудит, на 9 менеджеров и 3 юристов, которые рассуждают о важности происходящего всю дорогу. И так много где. В этом свете вполне логично, что не все работники нанимаются для того, чтобы делать что-то действительно полезное (хотя это очень философский вопрос, что полезно, а что — нет). Иногда набор специалистов обусловлен тем, что «успешному» менеджеру нужна команда. Насколько продукт, разрабатываемый этой командой нужен бизнесу, увеличит ли он прибыль бизнеса сейчас или в будущем, и можно ли вообще это оценить? Не всегда на эти вопросы есть однозначные ответы. Может, бизнес скоро планируется продавать, а с командой в 100 человек инвесторы дадут больше денег, чем с командой в 20, вот и нанимают (кого попало). Это не то чтобы такой специальный умысел — сделать бессмысленным труд, типа давайте просто атк кого-то наймем, — конечно, так никто специально не планирует, просто система так работает (опять же, по мнению Гребера).
Это я к тому, что успех некоторых выпускников курсов, порицаемый автором, может быть вызван именно этим: автор статьи предполагает, что все нанятые будут заниматься осмысленным и потенциально полезным трудом (и результатом их слабой квалификации станут упавшие самолеты и отток денег со счетов), а на самом деле может статься, что 80% из них буду просто работать на работе за деньги, без какого-либо существенного влияния их трудов на окружающий мир.
При своей некоторой утопичности, книжка Гребера неплохо объясняет и тот факт, почему «хорошим» программистам тяжело конкурировать с «вайтишниками»: кругом так много «бредовой» занятости, что не всегда критично нанять «хорошего» программиста.
Есть еще одно соображение. Часто в комментариях встречаются противоположные мнения относительно ИТ, и это неудивительно: ИТ область — это целый мир, там настолько много всего сейчас, что очень сложно сравнивать разных специалистов: все равно что сравнивать повара и летчика. Я работал в компании, где физические модели писали одни люди (используя графический редактор, а не тектовый код), а софт для «вычисления» этих моделей — другие (собственно настоящие программисты); но и те, и другие назывались по должности программистами. Или вот еще пример: есть RPA (robot process automation) тулзы с чисто графическими средствами (например, я пробовал UIPath), для использовнаия которых не надо понимать в программировании совсем ничего, достаточно научить робот перетаскивать данные из вот этой ексельки в вот эту форму в браузере, с подсказочками красивыми.
Я согласен с автором, что хорошим программистом за 2 месяца курсов не станешь; но все это так трудно сравнивать, что просто ужас. Я уже, если честно, не совсем понимаю, кто хороший, кто плохой. Я считаю, что если данные курсы учат, как «пройти HR» — за одно это уже можно таким курсам выдать индульгенцию! ) А учиться, как тут уже замечали, все равно приходится всю жизнь.
Добавлю напоследок, что меня один человек обманул при найме в одной заграничной конторе: из нанятых с моим непосредственным участием примерно 15 людей один оказался таким вот самозванцем, техническое задание хорошо сделал; меня еще предупреждал второй участник, что у него «есть сомнения», но я решил нанять джуна, вроде толковый. Впрочем, тут не совсем программист, а, скорее, инженер, но сути это не меняет. Джун откровенно нифига не делал полтора года, я так и не понял причину — то ли недостаток знаний и умений, то ли банально наглость — или, назову политкорректно, другой подход к жизни. Зато, когда наша контора прекратила существовать — он первый похвастался оффером в (известную компанию) в Англии, так что в умении жить этому человеку не откажешь.
Такие немного сумбурные впечатления!
Автору спасибо за статью и не расстраивайтесь: все суета сует!
wkia
Я уже неделю читаю комментарии, и не могу понять, почему все сравнивают начинающего программиста с хорошим (опытным) программистом? Кто-нибудь может объяснить?
В истории про «Алексея» всё закономерно же — начал учиться программированию, закончил курсы, ушел на зарплату ниже среднего (по косвенной информации), сидит на работе, что-то пилит, набирается опыта.
В чем подвох? Чем все недовольны?