Катя Кондратьева
2.99K subscribers
271 photos
33 videos
2 files
145 links
Back dev, CTO & Founder
Строю IT-продукты и карьеры людей.
Connect: @ekondratyeva

Чат - https://t.me/+lP-2wcuEAm1kNzIy
Download Telegram
Осень! Кажется пора проснуться и успеть что-то сделать из целей на год. Накачаться например…

(Я ела хлеб, зефир и пряники всю прошлую неделю)

На выходных будет стрим
❤35🔥15🍌94😁32
3 сентября - день прощания

Символично, что лучшее время в году для изменений начинается с этой фразы.

Получить бенефиты в одной сфере можно только, отказавшись от кучи других. Нужно все время и внимание вливать в одну цель - тогда результат будет.

Отказывать себе в вещах, которые для большинства базовый минимум - норма, если стоит цель это большинство обогнать.


Друзья, всем, кто еще не выбрал приоритеты - желаю их найти. А тем, кто нашел - сил их придерживаться.
❤31🔥1261
Ты прощаешься с hr из Шмяндекса, получив приглашение на нормальный собес (это b2b ai криптостартап )

*ИИ никак не влияет негативно на умственные способности разработчиков
**можете проголосовать, чтобы я больше никогда не пела - 🍓
🍓25❤13🔥62
This media is not supported in your browser
VIEW IN TELEGRAM
❤36🔥14🍓9😁53🍌2
Сентябрь - карьерный Новый год. Как найти работу до декабря

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

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

Череда сокращений по компаниям продолжает идти и лучше подготовиться


08.09 18:30 🔔🔔
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥18❤10🍓53😁1
This media is not supported in your browser
VIEW IN TELEGRAM
❤33🔥15🍓8🍌3😁22
С днем программиста, друзья!

Как круто, что у нас есть возможность создавать что-то новое, воплощать любые свои задумки в реальность и постоянно исследовать неизвестное, углубляясь в те дебри, куда большинство дойти не может.

Для кого-то это аутистический спектр - но для меня это умение держать фокус и не распыляться.

Я вами восхищаюсь!
1🔥52❤16😁5🍓32
AI написал код. Примешь такой PR?

На стриме в пятницу в 19:30 буду разрабатывать функциональность для Polymorpher с помощью Codex.

Пройдём весь путь: от постановки задачи до работающей реализации. В финале проведём ревью получившегося PR и решим, готов ли этот код к продакшену.

По ходу разработки разберём:
— как сформулировать задачу и дать агенту контекст проекта;
— какую работу ему поручать и где подключаться самому;
— на что смотреть в сгенерированном коде;
— как корректировать результат, если агент пошёл не туда;
— как проверить, что функциональность работает.

Буду объяснять свои решения и отвечать на вопросы из чата. Посмотрим, где агент ускоряет работу, где требует правок и сколько внимания разработчика нужно, чтобы довести задачу до результата.

Лайк авансом и колокольчик на стрим 🔔
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥34❤1151
Друзья! Стрим переносится на среду 🙏🏻

На следующей неделе должен быть готов крупный видос. Стараюсь поставить на рельсы регулярную публикацию контента - пока в проработке.

Тяжко выстраивать системную работу + в последнее время все больше накатывает желание уехать куда-то, где очень тепло и играть в теннис/бегать круглыми сутками под солнечным пеклом. Но пока не вариант кажется, хотя может все таки перекроет и поеду. Надо будет только рабочее место как-то настроить.
❤15🔥4🍓44
Почему PostgreSQL откатывает изменения разных строк

Вспомнила вопрос с недавнего собеса и решила разобрать в канале.

Две транзакции меняют разные счётчики, но одна из них всё равно может завершиться ошибкой. Причина в том, как база отслеживает захват объектов.

Пример: таблица counters(id PRIMARY KEY, value), без триггеров и связей с другими таблицами. Обе транзакции работают в SERIALIZABLE. Сначала выполняются оба SELECT, затем оба UPDATE и попытки COMMIT:

-- Транзакция T1
SELECT value FROM counters WHERE id = 1;
UPDATE counters SET value = value + 1 WHERE id = 1;

-- Транзакция T2
SELECT value FROM counters WHERE id = 2;
UPDATE counters SET value = value + 1 WHERE id = 2;


SERIALIZABLE обещает результат успешных транзакций как будто транзакции выполняются последовательно.

Для проверки база запоминает, кто какую область читал. Эти отметки - SIReadLock - не блокируют запись. Они помогают заметить, что чужое изменение затронуло прочитанные данные.

Пример: T1 прочитала старое значение, а T2 его изменила. Значит, в последовательном выполнении T1 должна быть раньше T2. Иначе она увидела бы новое значение. Так появляется зависимость T1 → T2.


При Seq Scan - последовательном чтении таблицы - отметка чтения ставится на всю таблицу, хотя запрос меняет одну строку.

Поэтому база учитывает две зависимости:

- T1 меняет строку 1 → задевает отметку T2 → T2 должна быть раньше T1.
- T2 меняет строку 2 → задевает отметку T1 → T1 должна быть раньше T2.

