Drim Dev
385 subscribers
19 photos
49 links
Канал о деятельности компании Drim Dev и об ИТ-индустрии в целом. Ведёт Дмитрий Мельник.

Аккаунт для связи @mitro52.

Сайт https://drim.dev/
Download Telegram
Forwarded from Stanislav Belyaev
Обновление по hackload.kz

Мы выпустили следующий релиз личного кабинета https://hub.hackload.kz

Теперь, вы можете:
- В ваш профиль мы добавили возможность указать Telegram, Github, Linkedin. Эти данные важны для контакта с вами и для других участников. Рекомендуем зайти в профиль и заполнить :)
- Добавить возможность управлять командами. Вы можете редактировать команды (описание, участники)
- Если вы лидер команды - вы можете найти участников без команды и пригласить их в вашу команду (для связи у вас есть почта + внутренняя система сообщений)
- Если вы хотите присоединиться к существующей команде - вам доступны все команды к просмотру и описание всех участников, кто в команде

Для участия в хакатоне мы рассматриваем только команды. Соло-девелоперы, к сожалению, не справятся, в виду размера задания. Минимальный размер команды - 3 человека.

Если вы создали команду, но не хотите ее продвигать (например, вы присоединитесь к другой) - вы смело можете покинуть команду, она будет удалена.

Обновляйте ваши данные и ждем следующего обновления кабинета участника :)

https://hub.hackload.kz
👍21🔥1
Этот канал называется "Drim Dev" и это название компании, которую я, Дмитрий Мельник, основал 2 года назад. Я работаю как солопренёр (solopreneur), то есть являюсь единственным сотрудником этой компании. В дальнейшем это изменится, но пока ИИ-инструменты позволяют сильно ускорить многие задачи, чтобы не нанимать кого-то ещё.

Цель моей деятельности - повышение квалификации действующих разработчиков. То есть я не обучаю новичков с нуля, чтобы они "вошли в айти". Я помогаю тем программистам, кто уже работает, но у кого есть пробелы в знаниях и в системном понимании профессии. Это очень частая ситуация в Казахстане из-за некачественного образования и из-за того, что на работе нет больших возможностей для развития.

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

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

Сейчас у меня нет активных потоков курсов, потому что я сконцентрирован на организации хакатона HackLoad 2025 и на создании новых курсов. Хакатон важен для меня, потому что это ещё одна возможность повысить квалификацию разработчиков в Казахстане. Для этой же цели я буду проводить серию публичных лекций перед хакатоном.

Но есть возможность самостоятельно пройти мои курсы. Сегодня я хочу рассказать об одном из них - "Разработка монолитного бекенда крипто-банка". Вот страница с его описанием https://drim.dev/courses/crypto-bank-monolith

В рамках курса участникам необходимо реализовать монолитный бекенд крипто-банка на языке C# с использованием фреймворка ASP.NET Core. Для этого они изучат и применят технологии и практики, необходимые для разработки расширяемых, надёжных и производительных бекенд-приложений, готовых к коммерческому использованию.

Вот краткий перечень тем курса:

* Универсальные принципы проектирования и разработки бекенд-приложений
* Основные принципы и детали работы фреймворка ASP.NET Core
* Аутентификация и авторизация в ASP.NET Core
* Обработка ошибок и валидация
* Анализ и сравнение различных архитектур для WebAPI-приложений
* Выбор и использование конкретного типа гибкой архитектуры реализации WebAPI-приложений
* Анализ и сравнение разных типов автоматического тестирования
* Реализация гибкого микро-фреймворка для написания простых и расширяемых интеграционных тестов
* Принципы и детали работы контейнеров, образов и рантаймов
* Принципы и детали работы runc, Buildah, Scopeo, Podman
* Принципы и детали работы Docker
* Принципы и детали работы Docker Compose
* Принципы и детали работы блокчейна
* Принципы и детали работы Bitcoin
* Основы реляционных баз данных и детали их реализации на примере PostgreSQL и MS SQL Server
* Принципы и механики конкурентного выполнения запросов в реляционных базах данных
* Уровни изоляции транзакций в реляционных базах данных

Курс представляет собой 25 записанных лекций длительностью в 60-90 минут. Кроме этого есть описание проекта, который вы можете реализовать, чтобы на практике закрепить знания. Я буду отвечать на вопросы и помогать в случае затруднений.

Отдельно отмечу 2 темы курса:

1. Написание простых и расширяемых интеграционных тестов. Я расскажу о подходе к автотестированию, который нарабатывал более 10 лет. Этой информации нет в публичном доступе и все, кто внедрил этот подход на своих проектах, очень высоко его оценивают.

2. Взаимодействие с биткоином из приложений на C#. Вы научитесь интегрироваться с нодами биткоина, чтобы программно отправлять и получать транзакции. Эти знания необходимы для создания таких систем, как криптобиржи, криптобанки и другие.

Стоимость курса - 150 тысяч тенге. Оплату можно производить в рассрочку в течение 3 месяцев.

Уровень участников - джуниор и мидл бекенд-разработчики. Если вы сеньор и вам интересны темы курса, участвуйте тоже 🙂

