<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>Forem: Ваграм Катранян</title>
    <description>The latest articles on Forem by Ваграм Катранян (@vagram123).</description>
    <link>https://forem.com/vagram123</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F3871574%2F3c76fb5e-104c-460c-b1b6-db503f736117.png</url>
      <title>Forem: Ваграм Катранян</title>
      <link>https://forem.com/vagram123</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://forem.com/feed/vagram123"/>
    <language>en</language>
    <item>
      <title>LeetCode и алгоритмы: подготовка к стажировке</title>
      <dc:creator>Ваграм Катранян</dc:creator>
      <pubDate>Fri, 17 Apr 2026 19:08:36 +0000</pubDate>
      <link>https://forem.com/vagram123/leetcode-i-alghoritmy-podghotovka-k-stazhirovkie-1m6d</link>
      <guid>https://forem.com/vagram123/leetcode-i-alghoritmy-podghotovka-k-stazhirovkie-1m6d</guid>
      <description>&lt;p&gt;&lt;strong&gt;Введение&lt;/strong&gt;&lt;br&gt;
Примерно месяц я готовлюсь к стажировке и системно решаю задачи на LeetCode. Начал с уровня Easy, чтобы закрепить базовые алгоритмы и постепенно перейти к более сложным.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Темы алгоритмов&lt;/strong&gt;**&lt;br&gt;
Каждая задача на LeetCode связана с определённой темой:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;два указателя,&lt;/li&gt;
&lt;li&gt;бинарный поиск,&lt;/li&gt;
&lt;li&gt;работа со стеком,&lt;/li&gt;
&lt;li&gt;рекурсия,&lt;/li&gt;
&lt;li&gt;динамическое программирование.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Такой подход помогает не просто решать задачи, а видеть общие паттерны и понимать, какие структуры данных и техники применяются в разных ситуациях.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Почему алгоритмы важны?&lt;/strong&gt;&lt;br&gt;
На собеседованиях в большие компании часто проверяют умение решать алгоритмические задачи. Это не про «зубрёжку», а про умение мыслить и находить оптимальные решения.&lt;br&gt;
Мой процесс выглядит так:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Пишу шаблон решения.&lt;/li&gt;
&lt;li&gt;Дописываю логику пошагово.&lt;/li&gt;
&lt;li&gt;Определяю асимптотику по времени и памяти.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Так я учусь не только решать задачу, но и объяснять её решение — что критично на интервью.&lt;/p&gt;

&lt;p&gt;*&lt;em&gt;Заключение *&lt;/em&gt;&lt;br&gt;
LeetCode помогает не только прокачать алгоритмы, но и научиться мыслить как инженер: видеть проблему, искать оптимальное решение и объяснять его другим.&lt;/p&gt;

</description>
      <category>programming</category>
      <category>computerscience</category>
      <category>algorithms</category>
    </item>
    <item>
      <title>Мини-интернет магазин на Django</title>
      <dc:creator>Ваграм Катранян</dc:creator>
      <pubDate>Fri, 10 Apr 2026 11:06:16 +0000</pubDate>
      <link>https://forem.com/vagram123/mini-intierniet-maghazin-na-django-37hh</link>
      <guid>https://forem.com/vagram123/mini-intierniet-maghazin-na-django-37hh</guid>
      <description>&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Figg9l8jgq1n5ji0n9bfb.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Figg9l8jgq1n5ji0n9bfb.jpg" alt="Главная страница магазина" width="800" height="324"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F6gzkle8mbndq8l8pyxng.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F6gzkle8mbndq8l8pyxng.jpg" alt="Регистрация" width="800" height="309"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h1&gt;
  
  
  Мини-интернет магазин на Django
&lt;/h1&gt;

&lt;h2&gt;
  
  
  Введение
&lt;/h2&gt;

&lt;p&gt;Во время обучения backend-разработки, я решил создать практический проект - мини-интернет магазин. Целью было закрепить навыки работы с Django и Django REST Framework, реализовать базовый функционал авторизации, каталога товаров и заказов.&lt;/p&gt;

&lt;h2&gt;
  
  
  Технологии и стек
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Python 3.12&lt;/li&gt;
&lt;li&gt;Django
-Django REST Framework (DRF)
-MySQL
-JWT - аутентификация&lt;/li&gt;
&lt;li&gt;Ролевая авторизация (админ/пользователь)&lt;/li&gt;
&lt;li&gt;OpenAPI&lt;/li&gt;
&lt;li&gt;unittest&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Основной функционал
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Регистрация и авторизация пользователей.&lt;/li&gt;
&lt;li&gt;Каталог товаров с CRUD‑операциями.&lt;/li&gt;
&lt;li&gt;Корзина и оформление заказа.&lt;/li&gt;
&lt;li&gt;Админ‑панель для управления товарами и заказами.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Сложности и решения
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;JWT токены: реализовал обновление токена для безопасности.&lt;/li&gt;
&lt;li&gt;Тестирование: написал unit‑тесты для API‑эндпоинтов.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Чему я научился
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Правильная структура приложений Django упрощает поддержку.&lt;/li&gt;
&lt;li&gt;Консистентность REST API важна для удобства клиентов.&lt;/li&gt;
&lt;li&gt;Тесты помогают быстрее находить ошибки.&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>webdev</category>
      <category>python</category>
      <category>learning</category>
      <category>backend</category>
    </item>
  </channel>
</rss>
