Интеграции
Чем старше становлюсь, тем больше понимаю ворчащих дедов, с которых орал по неопытности. Ну типа как можно терпеть 'true' в приходящем JSON'е? Конечно же надо найти этого бекендера и высказать ему всё в лицо, и руки оторвать, чтобы больше такой код не писал.
Хорошие были времена, когда сам себе и бекендер и фронтендер. Апи ни с кем согласовывать не надо, захотел на фронте подстроился, а если не красиво выходит — то на беке поправил. Кайф!
Но в крупняке всё не так. Если интеграция между командами — ещё терпимо, но если между компаниями, то пиши пропало: на согласование изменения одного символа может уйти месяцы. А если у вас пайп, где часть систем написана динозаврами, то даже мыслей не может быть об улучшении апи — только обмазываться адаптерами и чтобы хотя бы на своей стороне адекватной структурой оперировать.
А вот недавно обратный случай был:
Случилась авария — к нам в систему из пайпа вместо отсутствия параметра стал прилетать параметр с null. А в контракте его либо быть не должно вовсе, либо он должен быть валидной структурой. С нашей стороны невозможно понять кто из поставщиков данных изменил API и насколько осознанно это было сделано. И вроде правильно выяснить кто сломал и заставить его вернуть как было. Но прод то лежит, поэтому эффективнее на своей стороне адаптироваться под изменения, а потом уже искать виноватых.
Так и живём.