Учиться у тех, кто сам не перестаёт учиться ✨
Друзья, всем привет! 👋
Мы продолжаем делиться с вами важными новостями из жизни нашей онлайн-школы! 📚
В январе мы писали пост о получении лицензии Минобразования. Но решили на этом не останавливаться! 😉
Денис и Павел прошли профессиональную переподготовку и получили квалификацию «педагог дополнительного образования»! 🎓🎉
Да-да, теперь мы не только крутые практики с многолетним опытом в разработке, но и дипломированные преподаватели! 🔥
И это не просто «красивая бумажка» — это подтверждение того, что мы умеем и можем обучать на уровне, соответствующем государственным стандартам. 💪
Каждый из нас пришёл в преподавание своей дорогой:
🔶 Денису предложили провести внутреннее обучение в QIWI, где он тогда работал 💼
🔶 Павел ещё в университете больше прислушивался к предпринимателям, которые иногда приезжали читать лекции.
Со временем мечта превратилась в хобби, которое, в свою очередь, выросло в полноценную онлайн-школу. Поэтому получение педагогического образования стало логичным шагом на пути к развитию. Ведь одно дело — объяснять «на пальцах» в узком кругу, а совсем другое — выступать перед широкой аудиторией и подавать материал так, чтобы «понял даже лабрадор», как любит говорить Денис. 😉
Что это даёт онлайн-школе❓
🔸 Более качественные и гибкие программы с учётом методических стандартов
🔸 Прозрачность и легитимность — особенно важно для корпоративного обучения
🔸 Авторитет. У кого вы предпочтёте учиться:
— у человека, который «и швец, и жнец, и один в поле воин»,
— или у команды, которая постоянно развивается, получает дополнительное образование и привлекает таких же энергичных, объединённых общей идеей инженеров?
А что это даёт вам — нашим студентам❓
✅ Уверенность в том, что вы учитесь у тех, кто знает не только «как работает», но и как объяснить «так, чтобы дошло».
✅ Эффективные обучающие программы: никакой воды, только то, что действительно помогает развиваться.
✅ Индивидуальный подход: мы знаем, что все студенты индивидуальны, поэтому адаптируем стиль и содержание уроков под ваши способности и потребности. 🎯
Что же дальше❓
Дальше — ещё интереснее! 🤟🏻
Мы уже работаем над запуском новых курсов, где обязательно применим наши новые знания и навыки. А ещё усиливаем команду и продолжаем делать качественный контент, чтобы вам было ещё легче и увлекательнее учиться. 🌟
Спасибо, что вы с нами! ❤️
Идём дальше 🚀
#oracle #карьера #диплом #сертификация #эксперт #plsql
Канал Oracle Developer | Чатик💬
Мини-курс Оптимизация: Быстрый старт 🚀
Друзья, всем привет! 👋
Мы продолжаем делиться с вами важными новостями из жизни нашей онлайн-школы! 📚
В январе мы писали пост о получении лицензии Минобразования. Но решили на этом не останавливаться! 😉
Денис и Павел прошли профессиональную переподготовку и получили квалификацию «педагог дополнительного образования»! 🎓🎉
Да-да, теперь мы не только крутые практики с многолетним опытом в разработке, но и дипломированные преподаватели! 🔥
И это не просто «красивая бумажка» — это подтверждение того, что мы умеем и можем обучать на уровне, соответствующем государственным стандартам. 💪
Каждый из нас пришёл в преподавание своей дорогой:
🔶 Денису предложили провести внутреннее обучение в QIWI, где он тогда работал 💼
🔶 Павел ещё в университете больше прислушивался к предпринимателям, которые иногда приезжали читать лекции.
Со временем мечта превратилась в хобби, которое, в свою очередь, выросло в полноценную онлайн-школу. Поэтому получение педагогического образования стало логичным шагом на пути к развитию. Ведь одно дело — объяснять «на пальцах» в узком кругу, а совсем другое — выступать перед широкой аудиторией и подавать материал так, чтобы «понял даже лабрадор», как любит говорить Денис. 😉
Что это даёт онлайн-школе❓
🔸 Более качественные и гибкие программы с учётом методических стандартов
🔸 Прозрачность и легитимность — особенно важно для корпоративного обучения
🔸 Авторитет. У кого вы предпочтёте учиться:
— у человека, который «и швец, и жнец, и один в поле воин»,
— или у команды, которая постоянно развивается, получает дополнительное образование и привлекает таких же энергичных, объединённых общей идеей инженеров?
А что это даёт вам — нашим студентам❓
✅ Уверенность в том, что вы учитесь у тех, кто знает не только «как работает», но и как объяснить «так, чтобы дошло».
✅ Эффективные обучающие программы: никакой воды, только то, что действительно помогает развиваться.
✅ Индивидуальный подход: мы знаем, что все студенты индивидуальны, поэтому адаптируем стиль и содержание уроков под ваши способности и потребности. 🎯
Что же дальше❓
Дальше — ещё интереснее! 🤟🏻
Мы уже работаем над запуском новых курсов, где обязательно применим наши новые знания и навыки. А ещё усиливаем команду и продолжаем делать качественный контент, чтобы вам было ещё легче и увлекательнее учиться. 🌟
Спасибо, что вы с нами! ❤️
Идём дальше 🚀
#oracle #карьера #диплом #сертификация #эксперт #plsql
Канал Oracle Developer | Чатик
Мини-курс Оптимизация: Быстрый старт 🚀
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
Решение технической задачи
Друзья, всем привет! 👋🏻
В понедельник мы выкладывали техническую задачу по оптимизации. Скажу по секрету, такие задачи задают на собеседовании в одном из крупных ритейлеров.
Итак, если посмотреть на план запроса, видно, что узкое место в том, что мы выгребаем из индекса 4 млн. записей, хотя архивная копия по размеру будет очень близка к исходной таблице (разница всего в 2 недели).
Какие можно дать рекомендации❓
1️⃣ Сбор статистики
Смотрим на статистику таблицы sales
Если запрос вернет
2️⃣ Управление индексом
Если статистика актуальна, а оптимизатор все равно считает, что нужен индекс, следует выполнить
3️⃣ SQL Plan Management
Минус подхода с
Ставь лайк, если ответил верно. Делитесь в комментариях, у кого еще
#oracle #оптимизация #задача #оптимизация #performance #Pavel_Dolganov
Канал Oracle Developer | Чатик💬
Мини-курс Оптимизация: Быстрый старт 🚀
Друзья, всем привет! 👋🏻
В понедельник мы выкладывали техническую задачу по оптимизации. Скажу по секрету, такие задачи задают на собеседовании в одном из крупных ритейлеров.
Итак, если посмотреть на план запроса, видно, что узкое место в том, что мы выгребаем из индекса 4 млн. записей, хотя архивная копия по размеру будет очень близка к исходной таблице (разница всего в 2 недели).
Какие можно дать рекомендации
1️⃣ Сбор статистики
Смотрим на статистику таблицы sales
SELECT stale_stats FROM user_tab_statistics WHERE table_name = 'SALES'
Если запрос вернет
YES
или <NULL>
- статистика неактуальна, делаемDBMS_STATS.GATHER_TABLE_STATS(OWNNAME => USER, TABNAME => 'SALES');
2️⃣ Управление индексом
Если статистика актуальна, а оптимизатор все равно считает, что нужен индекс, следует выполнить
ALTER INDEX SALES_IDX INVISIBLE
.3️⃣ SQL Plan Management
Минус подхода с
SQL Plan Management
в том, что если вендор доработает запрос, наша «магия» с подменой плана исчезнет :( Но часто он помогает устранить "острую боль", когда нет возможности оперативно выпустить патч или исправить тормозящий запрос. Про этот подход мы более подробно рассказываем на нашем курсе по оптимизации. Там же есть куча вопросов с собеседований и тестовых заданий. Так что если вы хотите к ним лучше подготовиться - welcomeСтавь лайк, если ответил верно. Делитесь в комментариях, у кого еще
Index Range Scan
тормозил прод.#oracle #оптимизация #задача #оптимизация #performance #Pavel_Dolganov
Канал Oracle Developer | Чатик
Мини-курс Оптимизация: Быстрый старт 🚀
Please open Telegram to view this post
VIEW IN TELEGRAM
Что быстрее: IN или EXISTS?
Друзья, всем привет! 👋🏻
Сегодня понедельник, самое время немного взбодриться после длинных выходных ☕️
И для разогрева предлагаем вопрос, который любят задавать на технических собесах: что же лучше —
Итак, перед вами два запроса. Вроде бы делают одно и то же… но есть нюанс👇
🔍 На первый взгляд — разницы нет.
Но если присмотреться… 😏
💬 Напишите в комментариях к посту, в чём подвох.
И если вдруг вы не до конца понимаете, в чём отличие между
Разберём по пунктам:
🔶 Сходства и отличия
🔶 Как работают⚙️
🔶 Какие вопросы по этой теме любят на собеседованиях 🧠
🔶 Примеры из практики📌
📩 Ссылку на Zoom пришлём утром в четверг — следите за новостями в канале, чтобы не пропустить!
#задача #sql #оптимизация #анонс #вебинар #собеседование #oracle #Pavel_Dolganov
Канал Oracle Developer | Чатик 💬
Мини-курс Оптимизация: Быстрый старт 🚀
Друзья, всем привет! 👋🏻
Сегодня понедельник, самое время немного взбодриться после длинных выходных ☕️
И для разогрева предлагаем вопрос, который любят задавать на технических собесах: что же лучше —
IN
или EXISTS
? 🤔Итак, перед вами два запроса. Вроде бы делают одно и то же… но есть нюанс👇
-- Not Exists
SELECT /*+ FULL(d) */
d.department_name
FROM hr.departments d
WHERE NOT EXISTS (
SELECT 1
FROM hr.employees e
WHERE e.department_id = d.department_id);
-- Not IN
SELECT /*+ FULL(d) */
d.department_name
FROM hr.departments d
WHERE d.department_id NOT IN (
SELECT e.department_id
FROM hr.employees e);
🔍 На первый взгляд — разницы нет.
Но если присмотреться… 😏
💬 Напишите в комментариях к посту, в чём подвох.
И если вдруг вы не до конца понимаете, в чём отличие между
IN
и EXISTS
, добро пожаловать на наш мини-эфир в четверг 🎙Разберём по пунктам:
🔶 Сходства и отличия
IN
и EXISTS
🔄🔶 Как работают
SEMI JOIN
и ANTI JOIN
под капотом 🔶 Какие вопросы по этой теме любят на собеседованиях 🧠
🔶 Примеры из практики
📩 Ссылку на Zoom пришлём утром в четверг — следите за новостями в канале, чтобы не пропустить!
#задача #sql #оптимизация #анонс #вебинар #собеседование #oracle #Pavel_Dolganov
Канал Oracle Developer | Чатик 💬
Мини-курс Оптимизация: Быстрый старт 🚀
Please open Telegram to view this post
VIEW IN TELEGRAM
Личный бренд Oracle-специалиста: всё начинается с тебя
Друзья, всем привет! 👋🏻
Сегодня немного не про SQL и не про оптимизацию запросов. Сегодня — про тебя и твой личный бренд 🤝
Почему это важно❓
Потому что никто, кроме тебя, не сможет убедить других в твоей крутости. Но хорошая новость в том, что этот процесс управляемый 🚀
Почему одних зовут «тушить пожары» за 500К, а других — максимум на поддержку❓
Не из-за случайного везения и не из-за «связей». Просто первый уже собрал вокруг себя мощный образ:
✅ реальные кейсы с продакшена
✅ умение решать нестандартные задачи
✅ понятную миссию и огонь в глазах
А второй… просто «хороший парень, который умеет посмотреть explain-план запроса» 🙈
Из чего же вырастает бренд, который бьёт конкурентов❓
1️⃣ Навыки уровня решу-любую-боль
Вы не просто знаете 1001 hint, вы уже:
✅ оптимизировали отчёт с 20 мин до 15 сек;
✅ разложил 20 ТБ архива по партициям и сэкономил железо;
✅ подняли SLA, убрав ночные крон-фейлы.
2️⃣ Желание расти и быть лучшим
Ты не ждёшь указаний, ты сам ищешь вызовы. Каждый вызов — это +10% к твоей рыночной стоимости 💹
3️⃣ Цель → миссия → позиционирование
Цель: работать удалённо и жить у океана🏖️
Миссия: делать системы быстрее и надёжнее🚀
Позиционирование: Oracle Performance Engineer, который доказывает выгоду цифрами
HR это считывает за 30 секунд🧠
4️⃣ Непрерывное развитие
Прочитал про SQL Macro? Сразу проверил в тестовом стенде. Узнал про AI Vector Search? Написал pet-проект, выложил на Git. Мир видит не картинку, а динамику.
Что получаешь в итоге❓
✅ Тебя зовут “спасти проект”, а не "попробовать"
✅ Ты сам называешь цену — и обосновываешь её кейсами
✅ Пока спишь, твой LinkedIn📱 и репозитории работают на тебя 🖥
Всё начинается с одного вопроса
«Кем я хочу стать через год — и чем докажу это рынку?»
Записал ответ❓
Тогда:
1️⃣ Вспоминаешь 3 самых мощных кейса
2️⃣ Описываешь: проблема → действия → цифры
3️⃣ Запускаешь рубрику «Performance Friday» в своём блоге
4️⃣ Каждые 2 недели добавляешь новую историю в портфолио
И уже через полгода у тебя будет бренд, мимо которого не пройдёт ни один рекрутер 💼
Хочешь быстрее и системно❓
На нашем летнем потоке мы:
🔶 собираем твои “сырые” навыки в кейсы 🧱
🔶 настраиваем позиционирование и резюме
🔶 шлифуем📱 , чтобы HR влюбился с первого скролла
🔶 тренируемся проходить собесы с харизмой на максимум 💪
🎯 У нас это уже сработало — а значит, сработает и у тебя.
💬 А теперь — вопрос в лоб: какую задачу, достойную места в витрине твоего бренда, ты решил за последнее время?
Пиши в комментарии, вдохновляй других — будем расти вместе 🙌
#личныйбренд #Oracle #карьера #рост #курс
Канал Oracle Developer | Чатик 💬
Мини-курс Оптимизация: Быстрый старт 🚀
Друзья, всем привет! 👋🏻
Сегодня немного не про SQL и не про оптимизацию запросов. Сегодня — про тебя и твой личный бренд 🤝
Почему это важно
Потому что никто, кроме тебя, не сможет убедить других в твоей крутости. Но хорошая новость в том, что этот процесс управляемый 🚀
Почему одних зовут «тушить пожары» за 500К, а других — максимум на поддержку
Не из-за случайного везения и не из-за «связей». Просто первый уже собрал вокруг себя мощный образ:
✅ реальные кейсы с продакшена
✅ умение решать нестандартные задачи
✅ понятную миссию и огонь в глазах
А второй… просто «хороший парень, который умеет посмотреть explain-план запроса» 🙈
Из чего же вырастает бренд, который бьёт конкурентов
1️⃣ Навыки уровня решу-любую-боль
Вы не просто знаете 1001 hint, вы уже:
✅ оптимизировали отчёт с 20 мин до 15 сек;
✅ разложил 20 ТБ архива по партициям и сэкономил железо;
✅ подняли SLA, убрав ночные крон-фейлы.
2️⃣ Желание расти и быть лучшим
Ты не ждёшь указаний, ты сам ищешь вызовы. Каждый вызов — это +10% к твоей рыночной стоимости 💹
3️⃣ Цель → миссия → позиционирование
Цель: работать удалённо и жить у океана
Миссия: делать системы быстрее и надёжнее
Позиционирование: Oracle Performance Engineer, который доказывает выгоду цифрами
HR это считывает за 30 секунд
4️⃣ Непрерывное развитие
Прочитал про SQL Macro? Сразу проверил в тестовом стенде. Узнал про AI Vector Search? Написал pet-проект, выложил на Git. Мир видит не картинку, а динамику.
Что получаешь в итоге
✅ Тебя зовут “спасти проект”, а не "попробовать"
✅ Ты сам называешь цену — и обосновываешь её кейсами
✅ Пока спишь, твой LinkedIn
Всё начинается с одного вопроса
«Кем я хочу стать через год — и чем докажу это рынку?»
Записал ответ
Тогда:
1️⃣ Вспоминаешь 3 самых мощных кейса
2️⃣ Описываешь: проблема → действия → цифры
3️⃣ Запускаешь рубрику «Performance Friday» в своём блоге
4️⃣ Каждые 2 недели добавляешь новую историю в портфолио
И уже через полгода у тебя будет бренд, мимо которого не пройдёт ни один рекрутер 💼
Хочешь быстрее и системно
На нашем летнем потоке мы:
🔶 собираем твои “сырые” навыки в кейсы 🧱
🔶 настраиваем позиционирование и резюме
🔶 шлифуем
🔶 тренируемся проходить собесы с харизмой на максимум 💪
🎯 У нас это уже сработало — а значит, сработает и у тебя.
💬 А теперь — вопрос в лоб: какую задачу, достойную места в витрине твоего бренда, ты решил за последнее время?
Пиши в комментарии, вдохновляй других — будем расти вместе 🙌
#личныйбренд #Oracle #карьера #рост #курс
Канал Oracle Developer | Чатик 💬
Мини-курс Оптимизация: Быстрый старт 🚀
Please open Telegram to view this post
VIEW IN TELEGRAM
Что быстрее: IN или EXISTS? 🤔
Друзья, всем привет! 👋🏻
В понедельник мы показали вам два запроса и спросили, чем они отличаются.
Многие сходу ответили, что
И это правильный ответ ✅
Никакой магии тут на самом деле нет.
Условие
А
⛔️ Условие
📌 К слову, такой вопрос часто задают на технических собеседованиях.
Если хочется копнуть в сторону
Что разберем на вебинаре?
🔶 Сходства и отличия
🔶 Как работают
🔶 Какие вопросы по этой теме любят на собеседованиях 🧠
🔶 Примеры из практики 📌
Будет возможность задать вопросы и разобрать свои кейсы.
Кому будет полезно?
🔸 Начинающим разработчикам – чтобы не наступать на типичные грабли.
🔸 Мидлам – чтобы писать более эффективный код.
🔸 Всем, кто хочет хорошо проходить собеседования.
🎤 Ведущий — Павел Долганов
🔥 Подключайтесь, будет много полезного. До встречи на вебинаре! 🌐
➡️ Ссылка на ZOOM ⬅️
⚠️ Возможность подключиться ограничена: максимум 100 участников. Успевайте!
⚠️ Записи не будет!
#задача #sql #оптимизация #анонс #вебинар #собеседование #oracle #Pavel_Dolganov
Канал Oracle Developer | Чатик 💬
Мини-курс Оптимизация: Быстрый старт 🚀
Друзья, всем привет! 👋🏻
В понедельник мы показали вам два запроса и спросили, чем они отличаются.
Многие сходу ответили, что
NOT IN
не вернет данных, если подзапрос содержит Null-значения.И это правильный ответ ✅
Никакой магии тут на самом деле нет.
Условие
id IN (1,2,null)
можно развернуть как:id = 1 OR id = 2 OR id = null
А
id NOT IN (1,2,null)
— как:id != 1 AND id != 2 AND id != null
⛔️ Условие
id != null
никогда не выполнится, поэтому такой запрос ничего не возвращает.📌 К слову, такой вопрос часто задают на технических собеседованиях.
Если хочется копнуть в сторону
IN
и EXISTS
чуть глубже — ждем вас сегодня в 19:00 МСК на обещанный вебинар 🎓Что разберем на вебинаре?
🔶 Сходства и отличия
IN
и EXISTS
🔄🔶 Как работают
SEMI JOIN
и ANTI JOIN
под капотом ⚙️🔶 Какие вопросы по этой теме любят на собеседованиях 🧠
🔶 Примеры из практики 📌
Будет возможность задать вопросы и разобрать свои кейсы.
Кому будет полезно?
🔸 Начинающим разработчикам – чтобы не наступать на типичные грабли.
🔸 Мидлам – чтобы писать более эффективный код.
🔸 Всем, кто хочет хорошо проходить собеседования.
🎤 Ведущий — Павел Долганов
🔥 Подключайтесь, будет много полезного. До встречи на вебинаре! 🌐
➡️ Ссылка на ZOOM ⬅️
⚠️ Возможность подключиться ограничена: максимум 100 участников. Успевайте!
#задача #sql #оптимизация #анонс #вебинар #собеседование #oracle #Pavel_Dolganov
Канал Oracle Developer | Чатик 💬
Мини-курс Оптимизация: Быстрый старт 🚀
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
Переживания из-за подготовки курса
Кивилев Денис
🎙 Почему я спал по 6 часов в сутки и как это связано с мини-курсом по Оптимизации
Друзья, всем привет! 👋🏻
Сегодня произошло неожиданное аудиоподкастоизвержение. На утренней пробежке в 6:15 утра вдруг понял, что как-то рановато 😂
Пришёл домой, решил посмотреть статистику по сну — и слегка удивился. Средняя продолжительность сна — 6 часов. Ложусь спать в 00:30, подъём — в 6:20. WTF! 😱😨
И сразу же родилась идея аудиоподкаста: а что, если немного рассказать о том, о чём обычно никто не говорит?
О той самой изнанке онлайн-школы, где за каждым видеоуроком стоят бессонные ночи, спринты с методологом, альфа-тесты, переработка обратной связи и вечное «А точно ли это поможет студенту на практике?»
В подкасте делюсь, как мы создавали мини-курс «Оптимизация Oracle SQL: Быстрый старт 🚀»
⚠️ Этот подкаст — не жалоба, а честный рассказ. Потому что за каждым качественным образовательным продуктом — человеческий труд, бессонные ночи и внутренняя тревога: «А точно ли зашло?»
Если вы когда-нибудь задумывались, как на самом деле создаются курсы и чем отличается подход в нашей школе — обязательно включите.
Возможно, вы посмотрите на обучение совсем с другой стороны.
🎧 Длительность: 7:30 минут. Рекомендую на x1.1
И, как обычно, если зашло — ставьте 👍
#изнанкашколы #образование #oracle_sql #аудиоподкаст
Канал Oracle Developer | Чатик 💬
Мини-курс Оптимизация: Быстрый старт 🚀
Друзья, всем привет! 👋🏻
Сегодня произошло неожиданное аудиоподкастоизвержение. На утренней пробежке в 6:15 утра вдруг понял, что как-то рановато 😂
Пришёл домой, решил посмотреть статистику по сну — и слегка удивился. Средняя продолжительность сна — 6 часов. Ложусь спать в 00:30, подъём — в 6:20. WTF! 😱😨
И сразу же родилась идея аудиоподкаста: а что, если немного рассказать о том, о чём обычно никто не говорит?
О той самой изнанке онлайн-школы, где за каждым видеоуроком стоят бессонные ночи, спринты с методологом, альфа-тесты, переработка обратной связи и вечное «А точно ли это поможет студенту на практике?»
В подкасте делюсь, как мы создавали мини-курс «Оптимизация Oracle SQL: Быстрый старт 🚀»
⚠️ Этот подкаст — не жалоба, а честный рассказ. Потому что за каждым качественным образовательным продуктом — человеческий труд, бессонные ночи и внутренняя тревога: «А точно ли зашло?»
Если вы когда-нибудь задумывались, как на самом деле создаются курсы и чем отличается подход в нашей школе — обязательно включите.
Возможно, вы посмотрите на обучение совсем с другой стороны.
🎧 Длительность: 7:30 минут. Рекомендую на x1.1
И, как обычно, если зашло — ставьте 👍
#изнанкашколы #образование #oracle_sql #аудиоподкаст
Канал Oracle Developer | Чатик 💬
Мини-курс Оптимизация: Быстрый старт 🚀
This media is not supported in your browser
VIEW IN TELEGRAM
Хинтовать или не хинтовать? Вот в чём вопрос!
Друзья, всем привет ☀️
Если вы когда-либо занимались оптимизацией запросов — наверняка рано или поздно вставал вопрос: использовать хинты или нет?
Интересно ваше мнение. Применяете ли вы хинты в проектах? При каких условиях? А может, у вас их вообще запрещено использовать?
👉 Поделиться мнением в чатике
Кстати, это видео — с практики пятого потока курса «Оптимизация Oracle SQL».
Тема оптимизации довольно сложная и без дополнительных встреч, было бы тяжело.
Поэтому каждую неделю, ребята собираются на 1–1.5 часа и обсуждают пройденный материал, делятся мнениями, задают вопросы.
Обычно минут 20 уделяем на "пробежаться по прослушанной лекции", далее практические моменты и Q/A.
Полную версию видео с ответом на вопрос про хинты опубликуем уже в четверг! 🎓
Всем хорошей рабочей недели! 🔥
#оптимизация #hints #Denis_Kivilev
Канал Oracle Developer | Чатик 💬
Мини-курс Оптимизация: Быстрый старт 🚀
Друзья, всем привет ☀️
Если вы когда-либо занимались оптимизацией запросов — наверняка рано или поздно вставал вопрос: использовать хинты или нет?
Интересно ваше мнение. Применяете ли вы хинты в проектах? При каких условиях? А может, у вас их вообще запрещено использовать?
👉 Поделиться мнением в чатике
Кстати, это видео — с практики пятого потока курса «Оптимизация Oracle SQL».
Тема оптимизации довольно сложная и без дополнительных встреч, было бы тяжело.
Поэтому каждую неделю, ребята собираются на 1–1.5 часа и обсуждают пройденный материал, делятся мнениями, задают вопросы.
Обычно минут 20 уделяем на "пробежаться по прослушанной лекции", далее практические моменты и Q/A.
Полную версию видео с ответом на вопрос про хинты опубликуем уже в четверг! 🎓
Всем хорошей рабочей недели! 🔥
#оптимизация #hints #Denis_Kivilev
Канал Oracle Developer | Чатик 💬
Мини-курс Оптимизация: Быстрый старт 🚀
Пост 1/5. Про вакансию Oracle/Java Developer
Друзья, всем привет!
Решил поделиться с вами серией постов про позицию Oracle/Java Developer на проект распила Ораклового-монолита.
Итак. Предновогодняя суета, я весь в мыле и тут выплывает этотлебедь вакансия.
Начал общение с рекрутёром. В первых же сообщениях, HR кидает ссылку на видос - презентацию ценностей/политики компании.
💬 "Денис, посмотрите пожалуйста"
Да, не вопрос. Чем там могут удивить... Ан, нет - я ошибся 😄
Некоторые перлы из видео:
• «нам не по хуй»
• «мы делаем так, чтобы не хотелось доебаться»
Полный видос — по ссылке выше.
💬 "Скажите, пжл, вам подходит политика?"
Ну что ж… — подумал я. Такое не каждый день увидишь. Стало интересно: к чему это всё может привести? 🤔
Написал, что мне ОК — и марлезонский балет начался 🕺🏻
Вопросы залу
Как вы думаете, какая у такой компании/вакансии может быть зарплатная вилка?
После увиденного - пошли бы на собес? Готовы работать в такой культуре?
Поделитесь в Чатике 💭
Если интересны подробности вакансии, этапы собесов и т.п. ставь любую реакцию 🐳
#Denis_Kivilev #oracle #java #собседования
Канал Oracle Developer | Чатик 💬
Мини-курс Оптимизация: Быстрый старт 🚀
Друзья, всем привет!
Решил поделиться с вами серией постов про позицию Oracle/Java Developer на проект распила Ораклового-монолита.
Итак. Предновогодняя суета, я весь в мыле и тут выплывает этот
Начал общение с рекрутёром. В первых же сообщениях, HR кидает ссылку на видос - презентацию ценностей/политики компании.
💬 "Денис, посмотрите пожалуйста"
Да, не вопрос. Чем там могут удивить... Ан, нет - я ошибся 😄
Некоторые перлы из видео:
• «нам не по хуй»
• «мы делаем так, чтобы не хотелось доебаться»
Полный видос — по ссылке выше.
💬 "Скажите, пжл, вам подходит политика?"
Ну что ж… — подумал я. Такое не каждый день увидишь. Стало интересно: к чему это всё может привести? 🤔
Написал, что мне ОК — и марлезонский балет начался 🕺🏻
Вопросы залу
Как вы думаете, какая у такой компании/вакансии может быть зарплатная вилка?
После увиденного - пошли бы на собес? Готовы работать в такой культуре?
Поделитесь в Чатике 💭
Если интересны подробности вакансии, этапы собесов и т.п. ставь любую реакцию 🐳
#Denis_Kivilev #oracle #java #собседования
Канал Oracle Developer | Чатик 💬
Мини-курс Оптимизация: Быстрый старт 🚀
⚙️Одна из ТОП-болей Oracle-разработчика
Друзья, привет! Сохраните пост, чтобы показать тим-лиду и закрыть вечные споры на ревью 😉
БОЛЬ: Отсутствие единой системы стандартов форматирования кода в ORACLE❌
Как происходит в реальной жизни?
Приходишь в новый проект, открываешь код и получаешь мешанину из запросов.
У одного всё ЗАГЛАВНЫМИ, у другого строчными, третий чередует регистр через слово. Кто-то называет таблицы во множественном числе «Users», кто-то с префиксом tab_ - "tab_users", а где-то всплывает «user_tbl». Запросы форматируются как попало.
Каждый уверен: «Я так привык — значит, правильно». Единого документа нет, ревью превращается в мини-баттл, новичок тратит месяц, чтобы только «раскусить» локальные правила.
❌ СУТЬ ПРОБЛЕМЫ
У Oracle по-прежнему нет официального «ГОСТа» (и не будет) на оформление PL/SQL: нет аналога PEP-8 как в Python или Google-кодстайла как для Java. Всё держится на устных договорённостях и личных привычках. Каждая компания — маленькое «княжество» со своим письмом.
Итог хаоса
• читаемость падает;
• ревью затягиваются;
• баги всплывают на проде, потому что «не заметил в каше»;
• время онбординга увеличивается и т.п.
📉 К чему это приводит
Представьте, что всю жизнь ездили с левым рулём, а потом внезапно пересели на правый.
Первые дни — скорость падает, концентрация уходит в ноль, ошибок становится больше.
То же и с кодом: каждый новый проект — переучивание с нуля.
А бизнес-дедлайны никто не отменял: сроки горят, деньги утекают, команда нервничает.
🛠 Как можно это решить (и заработать очки в карму)🔥
1️⃣ Соберите мини-круг: пару тимлидов + самых заинтересованных разработчиков.
2️⃣ Сделайте короткий чек-лист с описанием:
– единый регистр для ключевых слов и идентификаторов;
– общие префиксы/постфиксы для таблиц, индексов и других объектов;
– правила именования пакетов, процедур и др.;
– правила написания комментариев и многое другое;
желательно, чтобы правила форматирования можно было задать в IDE.
3️⃣ Автоматизируйте проверку: поставьте любой SQL-formatter/linter в pre-commit.
4️⃣ Зашейте правило в CI: пока линтер красный, код не пройдёт.
5️⃣ Загрузите документ в Confluence и прикрепите ссылку в шаблон PR/MR.
6️⃣ Проведите мит-ап для разработчиков: объясните «зачем» это нужно.
⚠️ Важный момент: переформатирование существующей кодовой базы может выполняться по-разному. Команда выбирает, как лучше сделать.
💡 Фишка для проактивных
Видишь хаос? Предложи драфт-стандарт сам. Так ты:
• ускоряешь ревью;
• качаешь личный бренд «не ноет — решает»;
• чаще всего получаешь плюсик к росту до тимлида.
⚖️ Итог
Кодстайл — это не про «перфекционизм ради перфекционизма».
Это договорённость, которая превращает личные заготовки в командный актив.
Чем раньше вы договоритесь, тем меньше боли, нервов и денег потеряете.
📌 Сохрани себе и отправь тимлиду. Пусть стандарты работают, а люди пишут бизнес-логику, а не расставляют пробелы вручную.
А какие стандарты у вас были при смене работы, пишите в Чатик 💬 посмотрим, что за дичь есть на просторах.
Если пост наберет 100 🔥 расскажу как мы в Qiwi-решали эту проблему c автоматической проверкой PL/SQL-кода в CI. Проблема не простая, в виду того, что разработчики пользовались аж четырьмя разными IDE.
#Oracle #PLSQL #кодстайл #teamlead #Denis_Kivilev
Канал Oracle Developer | Чатик 💬
Мини-курс Оптимизация: Быстрый старт 🚀
Друзья, привет! Сохраните пост, чтобы показать тим-лиду и закрыть вечные споры на ревью 😉
БОЛЬ: Отсутствие единой системы стандартов форматирования кода в ORACLE❌
Как происходит в реальной жизни?
Приходишь в новый проект, открываешь код и получаешь мешанину из запросов.
У одного всё ЗАГЛАВНЫМИ, у другого строчными, третий чередует регистр через слово. Кто-то называет таблицы во множественном числе «Users», кто-то с префиксом tab_ - "tab_users", а где-то всплывает «user_tbl». Запросы форматируются как попало.
Каждый уверен: «Я так привык — значит, правильно». Единого документа нет, ревью превращается в мини-баттл, новичок тратит месяц, чтобы только «раскусить» локальные правила.
❌ СУТЬ ПРОБЛЕМЫ
У Oracle по-прежнему нет официального «ГОСТа» (и не будет) на оформление PL/SQL: нет аналога PEP-8 как в Python или Google-кодстайла как для Java. Всё держится на устных договорённостях и личных привычках. Каждая компания — маленькое «княжество» со своим письмом.
Итог хаоса
• читаемость падает;
• ревью затягиваются;
• баги всплывают на проде, потому что «не заметил в каше»;
• время онбординга увеличивается и т.п.
📉 К чему это приводит
Представьте, что всю жизнь ездили с левым рулём, а потом внезапно пересели на правый.
Первые дни — скорость падает, концентрация уходит в ноль, ошибок становится больше.
То же и с кодом: каждый новый проект — переучивание с нуля.
А бизнес-дедлайны никто не отменял: сроки горят, деньги утекают, команда нервничает.
🛠 Как можно это решить (и заработать очки в карму)🔥
1️⃣ Соберите мини-круг: пару тимлидов + самых заинтересованных разработчиков.
2️⃣ Сделайте короткий чек-лист с описанием:
– единый регистр для ключевых слов и идентификаторов;
– общие префиксы/постфиксы для таблиц, индексов и других объектов;
– правила именования пакетов, процедур и др.;
– правила написания комментариев и многое другое;
желательно, чтобы правила форматирования можно было задать в IDE.
3️⃣ Автоматизируйте проверку: поставьте любой SQL-formatter/linter в pre-commit.
4️⃣ Зашейте правило в CI: пока линтер красный, код не пройдёт.
5️⃣ Загрузите документ в Confluence и прикрепите ссылку в шаблон PR/MR.
6️⃣ Проведите мит-ап для разработчиков: объясните «зачем» это нужно.
⚠️ Важный момент: переформатирование существующей кодовой базы может выполняться по-разному. Команда выбирает, как лучше сделать.
💡 Фишка для проактивных
Видишь хаос? Предложи драфт-стандарт сам. Так ты:
• ускоряешь ревью;
• качаешь личный бренд «не ноет — решает»;
• чаще всего получаешь плюсик к росту до тимлида.
⚖️ Итог
Кодстайл — это не про «перфекционизм ради перфекционизма».
Это договорённость, которая превращает личные заготовки в командный актив.
Чем раньше вы договоритесь, тем меньше боли, нервов и денег потеряете.
📌 Сохрани себе и отправь тимлиду. Пусть стандарты работают, а люди пишут бизнес-логику, а не расставляют пробелы вручную.
А какие стандарты у вас были при смене работы, пишите в Чатик 💬 посмотрим, что за дичь есть на просторах.
Если пост наберет 100 🔥 расскажу как мы в Qiwi-решали эту проблему c автоматической проверкой PL/SQL-кода в CI. Проблема не простая, в виду того, что разработчики пользовались аж четырьмя разными IDE.
#Oracle #PLSQL #кодстайл #teamlead #Denis_Kivilev
Канал Oracle Developer | Чатик 💬
Мини-курс Оптимизация: Быстрый старт 🚀
This media is not supported in your browser
VIEW IN TELEGRAM
Хинтовать или не хинтовать? Пусть решает команда
Я встречался с разными подходами и мнениями.
1️⃣ Например, в некоторых командах Qiwi было принято "не хинтовать". Поддерживай статистику в актуальном состоянии - тогда Oracle сам будет рулить с использованием CBO (cost based optimizer), и будет тебе счастье.
Вплоть до минуса на код-ревью. Система — OLTP.
К слову сказать, я не сильно полагаюсь на CBO, и если ты понимаешь логику работы запроса - то почему бы его не стабилизировать?
И в нашей команде хинтование я поощрял.
2️⃣ Например, в "IT Магнит" мы хинтовали почти все запросы. Это была специфика Big Data в DWH: параллельные запросы, временные таблицы… Очень часто CBO ошибался. Там без хинтов никак не обойтись.
3️⃣ Ещё один пример — из моей же практики. Пилили коммерческое ПО для банков. Сколько тогда поели г...на из-за CBO у заказчиков.
К слову сказать, пилить ПО на заказ и поставлять его в разные организации — это задачка на порядок сложнее, чем когда система твоя, до которой ты можешь легко дотянуться.
Например, у тебя 10 заказчиков, и у всех у них есть какие-нибудь свои прикольчики.
Допустим, админы в банке решили не собирать статистику. Да, такое бывает. Ну и какой, на фиг, CBO поможет с запросами при такой постановке?
Поев немало... проблем, мы коллегиально решили хинтовать максимум запросов.
Если стоит выбор между «срочно решаем проблему на ПРОДе у заказчика» и «заранее хинтануть запрос и не иметь геморроя» — я выбираю второе 😊
Подводя итог
Универсального ответа нет. Каждый случай индивидуален по-своему. Решайте командой.
Каким принципом руководствуетесь вы? Что думаете? Обсудить в чатике 💬
Кстати, это видео — с практики пятого потока курса «Оптимизация Oracle SQL» ❤️
#Denis_Kivillev #оптимизация #hints
Канал Oracle Developer | Чатик 💬
Мини-курс Оптимизация: Быстрый старт 🚀
Я встречался с разными подходами и мнениями.
1️⃣ Например, в некоторых командах Qiwi было принято "не хинтовать". Поддерживай статистику в актуальном состоянии - тогда Oracle сам будет рулить с использованием CBO (cost based optimizer), и будет тебе счастье.
Вплоть до минуса на код-ревью. Система — OLTP.
К слову сказать, я не сильно полагаюсь на CBO, и если ты понимаешь логику работы запроса - то почему бы его не стабилизировать?
И в нашей команде хинтование я поощрял.
2️⃣ Например, в "IT Магнит" мы хинтовали почти все запросы. Это была специфика Big Data в DWH: параллельные запросы, временные таблицы… Очень часто CBO ошибался. Там без хинтов никак не обойтись.
3️⃣ Ещё один пример — из моей же практики. Пилили коммерческое ПО для банков. Сколько тогда поели г...на из-за CBO у заказчиков.
К слову сказать, пилить ПО на заказ и поставлять его в разные организации — это задачка на порядок сложнее, чем когда система твоя, до которой ты можешь легко дотянуться.
Например, у тебя 10 заказчиков, и у всех у них есть какие-нибудь свои прикольчики.
Допустим, админы в банке решили не собирать статистику. Да, такое бывает. Ну и какой, на фиг, CBO поможет с запросами при такой постановке?
Поев немало... проблем, мы коллегиально решили хинтовать максимум запросов.
Если стоит выбор между «срочно решаем проблему на ПРОДе у заказчика» и «заранее хинтануть запрос и не иметь геморроя» — я выбираю второе 😊
Подводя итог
Универсального ответа нет. Каждый случай индивидуален по-своему. Решайте командой.
Каким принципом руководствуетесь вы? Что думаете? Обсудить в чатике 💬
Кстати, это видео — с практики пятого потока курса «Оптимизация Oracle SQL» ❤️
#Denis_Kivillev #оптимизация #hints
Канал Oracle Developer | Чатик 💬
Мини-курс Оптимизация: Быстрый старт 🚀
Пост 2/5. Про вакансию Oracle/Java Developer
Коллеги, всем привет ☀️
Вижу пост с загадочной конторой с матами вам зашел 😄
Продолжаю свой рассказ.
Название этой компании - GehtSoft
Корни из РФ, но по факту, уже американская, с народом со всего бывшего СССР.
Заказчики так же разные. Конкретно этот проект - заказчик из USA.
Охрененно здоровая портянка с ➡️ условиями компании ⬅️
Да, некоторые пункты, прямо скажем, вызывают удивление.
Ну да ладно, в "чужой монастырь... " и "не нравится, не откликайся".
Описание вакансии
Выше на скринах ⬆️
Суть проекта
Выполнять доработки в текущий продукт и потихоньку распиливать оракловый монолит с выносом логики в Java + PostgreSQL.
В целом, довольно интересно, с учётом удалённого характера работы и з/п в $.
З/п отправляют на какой-нибудь счёт ИП, например, в Грузии.
И плюс и минус - поддержка текущего решения. Хоть и заявлялось, что проект годика на полтора - верилось с трудом 😊 С другой стороны, как ты будешь распиливать, если не понимаешь, что происходит в продукте 🤷🏻♂️
Этапы собеседований
1️⃣ Soft-skills интервью с Scrum-мастером (что блин ?!!!) - 1 час
2️⃣ Техническое интервью - 1-1.5 часа.
3️⃣ Опять легкое общение с Scrum-мастером (а-ля финиш) - 15 мин.
4️⃣ Оффер
Вроде не выглядит не реально 🤷🏻♂️
Однако, софтовое интервью меня слегка удивило, но об этом я расскажу в следующем посте.
Вилка вакансии
Нижняя граница - 5000$
Верхняя граница -xxxx$
Как считаете какая может быть верхняя граница у такой вакансии? Пишите ваши предсказания в чатик🔮
Всем хороших выходных 😉
#Denis_Kivilev #oracle #java #собседования
Канал Oracle Developer | Чатик 💬
Мини-курс Оптимизация: Быстрый старт 🚀
Коллеги, всем привет ☀️
Вижу пост с загадочной конторой с матами вам зашел 😄
Продолжаю свой рассказ.
Название этой компании - GehtSoft
Корни из РФ, но по факту, уже американская, с народом со всего бывшего СССР.
Заказчики так же разные. Конкретно этот проект - заказчик из USA.
Охрененно здоровая портянка с ➡️ условиями компании ⬅️
Да, некоторые пункты, прямо скажем, вызывают удивление.
Ну да ладно, в "чужой монастырь... " и "не нравится, не откликайся".
Описание вакансии
Выше на скринах ⬆️
Суть проекта
Выполнять доработки в текущий продукт и потихоньку распиливать оракловый монолит с выносом логики в Java + PostgreSQL.
В целом, довольно интересно, с учётом удалённого характера работы и з/п в $.
З/п отправляют на какой-нибудь счёт ИП, например, в Грузии.
И плюс и минус - поддержка текущего решения. Хоть и заявлялось, что проект годика на полтора - верилось с трудом 😊 С другой стороны, как ты будешь распиливать, если не понимаешь, что происходит в продукте 🤷🏻♂️
Этапы собеседований
1️⃣ Soft-skills интервью с Scrum-мастером (что блин ?!!!) - 1 час
2️⃣ Техническое интервью - 1-1.5 часа.
3️⃣ Опять легкое общение с Scrum-мастером (а-ля финиш) - 15 мин.
4️⃣ Оффер
Вроде не выглядит не реально 🤷🏻♂️
Однако, софтовое интервью меня слегка удивило, но об этом я расскажу в следующем посте.
Вилка вакансии
Нижняя граница - 5000$
Верхняя граница -
Как считаете какая может быть верхняя граница у такой вакансии? Пишите ваши предсказания в чатик
Всем хороших выходных 😉
#Denis_Kivilev #oracle #java #собседования
Канал Oracle Developer | Чатик 💬
Мини-курс Оптимизация: Быстрый старт 🚀
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM