Старое место работы. Все сборы позади. Последний рабочий день. Осталось сдать ноутбук, предварительно подчистив данные на нем. Закрываешь крышку. Все, ты готов к последнему шагу: к пьянке с теперь уже бывшими коллегами и, возможно, друзьями. К тебе смущенно подходит близкий коллега и спрашивает: "ну и куда ты теперь?". И ты объясняешь ему, куда. Попутно помогают тебе раскупорить шампанское или пиво. И вот ты уже наливаешь себе бокал и понимаешь, что завтра ты уже здесь работать не будешь. Тебе грустно, но надо двигаться дальше, ведь это твой выбор...
Ты знаешь, что ты оставил кучу незакрытых задач. Их невозможно все закрыть: все время добавляются новые и новые. У тебя всегда были дедлайны. Ты бы и с радостью сделать все правильно и хорошо, чтобы не стыдно было за свой код. Чтобы можно было гордиться и говорить — это я написал. Но дедлайны и обещания… Они все портили. Приходилось срезать углы и вколачивать костыли буквально кувалдой, чтобы хоть как-то заработало. Но теперь уже это в прошлом. Пусть другие люди разгребают это, я умываю руки. Вперед, к новому коду, к новом команде. Уж там-то все будет по феншую и как надо.
Новое место работы. Тебе дают новенький ноутбук, о которым ты только мечтал. Показывают новое рабочее место и знакомят с командой. Все очень приветливые и приятные люди. Не коллектив, а сказка. Садишься за удобное кресло. Первое задание. Ты в предвкушении. Открываешь крышку ноутбука, читаешь его. Ничего не понятно. Новый язык, новый продукт, все новое. Настраивать окружение надо как минимум день, а то и больше. Сложность зашкаливает. Но ты справляешься и решаешь задачи одну за одной. Все работает как часы, инструменты удобные и мощные. Ты радуешься, что работаешь в команде профессионалов и используешь самые модные и надежные инструменты. Единственный вопрос, который ты себе задаешь: WTF? Почему в других местах все по-другому?
Знакомо такое? И мне тоже нет.
Не бывает идеальных мест, где бы все устраивало. Где был бы идеальный коллектив. Где были бы удобные и стабильные инструменты. Где не было бы дедлайнов. То, что мы имеем — всегда результат компромисса между умелостью команды, грамотным руководством, финансовой составляющей, технической частью и окружения. Это всегда компромисс. Который заслужила команда и проект. В наших силах сделать это лучше или хуже. Если ты умелый программист — то твоя задача сделать проект лучше и решать накопившиеся и будущие проблемы. Если начинающий — чтобы фичи добавлялись и как-то работали. Чем лучше будут присматривать, тем лучше и качественнее работать.
Мир неидеален. И даже в совершенных инструментах есть совершенные ошибки. Ошибки другого уровня. Но ошибки. Чем сложнее продукт, тем больше проблем. Можно уменьшать плотность ошибок, но никогда нельзя их свести к нулю.
Несовершенство преследует нас. Оно — часть окружающего мира. Можно болтаться как известная субстанция, показывать пальцем и говорить — тут говно. Но от этого говно не перестанет быть таким. Мы можем его трансформировать во что-то другое. А можем и приумножить. Мы такие, да.
Все ошибки делаются из-за отсутствия чего-то. Отсутствия времени, старания, знаний, в конце концов. Тебе кажется, что ты умный и сделал крутую штуку. Но найдутся и поумнее тебя и покажут, что можно было бы сделать еще лучше. Что ты — не совершенен. Пора признать очевидное. И идти дальше. И попытаться сделать окружение вокруг чуточку лучше, а потом еще.
А все рассуждения насчет ума и интеллекта ничего не стоят. Что с того, что кто-то мудак и написал мудацкий код? Можно показывать на это пальцем и ругаться. Мир этого не заметит. Лишь мы сами меняем то, что вокруг. Меняем этот мир.
Так какая разница, с чего начинать?
Комментарии (52)
evocatus
27.10.2018 10:21Насчёт «с чего начинать» объясняет хорошая русская пословица: «с кем поведёшься, от того и наберёшься».
Zettabyte
27.10.2018 11:01+7Для завершения трилогии осталось написать «Презумпцию безразличия/пофигизма», в которой рассказать, что хауноу присутствует в окружающей жизни из-за того, что тот или иной разработчик забил на какую-либо деталь(-и).
А в заключении предложить не обращать на него внимания как в целом, так и в частности, потому что сегодня — суббота. Тем самым цикл «good / bad / neutral» замкнётся :)
third112
27.10.2018 14:04Тебе кажется, что ты умный и сделал крутую штуку. Но найдутся и поумнее тебя и покажут, что можно было бы сделать еще лучше. Что ты — не совершенен. Пора признать очевидное.
Факт, что в кодинге, т.е. в реализации готовых алгоритмов в программы, трудно (м.б. невозможно) однозначно определить многие базовые вещи: нпр., наилучший стиль программирования, наилучший ЯП и т.д. В алгоритмике (и в математике) гораздо точнее: был Евклид и был Эратосфен, они сделали свои алгоритмы задолго до появления ЭВМ, и до сих пор никому не удалось переплюнуть. М.б. и сейчас такой, лучше которого никто не сможет сделать?Stas911
27.10.2018 17:21А уж когда встает выбор использования сторонних сервисов — так вообще туши свет
GeMir
28.10.2018 00:27и был Эратосфен […] до сих пор никому не удалось переплюнуть
Это решето-то Эратосфена не «переплюнули»?
Разве что для относительно небольших простых чисел ;)third112
28.10.2018 18:40Да, это математическая традиция: чтобы не быть слишком многословным приходится использовать нестрогие слова — вроде «переплюнуть»;) Конечно, аудитория вправе потребовать разъяснений. Разъясняю: подразумевал значение решета Эратосфена для математики и CS. Его, это значение, трудно переоценить, нпр., для начала можно посмотреть список источников в вики — сколько всего вокруг наверчено.
javamain
27.10.2018 14:07-12Бабло конечно очень сильный матив поменять место работы. Но нужно вспоминать и о старении организма при перемене места работы. Я заходил на свою старую работу и там все как всегда… народ почти не постарел.
Да и надо понимать, что на работе годами оттачивают набор тулзов для программирования. Шаг в сторону — побег, прыжок — попытка улететь.
Ни кому не хочется что-то менять все за постоянство. Если на работе хорошо, то что же ее менять. Просто надо просить прибавки упирая на то что инфляция не стоит на месте, продукты в магазине дорожают. За частую и на старой месте работы после просьбы прибавки можно получить для себя новую роль.boblenin
27.10.2018 19:44+3Упор на то, что «инфляция и продукты» работает в обе стороны. Вы серьезно считаете, что это сильная позиция при торге? Как часто вам удавалось получить скажем 20% прибавки используя такую аргументацию?
SongOfBird
28.10.2018 10:10-1Для повышение платы вы должны доказать что ваши знания и навыки выросли и вы приносите компании больше денег. Аргумент по инфляции не сильно прибавит вам зарплату. Хотя возможно я ошибаюсь?
Skerrigan
28.10.2018 11:33+2Ну, чисто у меня такая логика: делали и делаем N-работы, работодатель за неё имеет F-профита. Со временем цена на услуги повышается. Как раз та самая пресловутая инфляция. И работодатель чем это мотивирует для клиента? Тем, что «все дорожает».
Так вот, исполнитель (наемный сотрудник) как раз является ощутимой компонентой в статье расходов.
И теперь, барабанная дробь: а какого фига требуется еще что-либо, чтобы просто сохранять тот же ППС на этой работе за N-«выполненных задач»?
И прежде чем дадите мне ответ, прошу сразу задуматься — «а откуда тогда работодатель будет брать те самые 1,5 ставки для нового сотрудника»?!
Да как раз вот оттуда — цену за услуги он то поднял, а «вам» (фигурально выражаясь) с каждым днем получается он стал платить все меньше и меньше за вашу «одну и ту же работу» (sic!)
P.S. В противном случае, при «типичной-абсурдной экстраполяции» мы будем иметь, что «надо будет через N-лет уже нести слитки золота в фирму, и все равно это будет оплачиваться 500гр хлеба — а фигу иначе давать прибавку то?!»
qw1
28.10.2018 11:34+1А если знания и навыки НЕ выросли, но из-за инфляции зарплата стала ниже рыночной?
Можно, конечно, сразу пойти в соседнюю фирму и получить там рыночную, а можно сказать о проблеме работодателю, а он уже пусть решает — должен ли я обосновывать прибавку, или могу спокойно идти в другую фирму, если обосновать не чем.yudinetz
29.10.2018 15:12Лучше уходить. В момент, когда вы осознаете, что ваша зп стала ниже рынка (хотя мне интересно еще кто готов работать за зп «по рынку» вместо того, чтобы попытаться получить «выше рынка» в компании напротив через дорогу), вы все еще будете продолжать работать на старого работодателя, а значит, с момента старта работы и до этого момента вам не доплачивали (вам же не индексируют каждый год или месяц, вам для этого надо идти и кланяться работодателю). Допустим, вам сматчат зп на размер инфляции. Но ведь инфляция не дремлет, через месяц ваша зп уже будет снова ниже, чем была. Зачем работать там, где постоянно недоплачивают?
roscomtheend
29.10.2018 16:59Все не могут работать выше рынка, ибо первые ушедшие будут ниже рынка(и как раз им станут недоплачивать), есть психологический момент перехода, начиная от «оторвать задницу» и продолжая влитием в новый коллектив (у некоторых проблемы). Зачастую это «больше через дорогу» компенсируется этой стоимость ежедневного попадания «через дорогу» (т.е. по факту недоплачивать будут именно там, кто будет рваться на место, где за то же платят по итогу меньше?) и прочими антиплюшками, которое может предложить новое место. Не говоря о проектах (не все работы идентичны).
roscomtheend
29.10.2018 10:09> старении организма при перемене места работы
Что? Это откуда такое?
> Ни кому не хочется что-то менять все за постоянство
Точнее — некоторым, а некоторых не корми, а дай перемен.
> надо просить прибавки упирая на то что инфляция не стоит на месте
И получать отказ (у нас кризис и прочее) и всё равно менять работу. Можно начать менять работу и узнать что тебе или не предлагают остаться или предлагают такой малый рост зп, что просто смешно (по сравнению с ростом на новом месте). Или условия труда лучше становятся, а на старом месте не улучшаются (не смотря на просбьы сотрудников).
> можно получить для себя новую роль
В корпорации с кучей отделов, в небольшой конторе (на полсотни человек) есть куда расти только снизу, когда ты — ведущий специалист, то расти можно только наружу. И да, иногда руководство не готово стараться даже под угрозой риска потери такого специалиста.
PS. Понял про старение — иллюзия что изменения каждый день — не изменения. На новом мест коллектив может оказаться как моложе, так и старше (не всем идти в хипстерские молодёжные тусовки, на производстве программисты могут быть и за 50).
PPS. Ого! 30 минут на редактирование.
Zenitchik
27.10.2018 16:22+2> Я заходил на свою старую работу и там все как всегда… народ почти не постарел.
«Я забыл в кругу ровесников сколько лет пройдено».
Иллюзия это.
roman_kashitsyn
27.10.2018 17:24Что, Гриша, тоскуешь по Яндексу? О чём статья-то? Я ничего не понял.
P.S. А, это ответ на другую статью, которая тоже ни о чём. Извини тогда. Как тебе Erlang после C++?
gridem Автор
27.10.2018 18:22+5Что, Гриша, тоскуешь по Яндексу?
По коллегам.
О чём статья-то? Я ничего не понял.
Статья о том, что везде говнокодеры.
Как тебе Erlang после C++?
Эрланг — отличный. Уникальный язык. Все никак не соберусь написать отдельную статью.
gshamshurin
27.10.2018 20:53+3Мне кажется, для «ответов» под каждой статьёй есть раздел «комментарии».
Представьте, что у Вас нет полноправного аккаунта и Вы запостили эту статью в «песочницу».
Как думаете, Вам бы выдали за неё приглашение?
В ней есть хоть крупица полезной информации по теме хабов, которые Вы указали?gridem Автор
27.10.2018 21:36+4Представьте, что вы — ворона, клюющая хлебушек около лавочки. Вам бабуся подбрасывает еще хлебушек. И тут налетает стая ворон и начинает отнимать этот хлебушек.
Как вы думаете, смогли бы вы выжить в этой ситуации?
YourChief
27.10.2018 22:00-2Не ровён час, кто-то может наконец догадаться, что перемены снаружи начинаются с перемен внутри и без кардинального изменения отношения к происходящему можно прыгнуть только из одного чана с дерьмом в другой. Ну и цитатку приведу до кучи:
Безумие — это точное повторение одного и того же действия. Раз за разом, в надежде на изменение. Это есть безумие.
— Альберт Эйнштейн
FreeBa
28.10.2018 01:59+1Такое чувство что написано просто про дотнет. Когда приходишь в него, первое впечатление — ух ты, все работает из коробки, не нужно
долбится в стенугероически превозмогать несовершенство инструментов. Но чем больше с ним работаешь тем больше вылезает недоработок, казалось бы всеобъемлющего инструмента (пусть и на единственной платформе).
Сначала, как затравку, тебе начинает кидать в лицо NPE маппер EF, особенно если дело касается дат, которые являются value-типом и не могут быть null (нет MSSQL не застрахован от этого), вроде бы пустяк, мелочь. С кем не бывает. Поднимаемся на следующий уровень абстракций и бац — .net заявляет что это "?? ??????? ????" фраза на русском и переубедить его весьма не просто, может быть я подзабыл родной язык, но это не похоже даже на глаголицу, которую пользовали наши предки (возможно баг в Unicode 6.0, но я далеко не эксперт).
И чем дальше идешь тем больше таких совершенно неожиданных ошибок встречаешь, да они сосредоточены в закоулках дотнета, куда заглядывает раз в год два с половиной анонимуса. И тем не менее это очень точно соответсвует посылу статьи, первый взгляд/ожидания идеала — никогда не соответсвуют реальности. Под капотом всегда запрятан шайтан, а в шкафу кладбище скелетов.
Это не плохо и не хорошо, просто так есть.gridem Автор
28.10.2018 02:54Тут даже дело не в только в конкретных технологиях, сколько в том, что не всегда очевидны последствия тех или иных решений. Когда решаешь очередную задачу, сразу встает следующая, которую тоже неплохо было бы решить. И этот процесс идет непрерывно.
Решая одну проблему тут же упираешься в другую. Она была сразу, но маскировалась другой, более важной проблемой. Грубо говоря, есть процесс, который состоит из стадий. Оптимизируешь самую долгую стадию, тут же возникает узкое место в другом месте. Оптимизируешь и его, всплывает третье. Так и в разработке.
qw1
28.10.2018 10:00Сначала, как затравку, тебе начинает кидать в лицо NPE маппер EF, особенно если дело касается дат, которые являются value-типом и не могут быть null
Вообще никогда не было с этим проблем, что code first, что database first, EF и генерирует код сDateTime?
, и обратно, из моделей/классов создаёт разный тип столбца дляDateTime?
иDateTime
.net заявляет что это фраза на русском
Неужели есть функция определения языка сообщения? )))FreeBa
28.10.2018 15:16Неужели есть функция определения языка сообщения? )))
В дотнете и не такое имеется)) Но конкретно в этом случае он такой не единственный. Можете вбить эту фразу в гугл-переводчик, выбрать автоопределение языка и выбрать перевод на русский.
ainoneko
29.10.2018 10:19Поднимаемся на следующий уровень абстракций и бац — .net заявляет что это "?? ??????? ????" фраза на русском
Проблемы индейцев, но не Апачей?
corochoone
28.10.2018 02:49-2Да, к сожалению, так у нас программисты обычно и работают. Накодил и свалил. Я сам не программист, а админ, но иногда админы, как бы это странно не звучало, учат разработчиков как нужно разрабатывать. Проблема в том, что у нас (как и у большинства) много кодеров, но мало программистов. Почему-то забыли, что программирование — это искусство построения красивых АЛГОРИТМОВ. Не запись алгоритмов на каком-то языке программирования — это кодирование, а именно построение алгоритмов. Да, кодировать тоже надо уметь: уметь оформить код, писать комментарии, делать код понятным другим людям, но всё же… Давече, разбираясь с неким PHP-framework'ом задал вопрос нашим разрабам: как лучше организовать расширение предполагаемого продукта: задействовать хуки в коде или оперировать регистрацией событий через базу данных? Спросил нескольких людей, но ни один из них не смог чётко и грамотно объяснить плюсы и минусы и рассказать о best practice по этому вопросу. Разработчики на PHP могут попросить установить им node, потому что они хотят работать с Gulp, но при этом не могут догадаться, что при получении 500-ки нужно для начала почитать логи веб-сервера, а не кричать «админы помогите» у меня площадка не работает! Тему можно было бы продолжить…
s_suhanov
28.10.2018 15:13Тему можно было бы продолжить…
Но явно не стОит. )))corochoone
28.10.2018 19:18+1Угу. Тему читают в остновном разрабы — это видно! Вон как заминусовали — обидно админ написал! :)
fpinger
28.10.2018 04:11+1Крылья, ноги. Главное — хвост!
Каждое существо своё страдание создаёт через своё сознание. Но мы уверены, что сознание других существ создаёт наше страдание.Kutak
28.10.2018 04:51+1Пелевинщина какая-то. Нет никакого страдания. Как нет и никаких существ. Есть бабочка, видящая сон обо всём этом.
xinQ
28.10.2018 21:16То, что мы делаем всегда трактовки будущей цели с требуемыми компромиссами по ее реализации во времемени между результатами работы членов команды при субъективных приоритетах руководства в части финансовой и технической составляющих при неизвестном переменном давлении внешнего окружения, поэтому представления каждого об этом мире субъективны и туманны, а мир кажется не идеальным, но именно поэтому хочется свои задачи осуществлять лучше, разумнее и понятнее, давая от этого надежду другим стать немного лучше, ориентируясь в первую очередь на ближнее окружение …
Как итог: но то, что мы потом имеем, это факт биологической неизменяемости как человека, так и социума, поэтому как говорят «надежда умирает последней», – сказала Надежда и умерла…
Egorkkk
29.10.2018 11:28олег за всё берётся смело
всё превращается в говно
а если за говно берётся
то просто тратит меньше сил
dipsy
dom3d
А на новую работу многие уходят ради развития, хотя некоторые ради денег.
roscomtheend
Иногда и то и другое. Иногда ситуация меняется — владелец попадает под трамвай и новое руководство видит всё иначе. Возможных вариантов больше, чем пальцев на конечностях замлянина.
dom3d
Вы правы, конечно.
У меня были разные варианты и новое начальство и завершение работ по большому контракту…
Stas911
Дык это известный прикол. Думаю в 99% случаев никто не будет заморачиваться мотивацией уходящего сотрудника и просто наймут нового за 1.5 ставки прошлого.
IgorRJ
Так это же готовый бизнес-план. Устраиваем ротацию себя любимых и получаем профит!
putnik
Многие потому и меняют работу каждые пару лет, что проще выбить себе 1,5 ставки при смене работы, чем оставаясь на том же месте. Но есть и обратная сторона — HR'ы не очень любят, когда у вас каждый год-два новое место работы.
0xd34df00d
Потому что там технологический стек новее и мне есть чему поучиться в интересной мне области.