Если вы хотите приобрести курс, или у вас есть вопросы, пишите мне в аккаунт @mitro52.
🔥12👍2
Forwarded from Mikhail Seleznev
очередное нагрузочное тестирование не пройдено
Сегодня kino.kz продаёт билеты на концерт Backstreet Boys. И опять проблемы при продаже. Ещё раз подчёркивает ценность проведения нашего хакатона. Эту задачу нужно окончательно решить 🙂
👍7
И у Тикетона опять проблемы при продаже билетов. Это тоже Backstreet Boys. Скрин из их Инстаграма.

😬
👀6
💬 Мы создали группу в Телеграме для участников хакатона HackLoad 2025. Будем там обсуждать все возникающие вопросы и идеи. Вот ссылка на вступление https://xn--r1a.website/+FpmkE1LL2VcwNmUy

Если вы зарегистрировались на хакатон или планируете это сделать, вступайте в группу.

Также подписывайтесь на этот канал @drimdev. Здесь также будут все анонсы и образовательная информация. 🚀
Давно не писал в канал и на это есть причина - мы активно готовимся к проведению хакатона HackLoad 2025. До него осталось меньше двух недель 🙃 Регистрация уже закрыта, будет участвовать 31 команда по 3-4 человека. Это отличный результат ☀️

Начинается большое образовательное событие. Оно включает не только хакатон, но и серию лекций перед ним. Расписание уже готово и вы можете увидеть его на странице https://hackload.kz/schedule.

Продублирую расписание здесь (время по Астане):

1. "Паттерн «Сага» для распределенных транзакций". 4 августа в 19:30. Докладчик - Дмитрий Мельник. Трансляция - https://youtube.com/live/9vfuqDVWZ04

2. "Масштабирование под высокую нагрузку". 5 августа в 19:30. Докладчик - Дмитрий Мельник. Трансляция - https://youtube.com/live/LE5sckhMAoE

3. "Организация конкурентного доступа". 6 августа в 19:30. Докладчик - Дмитрий Мельник. Трансляция - https://www.youtube.com/live/S1wILEUUMKo

4. "Создание отказоустойчивый систем". 7 августа в 19:30. Докладчик - Дмитрий Мельник. Трансляция - https://www.youtube.com/live/VQFPNT_CMuY

5. "Интеграция платёжных провайдеров". 11 августа в 19:30. Докладчик - Дмитрий Мельник. Трансляция - https://www.youtube.com/live/9MODb5vSd_Q

6. "Решения, которые работают". 12 августа в 19:30. Докладчик - Владимир Иванов. Трансляция - https://www.youtube.com/live/dKulH47IwHQ

7. "Платформа PS.kz". 13 августа в 19:30. Докладчики - команда PS.kz. Трансляция - https://www.youtube.com/live/-hI7HJTAD-s

Вас ждут 7 лекций, на которых вы получите (или освежите) важные знания для построения надёжных и масштабируемых систем. И потом сможете применить эти знания на хакатоне.

Лекции будут проводиться в Zoom, участники хакатона тоже будут в Zoom. Всем остальным доступны трансляции в YouTube. Ссылки на них я привёл выше.

Ждём вас на лекциях, будет полезно и интересно! И подписывайтесь на канал @drimdev 🚀

#hackload
👍9🔥1
Завтра в 10:00 начинается хакатон HackLoad 2025 🎉 Проделано много работы, чтобы участники могли погрузиться в создание высоконагруженной системы.

Трансляция открытия будет на YouTube https://youtube.com/live/MAY9b2rRyo4?feature=share

Также можете подключиться в Zoom https://us06web.zoom.us/meetings/87341487618/invitations?signature=FYfxNVvf2-DXOjyV5-_yZ5ICntb8Mpxy0JMiCZoCu78

Присоединяйтесь!
👍4🔥3🤝1
Всем привет! Я возвращаюсь к публикациям в канале) За то время, что я не писал, было несколько активностей, но самая главная - это проведение хакатона HackLoad 2025. Вкратце опишу тут результаты и полученный опыт. А его было получено немало 🙂

Изначально планировалось провести хакатон за 3 дня. Для этого мы арендовали зал в SmArt.Point в Алматы и я туда прилетел. Но по факту оказалось, что ни одна из команд не успела сделать решение за отведённое время. В итоге мы перевели все команды в онлайн-режим и продлили хакатон ещё на 7 дней. Получается, мы недооценили сложность задания. Обязательно учтём это на следующем хакатоне.

Неожиданно много команд сошло с дистанции до завершения хакатона. Начинало работу 25 команд, а результаты продемонстировали только 4 (!). Мы пришли к выводу, что это результат следующих факторов: сложность задания, отсутствие призов, отсутствие менторов и, возможно, недостаточная коммуникация с командами с нашей стороны. Мы проведём работу над ошибкам, чтобы больший процент команд в дальнейшем доходил до конца.

Но те команды, что дошли до закрытия, показали крутые результаты. Закрытие проходило в формате звонка в Zoom, где команды показывали, что они сделали. И этот звонок превратился в насыщенное двухчасовое обсуждение выбранных технологий, инфраструктурных схем, принятых компромиссов и сделанных оптимизаций. Именно на этом звонке я понял, что цель хакатона была достигнута. Вот таких вызовов и публичных обсуждений на высоком инженерном уровне не хватает казахстанскому ИТ-сообществу. И мы с участниками смогли достичь этого уровня 🚀 Рекомендую посмотреть видео встречи, оно того стоит - https://hackload.kz/results. Также на этой странице вы можете посмотреть, какие места заняли команды и детали их решений.

