Я сейчас активно ищу работу, прохожу собеседования и иногда работодатели присылают тестовые задания, прежде чем пригласить на интервью. В очередной раз мне прислали  простенькое тестовое задание, в целом много таких похожих: из списка вершин построить дерево.  Write a python function that builds a tree based on a list of tuples of id (parent id, offspring id), where None is the id of the root node. How this should work: source = [ (None, 'a'), (None, 'b'), (None, 'c'), ('a', 'a1'), ('a', 'a2'), ('a2', 'a21'), ('a2', 'a22'), ('b', 'b1'), ('b1', 'b11'), ('b11', 'b111'), ('b', 'b2'), ('c', 'c1'), ] expected = { 'a': {'a1': {}, 'a2': {'a21': {}, 'a22': {}}}, 'b': {'b1': {'b11': {'b111': {}}}, 'b2': {}}, 'c': {'c1': {}}, } assert to_tree(source) == expected  И мне вдруг подумалось, а как хайповый chatGPT мог бы справиться с таким полуреальным, но вполне полезным для меня, заданием? Мысль пришла, а руки уже искали информацию, как прорваться к chatGPT из России. Спустя какое-то время прорвался и прям в лоб, ничего не меняя в тексте задания, отправляю тестовое и с интересом жду.  Довольно быстро chatGPT пишет мне ответ со своим решением и даже что-то объясняет.  Выглядит на первый поверхностный взгляд правдоподобно, смущают некоторые моменты, но это вполне код. Запускаю этот код в Python и естественно он не работает. С чувством превосходства человеческого интеллекта над бездушной машиной, пытаюсь выдавить еще что-то из chatGPT и прошу проаннотировать типы. Он более-менее справляется. Прошу оценить алгоритмическую сложность. В целом, он правильно оценивает, как O(n*n)  и даже дает советы, как улучшить - используй, говорит, специализированные структуры данных.  Я тоже не промах, и прошу его самого улучшить код с точки зрения алгоритмической сложности. И это чудо выдает мне что-то очень странное.  После этого спешу к другу разработчику, чтобы за глаза песочить chatGPT за криворукость и тупость. В процессе снисходительного обсуждения мы приходим к мысли, что вообще-то работа разработчика на половину состоит из правильной постановки задачи. С этой мыслью и с чуть угасшим чувством собственного превосходства, я решил чуть поправить решение chatGPT используя его же совет по использованию специальных структур данных.  И отправляю ему этот код. На что chatGPT замечает, что такое решение лучше и чуть ли не хвалит меня. Спасибо, конечно, chatGPT, но давай уж тогда работать дальше. После того, как этот сложный для задачи момент мы совместными усилиями решили, а моя спесь ушла, работа пошла гораздо легче.  Попросил написать тесты - он написал несколько неплохих. Попросил написать тесты с неформатными входными данными - тоже напридумывал кое-что. Попросил обновить решение, чтобы тесты с неформатными входными данными проходили - он снова дописал блоки кода. То же самое мы с ним провернули с разными другими пограничными условиями. Конечно, что-то приходилось ему подправлять по-дружески. Мы ж друзья стали. Ну и в конце попросил его подробно описать алгоритмическую сложность по времени и по памяти, с чем он тоже справился.   Остались последние штрихи, но тут chatGPT устал - слишком много запросов в час, так и сказал.  Что ж, в таком виде я решение и отправил работодателю. Жду теперь ответа. В итоге опыт получился интересным и, как мне кажется, chatGPT может стать хорошим инструментом в помощь разработчику, он может брать на себя какие-то тривиальные и рутинные операции на своем уровне абстракции, а самому разработчику придется учиться четче ставить задачи, ревьюить код и выстраивать архитектуру.  Есть новости! Работодатель ответил, что в целом код прошел ревью, но были какие-то сомнения в теме того, что позиция не предусматривает ML/AI задач, к которым я в целом стремлюсь. Но, учитывая это, предложили следующий этап интервью. Так что мы с chatGPT успешно прошли этот нулевой этап! Но следующим письмом работодатель написал, что они увидели эту статью и отказали! С формулировкой, что если бы хотели нанять речевую модель, то так бы и сделали. На лицо дискриминация искусственного интеллекта! Мы, кожаные мешки, еще устроим этому ИИ второе луддитское движение! А в целом хочу еще и публично извинится перед работодателем за этот эксперимент и надеюсь в нем будет больше пользы, чем шутки. Ниже курсивом комментарий от работодателя по итогам всей затеи, без купюр, прямая цитата, с разрешения работодателя.   Отвечает создатель тестового: Это, конечно, лучше чем 90% присылаемых решений, но всё равно они даже вместе с роботом родили шляпу. Кстати, чтоб пользоваться тем, что даёт бот, надо уметь читать много чужого кода, а это сложнее, чем писать мало своего. От себя как HR добавлю, что если бы вы предупредили об использовании GPT, мы бы, скорее всего, оценили искренность. В ином случае даже на собеседование не позвали бы. Начинать отношения с обмана - такое себе :)