Тупые вопросы на собеседовании

User avatar
Мальчик-Одуванчик
Уже с Приветом
Posts: 15526
Joined: 27 Sep 2007 22:53

Re: Тупые вопросы на собеседовании

Post by Мальчик-Одуванчик »

OtherSide wrote:
stenking wrote: А если ты почитаешь мои аргументы то поймёш что меня смешит ваше определение "неефективности" и детская борьба с системой вместо сотрудничества с ней.
Я уже 200 раз написал, что мне система не нравится ни как программисту, а как менеджеру. В своей компании я бы такое внедрять не стал. Эффективность нужно мерять качеством решенным задач, мерять в строках кода априори глупость.
Хотя кто знает, что у вас там за проекты. Если клепаете интернет магазины по 500 долларов штука, может оно и работает
Если на говнокод навернуть юнит-тестов то на условно-полезных сто строк кода как раз и получится еще 500-600 сопутствующего барахла.
Какие-то замуты с оформлением юнит-тестов многие системы генерят чуть ли не автоматом плюс копи-паста с небольшими изменениями.
Другое дело что оптимизировать код, критерием эффективности которого является количество строк не представляется особо мотивированным.
User avatar
stenking
Уже с Приветом
Posts: 14455
Joined: 26 May 2006 02:39

Re: Тупые вопросы на собеседовании

Post by stenking »

MCP wrote: Стенкин, вы тратите в среднем не больше 5 мин = 300 сек чтобы просмотреть 600 строчек кода, т.е. 0.5 сек на 1 строку. И этого хватает не только на то чтобы понять насколько хорошо/красиво код написан а еще и на то чтобы понят что все 600 строчек необходимы и нелзя было вместо них написат 300 строчек имплементировав при этом ту же функциональность?
Мы говорим о разных вещах. Код ревью проходит несколько стадий - моя именно задача - смотреть кто что делает, как решаются основные задачи и постаратся остановить явные проблемы которые неизбежны при приходе новых людей, нескольких кросс-команд. Например кто-то пишет TimeConverter класс какой-то вместо того что бы использовать уже существующую Carbon или Moment.js библиотеку. Кто-то пытается узнать какая таймзона и начинает писать код, но я знаю что в другом саб проекте нужна будет аналогичная функциональность - значит нужно например делать микросервис который эту тайзону будет отдавать через API по айпишнику. A откуда тайзоны брать то? Можно скачать локально а можно брать у Гугла и кешать у себя - у него отличный API есть который УЖЕ локализирован. Т.е. простая на вид задача - спросить таймзону пользователя превратилась в более сложную - определить дефолтную таймзону в мультиязычном проекте через микросервис используя готовый API гугла.

А тут OtherSide начинает писать огромную квирю которую никто никогда не сможет раздебажить, даже он сам через месяц - необходимо его остановить и искать другой вариант. Потому что OtherSide её напишет конечно за свои 2 дня и она может будет даже работать неплохо на 10М рекордов. А при 10Б которые ожидаются через полгода нужно будет переделывать. Поэтому может нужно будет денормализировать базу или искать какой-то вариант в UI с постепенным построением/подгрузкой графика. Ой - нам же всё равно нужно завтра аналитика то - может уже подсчитаную дату брать оттуда? Так одна задача неплохо решается новой системой аналитики которая получает зелёный свет. И за эти 2 дня OtherSide делает 5-ку новый таблиц и скрипты которые постоянно эту аналитку считают. И его огромная и страшная квиря уже не нужна. Бомба обезврежена и инвесторы получают дополнительную печеньку.

Поэтому не нужны графики и репорты, не нужна всякая лапша и "уже почти сделано" - код ревью прекрасно заменяет всё это. Да это занимает час а то и два в день. Ещё как минимум столько же занимает игра с этой всей функциональностью что бы почуствовать качество, понять что готово а что ещё сырое, убедится что бизнес логика именно такая какая ожидается. Что можно показать инвесторам или отдавать на QA а что нужно дорабатывать.