Требования противоречат друг другу. PostgreSQL отклоняет одну транзакцию с ошибкой serialization_failure, код 40001.

Это ложный конфликт: счётчики можно изменить в любом порядке, но широкая отметка связала две независимые операции.

Чтение через индекс может сузить отметку до строки/страницы и тем самым уменьшить число конфликтов. Поэтому при разборе таких откатов полезно проверить план выполнения запроса. Но полностью исключить конфликты нельзя: приложение должно уметь при ошибке 40001 повторить всю транзакцию, включая чтения.

классная статья про блокировки в постгрес

#production_case
1🔥17❤761
Катя Кондратьева
Почему PostgreSQL откатывает изменения разных строк Вспомнила вопрос с недавнего собеса и решила разобрать в канале. Две транзакции меняют разные счётчики, но одна из них всё равно может завершиться ошибкой. Причина в том, как база отслеживает захват объектов.…
Знаю, что выглядит сложно, но я объясню вам, братья и сестры, зачем это нужно

Конечно же, чтобы продавать такие продакшен-кейсы как собственные интересные задачи на собеседовании.

Сохраняйте и не забудьте упомянуть, рассказывая про интересный опыт на интервью.
1🔥147❤6🍓3
This media is not supported in your browser
VIEW IN TELEGRAM
🔥28❤116🍌21
GPT Pro 20X больше не купить

Я не слежу за появлением новых моделей или обновлением существующих. Однако эта новость для меня важна, потому что я сама использую кодекс в разработке и всегда рекомендовала именно этот инструмент.

Купить новую подписку теперь можно только на версию за 100 баксов, где лимит на токены в 4 раза меньше. Есть жалобы и в комьюнити, и среди моих знакомых, что лимиты тратятся намного быстрее, чем раньше. И сейчас не хватает даже двух подписок Pro-версии для закрытия рабочих задач.

Тратить 40к, чтобы просто закрыть задачи по работе - не самая привлекательная перспектива.

У меня текущий план Pro 20X, буду его дальше продлевать и следить за динамикой. Но кажется, самое время начать искать альтернативные решения.

P.S. Стрим, где я пишу код с кодексом, опять переносится, планирую также на среду 🙏🏻
Искренне извиняюсь перед всеми, кто ждал, но зато чем больше будет моя подготовка к нему, тем должен быть качественнее результат.
❤26🍓54🌭1
Достала из архива
Были времена!
❤32🔥13😁95🍌2🍓1
Channel name was changed to «Катя Кондратьева»
600 баксов в месяц за ChatGPT?

Недавно писала, что подписку Pro за 200 баксов больше не купить.
Теперь у истории появилось продолжение: ChatGPT Pro Max будет стоить $600.

Это пока утечка. Официального подтверждения цены и даты запуска я не нашла.
Есть предположения, что в новом плане акцент будет на скорости работы агентов. Грустни, бесконечных лимитов ждать не стоит(

Надеюсь мне не придется переходить на тариф выше из-за урезания текущего 🙂
22❤5😁3🍌22
Сегодня впервые за 20 лет российский спортсмен Сергей Данилов выступил на самом престижном турнире по бодибилдингу «Мистер Олимпия»

Я тренируюсь как любитель, но слежу за профессиональным спортом и для меня это событие имеет значение.

Сергей действительно огромный: при росте 187 см он выглядит буквально как мутант. К этому турниру он шёл более 10 лет, проведённых в жёстких тренировках, тяжёлом массонаборе и использовании фармакологии.

Спортсмен не обладатель классной генетики, его пропорции не подходят для Classic Physique. Поэтому чтобы достигать успеха в спорте, ему приходилось раскачиваться до гиганстких размеров и выигрывать за счета количества мышечной массы.

В 18 лет у него был инфаркт. После него бодибилдер восстановился и снова вернулся к подготовке. Главная мотивация тренироваться дальше - выйти на Олимпию.

Тренировочный план бешеный, а поднимаемые веса огромны и несвойственны человеку; очевидно, что организму подобное долго не выдержать. Однако на интервью Данилов говорит, что это не имеет значения: ради того, чтобы оказаться на Олимпии, он готов умереть. В принципе, в мире бодибилдинга практика доживать до 30–40 лет распространена.


Сегодня он добился своей цели. Ради этих полутора минут на сцене были потрачены больше десяти лет жизни. К сожалению, он не вошёл в топ-10.

Поздравляю Сергея с этим достижением. И благодарю за то, что своим примером он напоминает, какую цену порой приходится платить за свои желания.

Возможно, не всякое дело стоит доводить до конца. И речь не только про спорт. К сожалению, чем дольше мы идём к цели, тем сложнее признать, что сама цель могла перестать быть нам нужна.


Например, может быть, не обязательно несколько лет пытаться попасть в Яндекс или FAANG. Возможно, необязательно стараться расти внутри компании до уровня руководителя. Может быть, вам не нужно пытаться занять место C-level менеджера, особенно с учётом того, что политику компании выбираете не вы и не можете влиять на стоимость акций, процентом от которых мечтаете владеть.

Необязательно ждать пока корабль утонет, с него можно спрыгнуть раньше.
🔥44❤219😁22