• работа IT Вот я пришёл в компанию работать. У них был монолитный API-сервер, написанный на PHP с использованием Laravel. Всё по науке, кругом JSON-схемы, валидация и прочая орхитектура. База данных MySQL, миграции настроены, всё через ORM, всё автодокументировано, любо-дорого смотреть. Я не фанат пыхи, но грамотно спроектированное решение радует глаз, тем более, что оно рабочее.

    Наняли JS-макаку из Аргентины. Синьора Хуана, ну вы помните. Сказали ему пилить новый функционал.

    Ну он возомнил себя фулл-стеком, и решил продать начальству идею майкросёрвисов. Был выбор — или чуточку подпилить пару эндпоинтов в PHP-монолите, или запилить новый майкросёрвис с парой десятков эндпоинтов, в основном повторяющих старый функционал, но добавляющих незначительное количество нового. Вы, я думаю, уже поняли, каков был выбор.

    Синьор Макака стал, отстреливаясь задней пяткой от фронтэнд-багов, с нуля педалить корявый микросервис на Node, используя аргентинский диалект JS (даже не TS). О если бы вы знали, насколько индусский код аккуратнее и читабельнее того, что я обнаружил под завалами его рухнувшей карьеры! В качестве базы данных наш примат, ессно, выбрал вебскейл, не ну а чо. Выебнуться, так по полной. Ему, правда, сказали, выставить наружу JSON-схемы, чтобы православные юзеры могли сгенерировать клиенты. Он и выставил: наполовину переврал, наполовину недоделал, да ещё и с ошибками индентации в YAML.

    Деплоймент своего хайли-авайлабельного сервиса усатый товарищ не осилил, поэтому тупо залил его на персональный бесплатный Heroku-аккаунт и стал использовать в проде. Ну, чтобы отсодомировать уже по-взрослому.

    Закончилось это просранным дедлайном и самоувольнением конкистадора в белом пальте.


    Вместе со мной пришёл украинский бекендер, который первое, что сделал, это хотя бы завернул всё в докер и стал деплоить в ECS. Для поддержки штанов, тскть. Но когда я стал разбираться с тем, что́ делает сервис, я понял, что это просто была попытка переписать заново уже готовый и работающий функционал, поспешно, коряво и не разбираясь в том, что этот функционал и как на самом деле должен творить.

    Маленький штришок к портрету. VSCode обычно даже без тайпскрипта уже умеет в навигацию по членам класса, импортам итд через Ctrl+click или F12. Хуанито умудрился написать свой "код" так, чтобы отучить IDE от этого. Синьор постарался. Две текилы для этого синьора!
    ♡ recommended by @IRT, @juick  and 1 others

Replies (3)

  • @janPona, ставь лойс, если узнал себя в описании
  • @janPona, Как вообще в одно рыло можно продать микросервисы? Либо он гениальный продаван, либо егойное (т.е. теперь твое) начальство — золотая рыбка
  • @BradleyManning, А ведь ты прав. И главный недостаток золотой рыбки: она таки исполняет желания.