В том что я говорю нет ничего особенного, во многих компаниях есть и продукт овнеры и архитекты и лиды которые очень внимательно смотрят код. Иначе получается именно то стандартное глюкавое г-но о котором говорит Мальчик-Одуванчик. Просто в компании у которой есть 3М на 2 года это всё должен быть один человек. 3-х она просто себе не может позволить.
Last edited by stenking on 23 Feb 2016 01:18, edited 1 time in total.
Бога нет.
inock
Уже с Приветом
Posts: 10741
Joined: 23 May 2006 03:59
Location: New world

Re: Тупые вопросы на собеседовании

Post by inock »

Стенка, ответь на один вопрос.
Ты инджой лайф или нет?
User avatar
stenking
Уже с Приветом
Posts: 14455
Joined: 26 May 2006 02:39

Re: Тупые вопросы на собеседовании

Post by stenking »

inock wrote:Стенка, ответь на один вопрос.
Ты инджой лайф или нет?
Редко а точнее почти никогда. Но я хочу верить что когда-то это изменится.
Бога нет.
MCP
Уже с Приветом
Posts: 752
Joined: 09 Sep 2005 21:43

Re: Тупые вопросы на собеседовании

Post by MCP »

stenking wrote:
MCP wrote: Стенкин, вы тратите в среднем не больше 5 мин = 300 сек чтобы просмотреть 600 строчек кода, т.е. 0.5 сек на 1 строку. И этого хватает не только на то чтобы понять насколько хорошо/красиво код написан а еще и на то чтобы понят что все 600 строчек необходимы и нелзя было вместо них написат 300 строчек имплементировав при этом ту же функциональность?
Мы говорим о разных вещах. Код ревью проходит несколько стадий - моя именно задача - смотреть кто что делает, как решаются основные задачи и постаратся остановить явные проблемы которые неизбежны при приходе новых людей, нескольких кросс-команд. Например кто-то пишет ТимеЦонвертер класс какой-то вместо того что бы использовать уже существующую Царбон или Момент.йс библиотеку. Кто-то пытается узнать какая таймзона и начинает писать код, но я знаю что в другом саб проекте нужна будет аналогичная функциональность - значит нужно например делать микросервис который эту тайзону будет отдавать через АПИ по айпишнику. А откуда тайзоны брать то? Можно скачать локально а можно брать у Гугла и кешать у себя - у него отличный АПИ есть который УЖЕ локализирован. Т.е. простая на вид задача - спросить таймзону пользователя превратилась в более сложную - определить дефолтную таймзону в мультиязычном проекте через микросервис используя готовый АПИ гугла.

А тут ОтхерСиде начинает писать огромную квирю которую никто никогда не сможет раздебажить, даже он сам через месяц - необходимо его остановить и искать другой вариант. Потому что ОтхерСиде её напишет конечно за свои 2 дня и она может будет даже работать неплохо на 10М рекордов. А при 10Б которые ожидаются через полгода нужно будет переделывать. Поэтому может нужно будет денормализировать базу или искать какой-то вариант в УИ с постепенным построением/подгрузкой графика. Ой - нам же всё равно нужно завтра аналитика то - может уже подсчитаную дату брать оттуда? Так одна задача неплохо решается новой системой аналитики которая получает зелёный свет. И за эти 2 дня ОтхерСиде делает 5-ку новый таблиц и скрипты которые постоянно эту аналитку считают. И его огромная и страшная квиря уже не нужна. Бомба обезврежена и инвесторы получают дополнительную печеньку.

Поэтому не нужны графики и репорты, не нужна всякая лапша и "уже почти сделано" - код ревью прекрасно заменяет всё это. Да это занимает час а то и два в день. Ещё как минимум столько же занимает игра с этой всей функциональностью что бы почуствовать качество, понять что готово а что ещё сырое, убедится что бизнес логика именно такая какая ожидается. Что можно показать инвесторам или отдавать на ЪА а что нужно дорабатывать.