Отдельно хочу рассказать о том, чем наш хакатон отличился от большинства других подобных мероприятий. Мы дали командам возможность быстро проверять свои решения и видеть, на каком месте в общем зачёте они сейчас находятся. Для этого мы разработали систему запуска нагрузочных тестов и автоматически обновляемую таблицу результатов. То есть команды с помощью одной кнопки могли выполнять нагрузочные тесты и тут же видеть и сравнивать полученные результаты с другими командами. Как только участники начали это делать, чат хакатона закипел) Мы скидывали полученные цифры метрик, делились графиками из Графаны и обсуждали разные методики выполнения нагрузочных тестов. Не знаю как другие, но я в этом процессе получил огромное инженерное удовольствие. Мы задали ещё одну планку качества обсуждений в сообществе 🥇

В итоге хочу сказать, что мероприятие удалось! Да, были проблемы и нестыковки. Да, до финала дошло не так много команд, как нам бы хотелось. Да, оффлайн присутствовало тоже не так много команд. Но это был наш первый опыт и мы готовили мероприятие как волонтёры в свободное от работы время. И в итоге хакатон состоялся и команды (как и организаторы) получили много новых знаний и опыта. И все мы увидели, на каком высоком инженерном уровне можно выполнять и обсуждать поставленные задачи. Теперь будем масштабироваться, чтобы этот опыт получило как можно больше людей 🚀

И в конце хочу сказать спасибо тем, без кого этого мероприятия бы не было:

Нашему спонсору Freedom Holding. Компания оплатила все наши расходы и показала, что заинтересована в развитии ИТ-сообщества нашей страны. Спасибо!

Нашему спонсору PS Cloud Services. Компания предоставила вычислительные ресурсы организаторам и всем командам. Они показали, что у нас в Казахстане есть качественные и профессиональные провайдеры облачных решений. И они готовы вкладываться в развитие сообщества. Спасибо!

И отдельное спасибо всем организаторам: Станиславу Беляеву, Теймуру Шайкемелову, Андрею Курдюмову! Было непросто, но мы смогли это сделать)

Оставайтесь на связи, будем вместе продолжать проводить такие мероприятия и развиваться ☀️
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥172
А для чего вообще проводить хакатон? На мой взгляд, это в первую очередь образовательное мероприятие. Перед началом нашего хакатона я и наши партнёры прочитали серию лекций, где дали знания, полезные для выполнения задачи. Потом команды смогли сразу применить полученные знания на хакатоне и получить практический опыт, цементирующий эти знания.

Кроме того, многие команды для хакатона специально выбирали технологии, которые они хотели бы освоить и попрактиковать, но в обычной жизни до этого не доходили руки. Примеры таких технологий: Solana, SQLite, Rust для веб-разработки, Go, микросервисы. Интенсивное программирование в течение нескольких дней с чётко поставленной задачей на хакатоне помогает получить хорошую базу в новых технологиях.

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

К примеру, есть разные подходы к организации нагрузочного тестирования, Один из вариантов классификации это закрытая модель (closed model) и открытая модель (open model). Следующим постом я скину сообщение, которое я написал командам во время хакатона. И уже с учётом этих знаний мы продолжили обсуждать результаты тестов.

Надеюсь, теперь больше людей поймут ценность хакатонов и присоединятся к нам на следующем мероприятии 🙂
👍8
Внимание, важная информация про нагрузочное тестирование!

Мы уже запустили несколько нагрузочных тестов. В некоторых из них мы эмулировали 1000 пользователей. Но что это значит? Какая реальная нагрузка идёт на систему? Есть 2 варианта:

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

2. Каждый пользователь приходит, шлёт запрос на вашу систему, получает ответ и уходит.

Первый вариант называется "closed model". Второй вариант называется "open model". То есть закрытая и открытая модели. Вот оригинальная статья, которая ввела эти понятия https://www.usenix.org/legacy/event/nsdi06/tech/full_papers/schroeder/schroeder.pdf

Вот документация k6, рассказывающая как настроить ту или иную модель https://grafana.com/docs/k6/latest/using-k6/scenarios/concepts/open-vs-closed/

Так в чём же практическая разница? Очень важно понять, то разница в том, сколько реально запросов в секунду получит ваша система.

1. Closed model. Представьте, что пользователь сидит и шлёт запросы. Он отправил запрос, через 100 мс пришёл ответ. Он следом шлёт другой запрос. Таким образом, за секунду пользователь отправит 10 запросов. Если пользователей будет 1000, то нагрузка на систему будет 10 тысяч запросов в секунду.

И тут внимание! Если ваша система начнёт медленее отвечать на запросы, то пользователь будет слать меньше запросов в секунду. Если запрос теперь обрабатывается за 500 мс, то пользователь будет слать 2 запроса в секунду. Нагрузка на систему будет 2 тысячи запросов в секунду. То есть нагрузка на вашу систему зависит от производительности самой системы.

2. Open model. В этой модели каждую секунду к нам приходит 1000 пользователей, шлют запрос, дожидаются ответа и уходят. Они не будут слать следующий запрос. То есть время ответа системы никак не будет влиять на количество звпросов в секунду. Это всегда будет тысяча запросов в секунду.

