Параметры курса Смотреть отзывы
Мой опыт обучения на курсе "Продвинутый SQL" от Нетологии
Работаю аналитиком в интернет-магазине третий год. Запросы пишу каждый день, отчеты строю, дашборды делаю — в общем, рутина. А недавно наш тимлид попросил помочь с оптимизацией базы, потому что она начала жутко тормозить. Я посмотрела на код разработчиков и поняла, что не понимаю половины того, что они там накрутили. Партиционирование, репликация, какие-то триггеры — для меня это был китайский. Обидно стало. Порылась в интернете, наткнулась на курс в Нетологии и подумала — надо разбираться.
Качество обучения
Честно говоря, первое занятие вообще выбило меня из колеи. Николай начал сразу про нормальные формы, проектирование баз данных, и я сидела думала: "А я точно на тот курс записалась?". Вроде базу SQL знаю нормально, JOIN'ы пишу, GROUP BY понимаю, а тут оказалось, что я вообще не в курсе, как данные физически хранятся и почему мои запросы иногда выполняются по пять минут.
Дальше полегчало. Разобрались с индексами — я наконец поняла, почему разработчики постоянно ворчат, когда я прошу добавить "еще один маленький фильтр". Потом пошли хранимые процедуры, триггеры. Я даже представить не могла, что можно писать целые программы внутри базы данных. Шардирование вообще было откровением — теперь понимаю, как крупные проекты справляются с миллионами записей.
К концу месяца в голове сложилась картина. Теперь смотрю на нашу рабочую базу и вижу, где узкие места, почему что-то медленно работает. Даже начала предлагать идеи по оптимизации, и тимлид на меня странно смотрит — мол, откуда ты это знаешь.
Рейтинг школы
Нетологию выбрала не случайно — год назад проходила у них курс по Python. Тогда все устроило, вот и решила не искать другие варианты. Платформа работает стабильно, все записи сохраняются, можно пересматривать сколько угодно. Единственное — говорят, что теперь есть мобильное приложение, но я так и не скачала. Ну серьезно, кто будет SQL на телефоне учить? Для практики все равно ноутбук нужен.
Цена
Попала на черную пятницу в ноябре, купила за 40 тысяч вместо каких-то безумных 77. И даже эти 40 показались дороговато для месячного курса. Но повезло — у нас в компании есть программа обучения, половину компенсировали. Оформила рассрочку на шесть месяцев, выходило по семь тысяч в месяц. Терпимо. Без скидки точно бы не потянула — 77 тысяч за месяц это какое-то безумие, честно.
Обратная связь
Тут без фанатизма, но в целом нормально. Домашки проверяли где-то за 2-3 дня, иногда тянули до четырех. Один раз мне было срочно нужно разобраться с ошибкой, написала Игорю в личку — он ответил только на следующий день. Зато в общем чате кураторы шустрее реагировали.
Но когда комментарии приходили, они были реально полезные. Игорь мне как-то расписал целую лекцию в комментариях, почему мой индекс работает неэффективно и как его переделать. Я эти комментарии сохранила, потом еще несколько раз перечитывала. Вот это была настоящая обратная связь, а не "молодец, зачет".
Преподаватели
Николай и Игорь — разные по стилю, но оба нормально объясняют. Николай больше про теорию, любит порассуждать, почему так, а не иначе. Иногда уходит в дебри, и я теряю нить, но в целом слушать интересно. Игорь — практик до мозга костей. Сказал — сделал, показал — повторил. Мне такой подход ближе.
Правда, Николай раза три опоздал на вебинар минут на 15. Сидишь, ждешь, нервничаешь. А Игорь всегда минута в минуту. Зато Николай прикольные истории рассказывал про свои проекты. А Игорь как-то поделился, как у них в Exness база упала из-за неправильной настройки репликации, и пол-отдела ночь не спали, чиня все это. После такого я свою домашку по репликации раз пять перепроверяла.
Домашние задания
Домашки — это было испытание. Каждая занимала минимум часа четыре, а обычно все пять-шесть. Особенно запомнилось задание про шардирование. Я два вечера провозилась, пытаясь понять, как правильно данные распределить. То ключи неправильные выберу, то индексы не те создам. В итоге с пятой попытки запустилось.
Бизнес-игра вообще была жесть. Нам дали задачу с реальной высокой нагрузкой, типа как в боевой системе, и надо было базу оптимизировать. Я сначала наворотила что-то, запустила — все упало. Переделывала, переделывала... В итоге получилось, но седых волос точно прибавилось.
Зато теперь я понимаю, как триггеры работают. Недавно даже написала парочку для нашей рабочей базы — теперь логи пользовательских действий автоматически сохраняются. Разработчики удивились, спросили, где я этому научилась.
Теория
Вебинары проходили два раза в неделю, в половину восьмого вечера. Для меня время неудобное — еще на работе обычно. Приходилось отпрашиваться пораньше или подключаться прямо из офиса в наушниках. Длились занятия по полтора часа, материала давали много. Я всегда включала запись на следующий день и пересматривала, потому что не успевала все записать.
Презентации хорошие, все по делу. Ссылки на документацию PostgreSQL давали, это помогало потом самой копаться. Только вот на вопросы времени всегда не хватало. Народу на потоке много, все что-то спрашивают, а у преподавателя всего полтора часа. Несколько раз приходилось дожидаться конца вебинара и писать свой вопрос в чат.
Практика
Практики было много, и это главный плюс курса. Я первый раз в жизни сама подняла кластер PostgreSQL в Docker. Поначалу вообще ничего не понимала — что за контейнеры, зачем эти конфиги, что куда прописывать. С третьей попытки заработало, и я аж подпрыгнула от радости.
Потом настраивала Grafana для мониторинга базы. На работе этим DevOps'ы занимаются, а я всегда смотрела на их экраны и ничего не понимала. Теперь хотя бы в курсе, какие метрики важны и на что смотреть. Redis тоже попробовала — интересная штука для кеширования.
Итоговый проект делала почти две недели. Надо было спроектировать базу для интернет-магазина с нуля — таблицы, связи, индексы, репликация, триггеры для логирования. Когда все заработало, я распечатала схему базы и повесила над столом. Гордость прям.
Трудоустройство
Этого вообще не было, да мне и не надо. Курс же для повышения квалификации, а не для джунов, которые ищут первую работу. Мне нужно было прокачаться на текущем месте, и это получилось. Удостоверение государственного образца прислали, лежит где-то в папке. Может когда-нибудь пригодится для резюме, но пока не актуально.
Главное — что я реально научилась полезным вещам. Через месяц после курса предложила тимлиду сделать партиционирование для одной нашей проблемной таблицы, которая разрослась до 50 миллионов строк. Он сначала удивился, но согласился попробовать. Разработчики помогли реализовать, и теперь запросы к этой таблице летают в три раза быстрее. Я прям горжусь.
Итог: Месяц был тяжелый, выходные и вечера убиты, зато результат есть. Я пришла с обычными знаниями SQL, а ушла с пониманием, как базы данных работают изнутри. Теперь могу нормально общаться с разработчиками и даже предлагать что-то свое. Курс советую тем, кто уже работает с данными и хочет копнуть глубже. Если вы только начинаете и не знаете, что такое JOIN — вам рано сюда. Тут без базы совсем тяжко будет.