В том что я говорю нет ничего особенного, во многих компаниях есть и продукт овнеры и архитекты и лиды которые очень внимательно смотрят код. Иначе получается именно то стандартное глюкавое г-но о котором говорит Мальчик-Одуванчик. Просто в компании у которой есть 3М на 2 года это всё должен быть один человек. 3-х она просто себе не может позволить.
я понял о чем вы говорите а кто-нибудь (вы или продукт овнер или кто-то еще) анализирует код написанный программерами с той точки зрения что он именно писал только то что необходимо в этих 600-700 строчках закомиченных им за 1 день (а не так что 300 строчек программер выстрадал за 7 часов скажем и там все работает а еще 300 строчек откуда-то скопировал по кускам из своих или чужих комитов за прошлый месяц за пол часа и вторые 300 строчек вобще никогда выполнятся не будут или даже если выполнятся то никакого смысла в них нет). Мне кажется что если программеры знают что один из главных критериев оценки их работы - количество закомиченных строк то некоторые из них могут легко пойти на такие уловки.
User avatar
Kolbasoff
Уже с Приветом
Posts: 3481
Joined: 02 Jan 2005 22:10

Re: Тупые вопросы на собеседовании

Post by Kolbasoff »

stenking wrote:Мы говорим о разных вещах.
Дружище Стенкин, ты все делаешь правильно. Просто иногда тебя начинает заносить с конями, царями, верными рыцарями, смердами и прочeй средневековой атрибутикой. И тогда у нас, бывалых ратников разной степени успешности, возникает огромное желания тебя немножко потроллить. Ведь не тебе ли хорошо знать, что как только у любого американского предприятия появляется хоть малюсенький шанс поднять реальные деньги, верные рыцари идут на йух в первых рядах, что бы благодатный денежный свет на них не пролился. Ведь платят за еще не сделанную работу, а они уже свою работу сделали.
User avatar
stenking
Уже с Приветом
Posts: 14455
Joined: 26 May 2006 02:39

Re: Тупые вопросы на собеседовании

Post by stenking »

MCP wrote: я понял о чем вы говорите а кто-нибудь (вы или продукт овнер или кто-то еще) анализирует код написанный программерами с той точки зрения что он именно писал только то что необходимо в этих 600-700 строчках закомиченных им за 1 день (а не так что 300 строчек программер выстрадал за 7 часов скажем и там все работает а еще 300 строчек откуда-то скопировал по кускам из своих или чужих комитов за прошлый месяц за пол часа и вторые 300 строчек вобще никогда выполнятся не будут или даже если выполнятся то никакого смысла в них нет). Мне кажется что если программеры знают что один из главных критериев оценки их работы - количество закомиченных строк то некоторые из них могут легко пойти на такие уловки.
Да конечно. Лиды просматривают все PR очень внимательно.

А вы думаете я буду продолжать работать с кем-то кто позволит себе такую мерзость? Одно дело если там кто-то немного LOCс нагонит не в ущерб качеству - тогда можно поговорить, посмеятся и попросить больше так никогда не делать. А другое сознательное вредительство - это вполне себе причина для увольнения.
Бога нет.
User avatar
Komissar
Уже с Приветом
Posts: 64875
Joined: 12 Jul 2002 16:38
Location: г.Москва, ул. Б. Лубянка, д.2

Re: Тупые вопросы на собеседовании

Post by Komissar »

Easbayguy wrote:Учитывая обстоятельства, что Stenking продолжает работать кнутом
Это не кнут, а ответственность. Прибавочная стоимость на 99% все равно идет старперам-фаундерам.
User avatar
Sergunka
Уже с Приветом
Posts: 34164
Joined: 03 Dec 2000 10:01
Location: Vladivostok->San Francisco->Los Angeles->San Francisco

Re: Тупые вопросы на собеседовании

Post by Sergunka »

stenking wrote:
MCP wrote: Стенкин, вы тратите в среднем не больше 5 мин = 300 сек чтобы просмотреть 600 строчек кода, т.е. 0.5 сек на 1 строку. И этого хватает не только на то чтобы понять насколько хорошо/красиво код написан а еще и на то чтобы понят что все 600 строчек необходимы и нелзя было вместо них написат 300 строчек имплементировав при этом ту же функциональность?
Мы говорим о разных вещах. Код ревью проходит несколько стадий - моя именно задача - смотреть кто что делает, как решаются основные задачи и постаратся остановить явные проблемы которые неизбежны при приходе новых людей, нескольких кросс-команд. Например кто-то пишет TimeConverter класс какой-то вместо того что бы использовать уже существующую Carbon или Moment.js библиотеку. Кто-то пытается узнать какая таймзона и начинает писать код, но я знаю что в другом саб проекте нужна будет аналогичная функциональность - значит нужно например делать микросервис который эту тайзону будет отдавать через API по айпишнику. A откуда тайзоны брать то? Можно скачать локально а можно брать у Гугла и кешать у себя - у него отличный API есть который УЖЕ локализирован. Т.е. простая на вид задача - спросить таймзону пользователя превратилась в более сложную - определить дефолтную таймзону в мультиязычном проекте через микросервис используя готовый API гугла.

А тут OtherSide начинает писать огромную квирю которую никто никогда не сможет раздебажить, даже он сам через месяц - необходимо его остановить и искать другой вариант. Потому что OtherSide её напишет конечно за свои 2 дня и она может будет даже работать неплохо на 10М рекордов. А при 10Б которые ожидаются через полгода нужно будет переделывать. Поэтому может нужно будет денормализировать базу или искать какой-то вариант в UI с постепенным построением/подгрузкой графика. Ой - нам же всё равно нужно завтра аналитика то - может уже подсчитаную дату брать оттуда? Так одна задача неплохо решается новой системой аналитики которая получает зелёный свет. И за эти 2 дня OtherSide делает 5-ку новый таблиц и скрипты которые постоянно эту аналитку считают. И его огромная и страшная квиря уже не нужна. Бомба обезврежена и инвесторы получают дополнительную печеньку.

Поэтому не нужны графики и репорты, не нужна всякая лапша и "уже почти сделано" - код ревью прекрасно заменяет всё это. Да это занимает час а то и два в день. Ещё как минимум столько же занимает игра с этой всей функциональностью что бы почуствовать качество, понять что готово а что ещё сырое, убедится что бизнес логика именно такая какая ожидается. Что можно показать инвесторам или отдавать на QA а что нужно дорабатывать.

В том что я говорю нет ничего особенного, во многих компаниях есть и продукт овнеры и архитекты и лиды которые очень внимательно смотрят код. Иначе получается именно то стандартное глюкавое г-но о котором говорит Мальчик-Одуванчик. Просто в компании у которой есть 3М на 2 года это всё должен быть один человек. 3-х она просто себе не может позволить.
Мой диагноз - перестаньте набирать дрочеров которые не общаются с коллегами и не смотрят чужой код. То что Вы говорите должен уметь делать любой чел на проекте. Если чел не умеет это делать нахрен Вы вообще его наняли?
"A patriot must always be ready to defend his country against his government." Edward Abbey
User avatar
stenking
Уже с Приветом
Posts: 14455
Joined: 26 May 2006 02:39

Re: Тупые вопросы на собеседовании

Post by stenking »

Kolbasoff wrote:И тогда у нас, бывалых ратников разной степени успешности, возникает огромное желания тебя немножко потроллить.
Да ладно, не ты один любишь тролить :)
Бога нет.
ts
Уже с Приветом
Posts: 1595
Joined: 11 Mar 2004 16:09