Все предыдущие тесты мы запускали как closed model. И это, на самом деле, не позволяет сравнивать результаты Rorobotics и helloalem. Потому что на helloalem по факту отправлялось больше запросов в секунду. Почему? Потому что их система быстрее обрабатывала запросы.

Нам было важно рассказать вам об этих двух подходах. И чтобы вы на практике увидели разницу. В дальнейшем мы будем использовать open model, чтобы мы могли справедливо сравнивать результаты команд.

Сейчас я скину результаты тестирования helloalem на 5000 пользователей по open model.

P.S. То что я описал, это достаточно нетривиальные вещи. Вы можете не сразу их понять. Но со временем поймёте. И хакатон с его запусками тестов вам в этом поможет. Сегодня я сделаю возможность каждой команде самой запускать тесты в hub.hackload.kz. И тогда вы сможете сами запускать тесты и анализировать их результаты.
👍4
Атака на цепочку поставок npm

Представьте, что вы используете веб-приложение для переводов криптовалют. Это приложение написано уважаемой компанией, которой можно доверять. Фронтенд реализован на JavaScript и использует сторонние библиотеки для ускорения разработки.

Мы все используем библиотеки, ведь какой смысл каждый раз изобретать велосипед и тратить на разработку неоправданно много времени. Мы используем npm для JavaScript, NuGet для .NET, PyPI для Python, Maven Central для Java, crates.io для Rust, Go modules для Go. И мы такие не одни. По оценкам, типичное приложение в наше время на 70-90% состоит из свободного ПО (Free and Open Source Software - FOSS).

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

Это именно то, что произошло в мире JavaScript 8 сентября 2025 года.

В этот день злоумышленники получили доступ к аккаунту маинтейнера нескольких популярных пакетов npm и выпустили их новые версии, добавив код, заменяющий адреса крипто-транзакций. Маинтейнера зовут Josh Junon и он стал жертвой фишинга. Изменены были такие популярные пакеты как debug и chalk. Общее количество скачиваний атакованных пакетов - 2 миллиарда в неделю. Вот тут можно прочитать детали.

Получается, кто-то обманул какого-то разработчика, а в итоге полбиткоина потеряли вы, серьёзно? Да, серьёзно, и это большая проблема в мире современной разработки. Данный тип атаки называется Supply Chain Attack - атака на цепочку поставок. Почему цепочку? Дело в том, что библиотеки тоже не пишутся с нуля, а используют другие библиотеки. А те другие и так далее. И, когда вредный код попадает в библиотеку debug, он по цепочке попадает и в другие библиотеки, которые используют debug. А затем в другие и так далее. Разработчики крипто-кошелька даже могли не знать, что в их приложении есть код debug.

Как разработчикам защититься?

Эта проблема особенно актуальна для экосистемы npm, которая чаще всего становится целью атак из-за своего огромного размера (более 4.8 млн пакетов) и относительно слабых правил безопасности. Культура использования множества мелких пакетов ("микрозависимостей") создает огромную поверхность для атаки. Вот несколько ключевых шагов для защиты:

* Фиксируйте версии зависимостей. Это важнейшее правило. Никогда не полагайтесь на автоматическое скачивание "последней" версии. Используйте lock-файлы (package-lock.json, yarn.lock). Они записывают точную версию каждого пакета в вашем проекте. Это гарантирует, что при каждой установке вы получите именно тот код, который был протестирован и проверен.

* Используйте npm ci вместо npm install. Команда npm install может обновлять ваш package-lock.json, что нежелательно в автоматизированных средах. Команда npm ci (clean install) строго устанавливает зависимости только из package-lock.json.

* Минимизируйте количество зависимостей. Каждая библиотека, которую вы добавляете в проект, — это потенциальный вектор атаки. Прежде чем установить новый пакет, спросите себя: "Действительно ли он мне нужен?". Иногда проще написать несколько десятков строк кода самостоятельно, чем тянуть за собой целое дерево чужих зависимостей. Экосистемы с богатой стандартной библиотекой (например, .NET) поощряют именно такой подход, снижая необходимость во внешних инструментах.

* Обратите внимание на Deno. Deno — это альтернативная среда выполнения для JavaScript/TypeScript, созданная Ryan Dahl, автором Node.js. Одна из целей Deno, как раз, заключается в том, чтобы создать богатую стандартную библиотеку.

В этом посте я затронул только базовые вопросы атаки и борьбы с ней. Пишите в комментариях ваши мысли, будет интересно обсудить.

#security #javascript #npm #supply_chain
👍104
Интеллектуальный тренажёрный зал

Представьте: понедельник, вам прилетает сложная задача - реализовать новый модуль динамического ценообразования для интернет-магазина. Дедлайн - среда, чтобы в четверг фичу можно было раскатать, ведь будет распродажа «Черная пятница». Раньше это была бы неделя работы. Но вы, вооружившись AI-агентом, решаете задачу за три часа. Код элегантен, автотесты проходят. Пускай тестировщики перепроверят и можно деплоить. Вы чувствуете себя супергероем.

