Записи с темой: упорядочение хаоса как профессия (52)
пятница, 19 сентября 2025
20:14
The woods are lovely, dark and deep
На работе продолжается хардкор. Одна коллега бьётся с исходниками кастомной операционной системы, другая коллега занимается реверс-инжинирингом формата аудиозаписи, разбирая его по байтам, а я пишу низкоуровневую (то есть тоже по байтам) сериализацию команд по протоколу, тоже восстановленному методом реверс-инжиниринга, в котором угрожающее количество полей имеет название unknown Мы - команда аутсорсеров, (за деньги) мы можем всё
Уже привычным становится автоматически анализировать тексты коллег, чтобы выявить, насколько и где они написаны ИИ, а насколько человеком. Пока что разница довольно чёткая: - ИИ по умолчанию склонен структурировать текст, разбивая его на пункты с 2-3 уровнями вложенности - При этом смысл структурируется обычно нечётко - есть пересечения в содержимом этих пунктов - Отличный, правильный английский язык (по крайней мере, для не носителя ) и особая, ИИшная версия русского языка с вкраплениями корявостей, хорошо заметных носителю.
Мне нравится, сколь дивные рабочие задачи иногда прилетают: у коллег, с которыми ты не знакома и чей уровень понимания системы тебе не известен, спроси детальные технические подробности реализации компонента, в котором ты не разбираешься и вообще только вчера узнала о его существовании.
Коллеге сегодня в офис привезли из Китая образец техники, с которой мы работаем. Упаковано устройство было в деревянный на вид короб. Не просто абы как сколоченный ящик, а мощный такой коробище, укреплённый по всем рёбрам рейками и металлическими уголками, и вдобавок ещё немножко рейками поперёк самых больших граней. Хотели уже сегодня начать тестировать на устройстве, но упаковка уж очень надёжная. Коллега писала, что собирается привезти из дома монтировку, чтобы это как-то открыть
Коллега сегодня написал комментарий к merge request: "зачем нам эта штука, если у нас всегда 14 ведро". Если вы не погружены в мир андроида хотя бы до некоторой степени, то, возможно, звучит загадочно. Комментарий, конечно, абсолютно понятен и однозначен в контексте того кода, к которому относился, но я подумала ещё вот о чём: с некоторых пор я стараюсь не писать такую дичь вообще ни при каких обстоятельствах, потому что мне важна чистота и ясность мышления. А подобные корявые формулировки ни чистоте, ни ясности не способствуют.
На этой неделе участвовала ещё в двух собеседованиях, опыт продолжает быть интересным! Попался кандидат, который вроде бы немало знал, судя по некоторым обрывкам фраз, но совершенно не умел выразить свои мысли словами. После собеседования вместе с коллегой дружно повздыхали о том, что не удалось вытащить из него знания и потому не можем его рекомендовать к найму. Я, конечно, могу быть предвзятой, но мы с коллегой, как мне представляется, создаём достаточно доброжелательную атмосферу. Вообще коллега тот ещё критик, но на собесах разговаривает мягко. Ну а я вообще иначе и не разговариваю Плюс гендерное распределение даёт бонус - женщин меньше опасаются в силу имеющегося менталитета. Поэтому надеюсь, что мы хотя бы не усугубляем стрессовую ситуацию.
Первый этап собеседования у нас - заполнение небольшой анкеты, в которой есть десяток коротких технических вопросов, где нужно либо выбрать верный вариант\варианты, либо написать кусочек кода (1-3 строки), либо прокомментировать кусочек кода (тоже в итоге 1-3 строки текста). После изучения полутора десятков таких анкет у меня всё большее недоумение вызывает вопрос: почему эти ребята не пользуются нейросетью? Это самоуверенность? Им работа не нужна? Это лень? Они хотят проверить свои знания "честным" способом? Несмотря на то, что вопросы в анкете не слишком коварны, бОльшая часть кандидатов не проходит эту проверку.
Я сама, когда коллега попросила проревьюить анкету, заполняла её с помощью нейросети, поскольку точно знала, что либо не помню, либо не знаю бОльшую часть необходимой теории (ну теперь уже знаю), и нейросеть выдала верные ответы.
Когда я устраивалась в эту компанию, тоже была анкета, только ИИ тогда не было, и я старательно переписывала, переводя на русский, нагугленную документацию. Ну правда, зачем из головы выковыривать знания, если анкета оффлайновая? Заполняй её хоть полчаса, хоть час, проверь на три раза, максимизируй свои шансы на успех.
Особенно озадачивает, когда человек в списке вариантов выбирает два взаимоисключающих. То есть даже нетехническому специалисту чисто по тексту вариантов ответа должно быть очевидно, что они взаимоисключающие. Ладно, допустим, действительно можно ошибиться случайно, со всеми бывает. Но из полутора десятков анкет, которые я просмотрела, такую ошибку сделали двое (!). Я пока затрудняюсь предположить, с чем это связано. Молодые люди умеют смотреть видео, но не умеют читать?
Наконец добралась на работе до собеседований! Давно хотела попробовать, но не было необходимости в найме в наш пул. Сегодня участвовала в первом собеседовании - в основном наблюдала, дабы учиться на опыте старшей коллеги. Потом обсуждали с ней кандидата. Она умеет определять, когда человек читает с экрана, а вот я не заметила этого, но буду учиться! Самое большое неудобство заключается в том, что последние два года или даже больше я занимаюсь Flutter'ом, а собеседование было на андроид-разработчика. То есть я эту платформу подзабыла уже конкретно, так что собеседование это я бы точно завалила Поэтому за несколько последующих рабочих дней я планирую изучить восстановить в памяти ВСЁ некоторое количество тем, чтобы можно было без активации синдрома самозванца вести техническую часть собеседования. Организационную часть планирую попробовать уже завтра - конечно, под присмотром коллеги. Чем-то похоже на супервизию
Когда я читаю про минусы удалёнки, то радуюсь тому, что я как-то обошла эти минусы стороной. У меня выстроился блендинг между work-life balance и work-life blending Рабочее время отслеживаю по таймеру, но начало и конец рабочего дня не фиксированы. Я могу немного больше или меньше времени уделить работе в течение дня, в зависимости от своих планов, но в сумме за неделю это одинаковое количество. Рабочее время вписано в мой режим дня - немного между завтраком и обедом, побольше между обедом и ужином, немного после ужина. Тут нужно учесть, что я ем с интервалом в 3 часа, и после ужина есть ещё второй ужин Ещё до обеда у меня перерыв на физические упражнения. Иногда отвлекаюсь на мелкие домашние дела, на поиграть с кошкой. Но в основном стараюсь крупные бытовые задачи решать в другое время, чтобы рабочий день не затягивался. Избегаю работать после полуночи, потому что тогда во сне снится код Я не хочу писать код во сне.
У меня нет сложностей с тем, чтобы перестать работать после окончания рабочего времени. Я не раз читала, что иногда люди не могут остановиться и продолжают делать задачу за задачей, и меня это удивляет (не как психолога, а как личность). Если оплаченное время закончилось, то зачем продолжать работать? Если это не ночь перед релизом, конечно, и прочие форс-мажоры. Форс-мажоры - это отдельная тема. Но в норме, если задач больше, чем успеваешь делать за день, то их нужно делегировать или обсуждать с руководством, как себя разгрузить. Я пока обходилась делегированием. В остальном же, если задача не срочная, то нет никакого смысла пытаться успеть сделать то, что можно отложить. Повышение производительности за счёт увеличения рабочего времени - это путь к выгоранию.
Моя рабочая машина - это мой домашний компьютер. Мне раньше было немного некомфортно от того, что личное и рабочее пространства совмещаются, но со временем это ощущение ушло, и теперь, когда я закрываю рабочие приложения, я чувствую, что я вышла из рабочего пространства, пусть и вижу перед собой тот же самый рабочий стол. Как-то в моём сознании это разделяется. Раньше на переключение требовалось много времени, а сейчас это происходит очень быстро - рабочее время закончилось, рабочие задачи из моего мозга тут же выгрузились. Я редко о них вспоминаю вне рабочего времени.
Сегодня обедала во время созвона и участвовала в обсуждении. Всегда по пятницам так делаю, потому что часовой созвон по времени совпадает со временем обеда, а я не хочу обед сдвигать на час, это нехорошо для желудка. Подумала - отличная работа! Сижу в комфортной домашней обстановке, ем вкусную домашнюю еду, а время-то считается как рабочее! К слову, походу я сегодня во время созвона подписалась на одну интересную инициативу, посмотрим, что из этого выйдет.
С прошлой недели на работе перепиливаю в проекте использование одного пакета навигации на другой. Ощущается как совершенно бессмысленное переливание из пустого в порожнее, но при этом слишком сложное, чтобы его можно было поручить нейросети, потому что для этого нужно держать в голове 1) принципы работы первого пакета 2) принципы работы второго пакета 3) самописную обёртку над первым пакетом (которая, разумеется, не подходит ко второму), сделанную довольно-таки криво (я надеюсь, что основная кривизна появилась уже после моего ухода с проекта, а не до Я там была аутстаффом-лидом) 4) бизнес-логику приложения (все возможные переходы между экранами). На данный момент я выступаю в роли аутстаффа - линейного разработчика, и мне кажется, что лид проекта принципиально выбил бюджет под меня (а платят за меня как за лида, а не как за разраба) только для того, чтобы я занималась этой дичью, в которой неподготовленный индивид легко утонет Я просто уже успела побарахтаться и выплыть, потому что ранее много занималась навигацией на других проектах. Так что мне в целом понятно, что делать. А нынешний лид пришёл на проект позже и теперь ему непонятно, что мы там нагородили и как это переписывать. И в новом пакете навигации он тоже не очень шарит, как мне показалось. Не в смысле, что он некомпетентен, просто, видимо, не имел с этим дела. Так-то у него хватает сложных задач, с которыми он успешно справляется. За последние пару лет я наблюдаю во всех проектах, что навигация - это та часть архитектуры, сделать которую хорошо занимает какое-то невероятное количество усилий. Но за эту работу платят хорошую денюжку. Мне кажется, что это какой-то баг системы, но я не буду на это жаловаться
На созвоне сегодня обнаружился классический эпик-фэйл: релиз приложения, откладываемый с сентября (серьёзно, они планировали выпустить приложение в сентябре!), вновь застопорился из-за того, что на бэке внезапно(!) обнаружили, что две имеющиеся у них системы авторизации не коннектятся друг с другом. Я посмеялась, убедившись, что мой микрофон замьючен. Лид бэка был печален, лид мобилки не сдержался и прокомментировал ситуацию в печатных, но обидных выражениях. Поэтому мы и занимаемся рефакторингом (не в релизной ветке, если вы вдруг об этом подумали), потому что со стороны мобилки всё готово.
Проводила сегодня для коллег семинар на тему "внутренний критик". Отношение к этому у меня двойственное. С одной стороны, мне интересно попробовать и убедиться, что я это могу. Что я могу провести интересный семинар, что я в процессе не буду умирать от тревожности, а буду уверенно его вести, отвечать на вопросы, к которым я была не готова, спокойно относиться к тому, что где-то сбиваюсь с мысли или не неточно формулирую, или почувствовала неуверенность или ещё что-то пошло не так. При этом именно желания его проводить у меня нет Желания как, например, желание прогуляться в парке или посмотреть фильм. Или как желания сделать ремонт То есть это и не работа - потому что семинары не относятся к моим обязанностям, это полностью моя инициатива, - но и не удовольствие или отдых. Челлендж. Способ убедить себя, что я достаточно устойчива. Но и способ проявиться - просто потому, что я не могу не. Считаю, что челлендж прошла достойно. В процессе я быстро вошла в хорошее состояние, в котором чувствовала себя достаточно уверенно и если уж не внимание аудитории, то своё собственное внимание точно держала. У меня был текст, но я старалась не зачитывать, а говорить. Когда зачитываешь - это слышно, и это скучно слушать. Живая речь включает. Участников было человек 15, из них несколько активных, которые отвечали в чате на вопросы и давали обратную связь. В целом, конечно, тут беда в том, этой обратной связи очень немного, и неясно, насколько моя речь была интересной\вовлекающей и т. п. И вот дальше, с одной стороны, у меня есть чёткое намерение продолжать, а с другой - нет желания как чувства. Намерение лежит вне сферы эмоций. Ну или иными словами, есть разные части личности, у которых разное отношение к семинарам.
Я уж подумала, что было бы интересно собрать фокус-группу, участники которой дали бы гарантированно обратную связь, но где бы её такую взять Кто хочет бесплатный семинар на какую-нибудь интересную тему за обратную связь?
Коллега на работе на новом проекте всё время такой деловой, обеспокоенный и серьёзный. Вообще не помню, чтобы он смеялся (а может просто не помню, надо бы последить). Рабочей коммуникации это не мешает, но ужасно интересно, отслеживает ли он эту свою позицию, находится ли в ней осознанно и почему. В теории - это прямой путь к выгоранию. Но, конечно, гарантию дать не могу, потому как нужно оценивать баланс личности целиком, а не один фактор.
На работе сотрудников поздравлял Дед Мороз Зачитывал письма от коллег с поздравлениями, это было очень весело! Потом, как обычно выступали основатели компании, рассказывали о результатах и планах. Основная мысль - год был сложным, но мы справились, надеемся, что следующий будет легче, и давайте работайте по 8 часов Ну в том смысле, что не расслабляйтесь и приносите компании прибыль. Ладно, я думаю, просто не нужно говорить о том, что большинство людей не могут работать 8 часов, это норма, и это никакими словами изменить невозможно Но я надеюсь, что дело просто в том, что этот руководитель постоянно имеет дело с разными нестандартными и кризисными ситуациями, и он встречал и таких сотрудников, которые какое-то время вообще не работали, ни 8 часов, ни вообще хоть сколько-то, и это произвело на него впечатление. Таки-я оказалась в списке лучших докладчиков, на 2 месте. Учитывая, что за год было довольно много семинаров (наверное, полтора-два десятка), это здорово. Планирую продолжать. Хорошо бы ещё купон на маркетплейс какой-нибудь дали, как раньше. Конечно, я не за награду эти семинары провожу, а потому, что мне это интересно. Но купон всё равно был бы нелишним! Завтра последний рабочий день перед НГ. Жаль, что на вокал не поеду. Привыкла уже, что по субботам у меня такой неспешный день поездки\прогулки и обед в кафе, где некоторые официанты уже меня запомнили и знают, что я всегда одно и то же заказываю. Эта субботняя прогулка разгружает психику. Я стараюсь поменьше втыкать в телефон. Правда, при этом всё равно хожу глубоко в своих мыслях
Очередной пост из серии "люблю свою работу" Коллега нарисовал разноцветную схему зависимостей между модулями нашего проекта. Как любителю прекрасного она мне понравилась, а как разработчик я до сих пор в ужасе, что мы такое нагенерили. Наш диалог: - Красиво! Отличное занятие для вечера пятницы, как мне кажется. Как раскраска-антистресс. - "Принимаю заказы на эскизы DI Ваших проектов"
(Пояснение: DI - dependency injection, внедрение зависимостей)
На работе в последние две недели активно пользуемся нейросетью. Задача наша в том, чтобы прикинуть реализацию некоторых доработок в кастомной сборке операционной системы андроида. Поскольку мы не имели раньше дело с исходниками самой ОС, то нейросеть - отличный способ ускорить работу. Это быстрее, чем гуглить и копаться в исходниках. Конечно, гуглить и копаться в исходниках потом всё равно приходится, но всё же полезно сначала пообщаться с нейросетью и получить общее представление об интересующих нас компонентах и конкретные ответы на вопросы, которых нет в официальной документации. Далее уже можно проверять, что из этого правдоподобное враньё, а что имеет соответствия в открытых источниках. Даже не представляю, сколько времени мы бы на это потратили без ИИ.
На работе продолжается квест с CI. CI, а, точнее, CI\CD - это continuous integration \ continuous delivery. Если по-простому, то это система, когда коммитишь код в репозиторий, и новая сборка автоматически появляется у тестировщиков спустя некоторое время. Так вот, возвращаясь к процессу. Со сборкой происходит что-то непонятное? Девопсы заняты? Доступ через удалённый рабочий стол не работает из-за лагов корпоративного впн? Доступ по ssh не настроен? Не беда, ведь к терминалу есть доступ через СБОРОЧНЫЕ СКРИПТЫ! (Которые запускаются в как раз в терминале) Это примерно как удалять гланды через жопу, но в принципе можно. Потом, к счастью, ssh включили. P. S. Пофиксили всё.
Люблю свою работу Вчера внезапно пишет в чат архитектор смежного направления - мы тут чиним CI, он вам очень нужен? Будет плохо работать какое-то время, но не больше суток. Я: о_О Ну ок. То есть сборки все у нас отвалились. А я как раз в рамках своей задачи чинила сборку ветки именно на CI (локально ветка собиралась без ошибок). Пока эта задача будет стоять и ждать починки CI, я задолбаюсь мёржить туда основную ветку и фиксить конфликты (потому что это была глобальная задача, которая затрагивала ВЕСЬ проект), но что ж, такова жизнь. Через день: мы всё починили, только давайте ещё переименуем вот эти сущности. Я: да, давайте! Итог: архитектор, я и девопс дружно пребываем в недоумении, потому что всё снова отвалилось и вообще ведёт себя очень странно. В понедельник продолжим. Я тоже люблю, чтобы всё было красиво (сущности назывались правильно), но красота требует жертв
Когда-то давно я думала, что есть задачи, которые мне не по силам, и с ними шла к лиду в надежде, что этот умный человек знает решение и разберётся. Со временем я осознала, что "не по силам" - по большей части иллюзорное ограничение, и разобраться можно если не с чем угодно, то почти со всем. Конечно, это вопрос времени и вложенных усилий, но если копать глубоко, долго и упорно, то ситуация обычно проясняется. Теперь коллеги, бывает, идут с вопросами ко мне Я не чувствую себя умным человеком, который знает решение, но я знаю, что у меня достаточно упорства и инициативности, чтобы штурмовать проблему.
Помню, как-то коллега из компании заказчика удивился тому, что я смёржила конфликт, который по его мнению был слишком сложным Я, честно говоря, до этого времени не подозревала, что бывают слишком сложные конфликты и что можно с ним не справиться Собственно, смёржить-то не проблема, вопрос в том, насколько после этого поломается смёрженное А бояться ломать я уже перестала давно. Если это не ночь перед релизом в прод, то потом найдём и пофиксим. И вот сегодня опять ковырялась в дебрях бэкенда - скоро, наверное, уже смогу претендовать на позицию джуна или мидла Я, правда, не планирую, и вся идея в том, чтобы заставить эту хрень работать для продолжения наших флаттерных экспериментов. Наткнулась на очень странный баг, и полдня с ним разбиралась, пока неуспешно. Продолжу в понедельник.
А ещё сейчас с подозрением смотрю на коллег, которые на созвонах не задают вопросов. Обычно они ещё какую-нибудь дичь делают время от времени, потому что чего-то не поняли, и работают от забора и до обеда. Даже если такой человек ответственный исполнитель, но работать всё же приятнее с инициативными индивидами, которые задают вопросы и если видят в коде косяк, то сообщают об этом.
Вообще у меня двойственные впечатления от своего рабочего места. С одной стороны, это интересно и занимательно - я сегодня не сразу выковырила себя из дебага в конце дня. С другой стороны, что-то совершенно бессмысленное есть в том, чтобы накапливать знания о фреймворках, которые постоянно устаревают и ужасно далеки от физического мира - как будто бы я занимаюсь какой-то искусственной хренью. С одной стороны, мне нравится "играть" в аутсорсную разработку, с другой - сами условия аутсорса не очень комфортны и некоторые индивиды реально не выдерживают, потому что это конвейер, где сроки и бюджет постоянно довлеют, где сотрудники весьма ограничены в выборе проектов и задач, где часто переключают внезапно между проектами, где нужно соблюдать массу регламентов и тщательно отслеживать потраченное на задачи время. Часто нет времени и возможности для творчества, на то, чтобы глубоко вникнуть в задачу - потому что это бизнес, это деньги заказчика, а он финансирует результат, а не творческий процесс. Само по себе это не токсично, но похоже, что для работы в этих условиях нужно обладать некоторой психологической устойчивостью. И не у всех она есть.
Знаете, есть разработчики, которые когда им укажешь на косяк в pull request в одном месте, исправляют его во всех местах этого же pull request. А есть такие, которые исправили ровно в одном месте, и всё Бесит ужасно Типа, пиши, дорогой лид, в каждом из десяти мест отдельный комментарий на одну и ту же доработку.
AI определённо полезен, когда нужно писать код на не очень знакомом языке. Когда я знаю, что хочу написать, но не уверена в синтаксисе и возможностях языка\платформы, потому что в первый раз вижу всю эту хрень. Так что с его помощью пишу на Go обработку сетевых запросов, запросы на SQL и скрипты для Postman (утилита для тестирования сетевых запросов). Мне очень нравится наша сложившаяся мини-команда, силами которой мы разбираемся с бэкендом (хотя, напомню, мы мобильщики, а не бэк). Я переписываю один микросервис, коллега другой, а ещё одна коллега настраивает деплой на тестовый стенд. Я нередко встречала на различных ресурсах жалобы от разработчиков на бессмысленные созвоны, и рада, что у нас созвоны нужны для синхронизации, и мы их проводим не формально, а обсуждаем рабочие задачи и обмениваемся опытом.