Re: Тупые вопросы на собеседовании

Post by ts »

stenking wrote:
OtherSide wrote: Я уже 200 раз написал, что мне система не нравится ни как программисту, а как менеджеру. В своей компании я бы такое внедрять не стал. Эффективность нужно мерять качеством решенным задач, мерять в строках кода априори глупость.
Хотя кто знает, что у вас там за проекты. Если клепаете интернет магазины по 500 долларов штука, может оно и работает
Хорошо, а расскажите как меряете еффективность вы? Вот у вас 20 программистов на удалёнке, притом минимум с половиной вы расстанетесь через месяц. Каким таким "качеством решенным задач" вы будете это мерять?
Да тот же аджайл будет получше того чем ЛОКи считать. Раздробил задания, оценил те же points, потом банально смотришь velocity. В первый раз слышу что в 21 веке люди ЛОКи считают, ни одной компании не знаю где такое практикуется.
User avatar
Sergunka
Уже с Приветом
Posts: 34164
Joined: 03 Dec 2000 10:01
Location: Vladivostok->San Francisco->Los Angeles->San Francisco

Re: Тупые вопросы на собеседовании

Post by Sergunka »

stenking wrote:Вот у вас 20 программистов на удалёнке, притом минимум с половиной вы расстанетесь через месяц.
Сурово там у Вас не забалуешь.
"A patriot must always be ready to defend his country against his government." Edward Abbey
User avatar
Sergunka
Уже с Приветом
Posts: 34164
Joined: 03 Dec 2000 10:01
Location: Vladivostok->San Francisco->Los Angeles->San Francisco

Re: Тупые вопросы на собеседовании

Post by Sergunka »

ts wrote:
stenking wrote:
OtherSide wrote: Я уже 200 раз написал, что мне система не нравится ни как программисту, а как менеджеру. В своей компании я бы такое внедрять не стал. Эффективность нужно мерять качеством решенным задач, мерять в строках кода априори глупость.
Хотя кто знает, что у вас там за проекты. Если клепаете интернет магазины по 500 долларов штука, может оно и работает
Хорошо, а расскажите как меряете еффективность вы? Вот у вас 20 программистов на удалёнке, притом минимум с половиной вы расстанетесь через месяц. Каким таким "качеством решенным задач" вы будете это мерять?
Да тот же аджайл будет получше того чем ЛОКи считать. Раздробил задания, оценил те же points, потом банально смотришь velocity. В первый раз слышу что в 21 веке люди ЛОКи считают, ни одной компании не знаю где такое практикуется.
У меня был прикол - я правил баг в МобиТВ целую неделю. Полностью вжился в код посмотрел логи за пару лет. Потом посмотрел на чудо которое этот код писало и исправил одну только строчку.

Чудо уже к этому времени доросло до директора инжиниринга и кинулось ко мне с предъявой как можно было писать одну строчку в течении целой неделе.

На что я как человек терпеливый и внимательный показал чудо, что это его код, что еще год назад он открывал этот баг на себя и отрапортовал, что баг пофиксен при этом не предъявив никаких тому доказательств и что еще пара человек получала этот баг в наследство пока этот чудо-индо баг не докатился до меня и йа-йооо его фиксанул.
"A patriot must always be ready to defend his country against his government." Edward Abbey
OtherSide
Уже с Приветом
Posts: 15812
Joined: 01 Mar 2008 15:14
Been thanked: 1 time

Re: Тупые вопросы на собеседовании

Post by OtherSide »

Ну когда баги правишь так обычно и выходит 0.5-2 дня на 1-2 строчки
User avatar
fruit6
Уже с Приветом
Posts: 4207
Joined: 10 Jan 2004 01:22
Location: n-sk -> MD -> VA

Re: Тупые вопросы на собеседовании

Post by fruit6 »

У стенкинга вы бы оба вылетели неуспев исправить баг.

Return to “Работа и Карьера в IT”