Мы все так делаем. Используем Claude Code, GitHub Copilot, Cursor. Это стало такой же нормой, как современные IDE с продвинутой навигацией, отладкой и рефакторингом. Зачем тратить часы на рутину, если машина может сделать это за минуты? По оценкам, до 80% разработчиков регулярно используют ИИ, и продуктивность, кажется, взлетела до небес.

И вот наступает «Черная пятница». Нагрузка на сайт растет, и в 10:00 утра система падает. Падает именно ваш новый модуль. Логи забиты ошибками тайм-аута базы данных. Вы смотрите на код, который «написали» в понедельник, и холодный пот прошибает вас. Сгенерированный ИИ элегантный запрос на самом деле скрывает неэффективные джойны, которые при высокой нагрузке создают тысячи медленных запросов. Вы видите что не так, но не можете быстро понять почему и как это исправить.

Это именно то, что происходит в мире разработки прямо сейчас, пусть и не всегда так драматично.

В этот момент эйфория от скорости сменяется паникой от непонимания кода. Недавнее исследование от METR показало, что опытные разработчики, работающие над сложными задачами, при использовании ИИ работают на 19% медленнее, потому что тратят больше времени на проверку и исправление такого «черного ящика». А другие исследования подтверждают, что до 40% кода, сгенерированного ИИ, содержит уязвимости или проблемы с качеством.

Получается, ИИ помог вам сдать фичу за полдня, а теперь из-за него компания теряет тысячи долларов в минуту, а вы не знаете, что делать? Да, и это новая большая проблема в мире разработки. Данный тип проблемы называется когнитивная атрофия - утрата фундаментальных и прикладных навыков из-за чрезмерной зависимости от автоматизации. Как мышцы атрофируются без физической нагрузки, так и способность к глубокому анализу и решению проблем атрофируется, если вы только «промптите», а не тщательно думаете.

На самом деле эта проблема не нова. Ровно с такими же проблемами столкнулись рабочие в 20 веке, когда их ручной труд массово начали заменять машины. Тела, привыкшие к нагрузкам, стали терять тонус. И тогда человечество изобрело ответ - тренажерные залы. Люди начали ходить туда, чтобы целенаправленно нагружать мышцы, которые больше не использовались в повседневной работе.

Как разработчикам адаптироваться?

Решение - создать для себя (или купить абонемент в) «интеллектуальный тренажерный зал». Это целенаправленная и регулярная практика фундаментальных концепций и прикладных технологий. Вот что может быть в вашей «тренировочной программе»:

* Изучение алгоритмов и структур данных. Основа для оценки производительности любого кода, в том числе сгенерированного ИИ.

* Глубокое понимание моделей управления памятью и параллелизма. Это ключ к реализации сложных и производительных фич в высоконагруженных системах.

* Освоение принципов системного дизайна и архитектуры. ИИ может написать отдельный компонент, но может не справиться с проектированием всей системы. Это навык, который позволяет вам видеть картину в целом.

* Работа с языками, которые заставляют думать. Такие языки как Rust или Zig, с их строгими правилами работы с памятью и конкурентностью, сами по себе являются отличным тренажером.

* Изучение смежных направлений, таких как безопасность и DevOps. Понимание того, как ваш код будет развертываться, работать и защищаться в реальном мире, - это критически важный контекст, который ИИ не может предоставить.

Я уверен, что на рынке скоро начнут появляться такие тренажёрные залы для программистов. А вы бы целенаправленно пользовались ими?

🔥- да
👍 - надо подумать
😐 - нет

И давайте обсудим в комментариях 🙂

#ai #cognitive_atrophy #devgym
🔥19👍4😐31
Первый казахстанский единорог?

На днях появилась новость, что стартап Higgsfield AI стал первым казахстанским единорогом. Об этом заявил сооснователь компании Александр Машрабов. Он сказал, что Higgsfield пересёк run rate revenue в 50 миллионов долларов и оценка компании превысила 1 миллиард долларов. А именно такие стартапы называют "единорогами" ("unicorns").

Но действительно ли он является казахстанским?

Наше государство (как и многие другие) любит приписывать себе успехи компаний и людей из других стран. Возьмём, к примеру, спорт. 3 года назад теннисистка Елена Рыбакина выиграла Уимблдон, чтобы было представлено как величайший триумф казахстанского спорта. Хотя Рыбакина - уроженка Москвы и воспитанница российской школы тенниса. В 18 лет, не получая достаточной финансовой поддержки в России, она приняла предложение от Федерации тенниса Казахстана.

Другой пример - Astana Hub. Международный технопарк IT-стартапов позиционируется как центр технологического прорыва Казахстана. Однако значительная часть его резидентов - это компании и специалисты из России, Беларуси, Украины и других стран, которые переехали в Казахстан, привлеченные специальным налоговым и визовым режимами. И стремительный рост экспорта ИТ-решений из Казахстана в большой мере их заслуга.

Я не скажу, что все приведённые случаи это плохо. Привлечение спортсменов, специалистов и компаний делает страну более узнаваемой плюс позволяет использовать их опыт для развития собственных кадров. Но всё же хотелось бы иметь больше примеров успешных людей и компаний, которые действительно являются плодом развития Казахстана в спорте, образовании, технологиях. Те, кто родились в Казахстане, получили тут образование и возможности для развития.

Давайте посмотрим, кто такой Александр Машрабов. Он является уроженцем Челябинска, а образование получил в одном из сильнейших вузов России - МФТИ. После выпуска он работал в Яндексе. А затем стал одним из основателем стартапа AI Factory, который через несколько лет был куплен компанией Snap за 166 миллиона долларов. Александр также перешёл в компанию Snap, где отвечал за разработку генеративного ИИ. Хм, что-то про Казахстан в его биографии ни слова.

Но у Higgsfield AI есть ещё один сооснователь - Ерзат Дулат. И это меняет дело. Ерзат родился в Алматы и учился в знаменитой РФМШ. Там он увлёкся ИТ и сконцентрировался на изучении искусственного интеллекта. Он писал open source библиотеки для ИИ, которые использовались по всему миру. В 2018 году ему даже предложили работу в OpenAI, но он отказался, решив заниматься собственными проектами. Что интересно, в вуз он не поступил. По его словам, в Казахстане попросту не было нужного ему уровня образования.

В 2023 года Ерзат продумал идею для стартапа - создание платформы для обучения больших нейронных сетей. С этой идеей он пришёл к инвестору Мурату Абдрахманову и получил 250 тысяч долларов на развитие стартапа. После этого Ерзат предложил Александру Машрабову стать сооснователем. Тот согласился, но в процессе обсуждений команда решила изменить направление с платформы для обучения ИИ на генерацию видео. Так родился Higgsfield AI.

Вся команда Higgsfield состоит из казахстанцев и находится в Алматы. В США только Александр. Всё это я узнал из отличного подкаста nFactorial, куда был приглашён Ерзат. Он рассказал, что их команда во всём мире воспринимается как команда суперзвёзд. В ней работают разработчики, ML инженеры, Data инженеры, промпт-инженеры, маркетологи, операторы, режиссёры. Среди них много победителей международных олимпиад по математике и физике.

Higgsfield AI - действительно казахстанский единорог! Его сделали инженеры, креативщики и маркетологи, родившиеся и получившие образование в Казахстане. И сейчас их компания является стартапом по генерации видео номер 1 на рынке США.

Посмотрите подкаст, вдохновитесь. Пример Ерзата показывает, что если упорно заниматься тем, что реально нравится, то можно добиться поставленных целей и стать лидером на мировом уровне. И всё это находясь в Казахстане. Поздравим нашу страну с первым единорогом, начало положено 🚀

#higgsfield #ai
🔥242
DynamoDB

Несколько дней назад произошёл глобальный сбой у крупнейшего облачного провайдера планеты - AWS. Из-за этого упали как часть сервисов самого AWS, так и другие сервисы: Snapchat, Reddit, Pinterest, Spotify. Последствия сбоя устраняли больше суток.

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

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

В этом посте я не буду разбирать постмортем. Это уже сделали на множестве других ресурсов. Но в то же время, я убеждён, что подобные ситуации должны давать новые знания и опыт сообществу. И поэтому я хочу поговорить о самом DynamoDB - сервисе, отказ которого из-за DNS привёл к каскаду остальных сбоев. Будет небольшая серия постов.

Что такое DynamoDB?

Для хранения данных можно использовать классическую реляционную базу данных (например, PostgreSQL или MySQL). В таких базах данные хранятся в строго структурированных таблицах с заранее определенной схемой. Для получения связанных данных из разных таблиц используются операции JOIN. Этот подход хорошо подходит для сложных запросов, но он сложнее масштабируется.

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

Amazon DynamoDB - это полностью управляемая, бессерверная (serverless) NoSQL база данных, созданная для обеспечения производительности с задержками в единицы миллисекунд при любом масштабе. Разберем по частям:

* «Полностью управляемая» и «бессерверная» означает, что разработчикам не нужно заниматься администрированием серверов, установкой ПО, настройкой или обновлениями. AWS берет на себя все эти задачи. Более того, DynamoDB может масштабироваться до нуля: если к таблице нет запросов, вы за нее не платите.

* NoSQL означает, что у базы нет жесткой схемы, как в реляционных базах (за исключением первичного ключа). Каждый элемент (запись) может иметь разный набор атрибутов. DynamoDB поддерживает две основные модели данных: ключ-значение и документо-ориентированную, что позволяет хранить данные в форматах вроде JSON.

Использование внутри AWS

Сама Amazon использует DynamoDB для своих самых критически важных и высоконагруженных систем. Это классический пример «dogfooding» - использования собственных продуктов.

Ежегодная распродажа Prime Day является самым показательным примером. Статистика пиковых нагрузок на DynamoDB во время Prime Day:

* Prime Day 2024: 146 миллионов запросов в секунду
* Prime Day 2023: 126 миллионов запросов в секунду
* Prime Day 2022: 105,2 миллиона запросов в секунду
* Prime Day 2017: 12,9 миллиона запросов в секунду

Эти цифры на 4 порядка выше производительности любой реляционной БД в стандартном исполнении (10-15 тысяч запросов в секунду на мощном железе).

Использование клиентами

Тысячи компаний по всему миру полагаются на DynamoDB для своих самых требовательных приложений:

* Snapchat: Перестроил свою самую большую рабочую нагрузку на запись - функцию Stories - для работы на DynamoDB, чтобы улучшить производительность и снизить стоимость.

* Disney+: Использует глобальные таблицы DynamoDB для таких функций, как списки просмотра и рекомендаций, обеспечивая низкую задержку для миллионов пользователей по всему миру.

* Capcom: Обеспечивает работу своих популярных онлайн-игр, которые требуют обработки миллиардов запросов с задержками в единицы миллисекунд.

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

#aws #dynamodb
👍9🔥71
Следующая статья про DynamoDB получилась объёмной и не помещается в максимальный размер поста Telegram. Я на днях запущу персональный блог и опубликую статью там. А пока пост из жизни нашего сообщества Drim Team 🙂
👍4🔥1
Недавно к нашему сообществу Drim Team присоединился новый участник - Денис @imajus. Мы с ним познакомились на проведённом нами хакатоне HackLoad 2025. Денис опытный разработчик с 20+ годами опыта. Недавно он опубликовал статью про своё участие уже в другом хакатоне - ETHOnline - где он решал ту же задачу создания надёжного билетного сервиса, но уже на основе блокчейна. Вот ссылка на статью, рекомендую к прочтению, очень интересно. Вот ссылка на репозиторий с кодом.

По файлам проекта видно, что Денис активно использовал Claude Code. Для получения стабильных результатов он применял spec-driven development. Это важный опыт для современной разработки и я уверен, что Денис усилит наше сообщество и вместе мы сможем ещё быстрее прорабатывать и внедрять новые подходы использования ИИ для кратного ускорения разработки. Что касается опыта с блокчейном, то он у Дениса тоже большой, ведь он на постоянной основе участвует в хакатонах и занимает там высокие места. Это тоже будет полезно для Drim Team.

А мне стало вот что интересно. Хайп блокчейна уже давно прошёл. Что происходит на рынке сейчас? В каких сферах блокчейн реально приносит пользу? Актуально ли разработчикам специализироваться на блокчейне? Много ли вакансий и хорошие ли зарплаты? Давайте попробуем разобраться.

Опыт Дениса очень показателен, и чтобы ответить на эти вопросы, я изучил последние отраслевые отчеты. Первое, что бросается в глаза: пока хайп вокруг NFT и Web3-революции стихал, корпоративный и инфраструктурный рынок рос экспоненциально. Разные агентства дают разные цифры, но все сходятся в прогнозах: ожидаемый совокупный среднегодовой темп роста (CAGR) на ближайшие 5-10 лет составляет от 53% до 65%.

Так где же "скучная", но реальная польза? Ответ - в корпоративном секторе. Более 70% предприятий в 2024 году начали использовать блокчейн для повышения прозрачности цепочек поставок и эффективности цифровых платежей. Это уже не спекуляции, а реальная оптимизация бизнес-процессов, приносящая измеримую пользу.

Вопреки шуму вокруг публичных сетей, сегмент частных (private) блокчейнов занимает огромную долю рынка - 43% в 2025 году. Регулируемые отрасли, такие как финансы и здравоохранение, выбирают их за возможность контроля и безопасности.

Теперь о главном: вакансии и зарплаты. Компенсации в индустрии остаются одними из самых высоких в IT. Средняя зарплата блокчейн-разработчика в США в 2025 году составляет около $146,250. Для Senior-специалистов (5+ лет опыта) вилка $150,000 - $200,000 является нормой, а специализированные роли, такие как Blockchain Architect или Security Engineer, оплачиваются еще выше, достигая $200,000.

Существует ли "блокчейн-премия"? Да, но это не плата за знание Solidity. Это премия за риск и безопасность. Ошибка в смарт-контракте необратима и может стоить компании сотен миллионов. Для тех, кто ищет удаленную работу, ставки фрилансеров достигают $80 - $150 в час, а средняя зарплата на постоянной удалённой позиции держится в районе $60,000.

Но "легкого входа" здесь нет. Рынок испытывает острый дефицит специалистов, но этот дефицит существует на уровне Senior/Architect. Данные показывают, что более 81% блокчейн-компаний находятся на ранних стадиях (seed или venture). Они не нанимают джуниоров для поддержки, а агрессивно ищут опытных Senior+ инженеров, способных с нуля построить и обезопасить ядро продукта.

И здесь мы возвращаемся к опыту Дениса и хакатонам. Это действительно один из главных "лифтов" в индустрию. Масштаб огромен: хакатоны Solana (Renaissance, Radar) собирают по 8,000-10,000+ участников из 100+ стран. Призовые фонды достигают $1 миллиона, с гран-при в $50,000 и призами по трекам в $30,000.

Вывод: Рынок блокчейна - это не «прошлое», а вполне реальное и быстрорастущее настоящее. Если поставить цель и целенаправленно двигаться к ней, то можно построить на этом рынке хорошую карьеру.

#drim_team #blockchain
🔥73👍2👏1
Drim Dev
DynamoDB Несколько дней назад произошёл глобальный сбой у крупнейшего облачного провайдера планеты - AWS. Из-за этого упали как часть сервисов самого AWS, так и другие сервисы: Snapchat, Reddit, Pinterest, Spotify. Последствия сбоя устраняли больше суток.…
После крупного сбоя у AWS в октябре я решил написать серию статей о сервисе, который стал виновником сбоя, - о DynamoDB. Эта база данных является представителем семейства NoSQL и весьма интересно посмотреть, как она устроена, и как ей пользоваться. Так сказать, увидеть альтернативу привычным реляционным базам данных.

Я начал писать серию на канале, но понял, что такой формат не подходит для нормального изучения. Поэтому я решил развернуть свой блог и написать статью там. В процессе я думал, как ещё можно повысить эффективность обучения. И решил, что читателям было бы хорошо не только получить знания, но и тут же проверить их. И прикольно было бы использовать для этого ИИ. Сказано - сделано. Так родилась новая версия сайта https://drim.dev.

На этом сайте есть блог, где я буду публиковать свои мысли. И ещё есть раздел "Навыки". Это набор навыков и знаний, которые нужны разработчикам, чтобы преуспеть в современной индустрии. И первый опубликованный навык - Amazon DynamoDB. Это не самая важная технология, которую нужно знать. Но на её примере я решил начать развивать свою методику.

Навык представляет собой одну страницу с детальным материалом, структурированным от простому к сложному. Я не стал делать много страниц для каждого навыка. Это упростит навигацию. Пользователь будет читать часть материала и после него может проверить себя. Для этого есть две возможности.

Первая это классический квиз. Читатель видит вопросы и должен дать на них ответы исходя из того, что он только что узнал. Это помогает закрепить материал.

Второй механизм - это ИИ-наставник. Он ставит вам задачу и ведёт в процессе её решения. Задаёт вопросы, направляет, объясняет непонятные вещи. Разговаривать с наставником можно после каждого раздела. Есть одна сквозная задача - создание конкурента Twitter. И вы шаг за шагом её решаете, используя DynamoDB. Это ещё более мощный способ закрепить материал. Кстати, у наставника есть имя - Назар 🙂.

Для общения с Назаром используется LLM, каждый вызов которой нужно оплачивать. Поэтому у каждого пользователя есть отдельный бюджет токенов, которые тратятся во время обсуждений с наставником. Каждый месяц пользователи получают по 5 миллионов токенов. Но также есть возможность запросить дополнительные, если не будет хватать.

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

Приглашаю вас зайти и изучить DynamoDB. Всего за несколько часов вы получите хорошее представление об этой технологии. Это пригодится при выборе архитектурных решений и на собеседованиях. Вот ссылка на навык - https://drim.dev/skills/amazon-dynamodb. Постепенно я буду добавлять новые навыки и совершенствовать методику обучения. Будет интересно 🚀

P.S. Отдельно хочу отметить, что разработку сайта и материалов я начал 28 октября. В неделю тратил часов по 12. То есть за 60 часов (5 недель) я с нуля разработал программное решение и написал детальную статью с проверочным материалом. Это получилось сделать благодаря активному использованию ИИ. Без него я бы на эту работу потратил раз в 5 больше времени. Качество решения было бы хуже. Скоро я расскажу о том, как я использую ИИ в процессе разработки. Чтобы каждый из вас тоже смог повысить свою эффективность и качество работы.
🔥63👍1
Курс по ускорению разработки с помощью ИИ

Если бы меня спросили, что самое важное произошло в моей карьере в уходящем году, я бы сразу ответил - внедрение агентов для разработки во все мои проекты. В течение года я много экспериментировал и в итоге сформировал процесс, который ускорил меня минимум в 3 раза. Теперь я почти не пишу код руками. Я руковожу ансамблем из агентов Claude Code, которые описывают требования, создают UI, пишут тесты и пишут код. Для этого я дообучил агентов, чтобы они использовали мои знания и мои подходы к разработке.

Всё это ощущается как супер-сила. Я теперь быстрее завершаю проекты и могу делать вещи, которые не были бы возможны, если бы агентов не было. Выше я уже писал, что сайт Drim Dev я разработал и запустил с начальным контентом всего за 60 часов. Это полторы недели, если работать по 8 часов в день. Без агентов я бы его разрабатывал минимум 2-3 месяца. Всё это дало ускорение моей карьере. Я стал значительно больше зарабатывать.

В то же время, в сообществе до сих пор много скепсиса и непонимания, как правильно использовать ИИ для разработки. Использовать ли агентов и, если да, то каких? Как заставить агента не писать лишний код? Не вырастет ли количество багов, если код будет писать агент? Как правильно писать тесты с помощью ИИ? Как научить агента использовать правильные подходы и соглашения команды? Что такое MCP? Что такое RAG? Не атрофируются ли мои навыки? Как джуниору или мидлу правильно использовать ИИ?

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

У курса две задачи. Первая - сформировать фундаментальное понимание того, как устроены LLM, контекст, агенты, MCP, RAG. Только понимая основы, можно системно и осознанно использовать эти технологии. Также это позволит в дальнейшем следить за развитием ИИ и с пониманием дела внедрять новинки в свою работу.

Вторая задача - каждый студент должен на практике использовать полученные знания. Для этого в течение курса мы вместе разработаем 2 проекта: ИИ-ментора и собственного агента для разработки. Кроме того, каждый студент получит возможность разработать собственный проект на "родном" стеке и закрепить весь процесс. Я буду проводить ревью и консультировать на всём протяжении этого проекта.

Вот ссылка на страницу курса https://drim.dev/courses/ai-superpower-for-developers. Там вы сможете узнать больше деталей и записаться. Если есть вопросы, можете задать их мне напрямую - @mitro52.

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

#drim_dev #courses #ai
🔥13