Array, List, Dictionary, Queue, Stack, HashSet и кастомные коллекции — ключевые инструменты для оптимизации игр.
В карточках всего не уместишь, поэтому, после прочтения, советуем заглянуть в нашу статью.
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🥱15❤4👍1
Составили для вас промпт, который поможет вам пройти собеседование, если у вас не хватает опыта. Помимо редактирования резюме, нужно уметь отвечать за свои знания и действия во время собеседования, представить свой опыт и показать свою готовность к обучению и развитию.
Промпт:
Вы опытный технический лидер и рекрутер с более чем 15-летним стажем в индустрии разработки программного обеспечения. Вы видели множество кандидатов, как честных, так и... менее честных. У вас есть острое чувство для выявления несоответствий и понимания нюансов технических навыков. Ваша цель — предоставить практические советы кандидату, который пытается разобраться с непростой ситуацией объяснения нехватки опыта, если он мог приукрасить свое резюме.
Вот формат, который вы будете использовать для анализа проблемы и выработки отличной рекомендации:
Ситуация кандидата
$candidate_situation (Опишите ситуацию кандидата, сосредоточив внимание на несоответствии между его резюме и реальным опытом)
Потенциальные риски завышения опыта
$risks_of_misrepresentation (Перечислите потенциальные негативные последствия преувеличения опыта, как в краткосрочной, так и в долгосрочной перспективе)
Этические соображения
$ethical_considerations (Кратко обсудите этические последствия завышения опыта)
Рекомендованный подход: Прозрачность и демонстрация навыков
$recommended_approach (Это основа ваших советов. Сосредоточьтесь на том, как кандидат может быть прозрачным в отношении своего опыта, при этом подчеркивая свои навыки и потенциал)
Ключевые стратегии для преодоления "разрыва в опыте"
Признание и переформулировка: $strategy_1 (Как признать несоответствие, не признавшись в явном обмане)
Фокус на навыках и проектах: $strategy_2 (Как продемонстрировать навыки через личные проекты, вклад в open-source или соответствующие курсы)
Подчеркнуть способность к обучению: $strategy_3 (Как показать готовность и способность быстро учиться и адаптироваться к новым технологиям)
Подчеркнуть страсть и энтузиазм: $strategy_4 (Как передать искренний интерес к роли и компании)
Подготовка к техническим вопросам: $strategy_5 (Как предугадать и ответить на технические вопросы, даже если нет прямого профессионального опыта)
Примеры ответов на часто задаваемые вопросы на собеседованиях
"Расскажите о вашем опыте работы с [Технология X]": $example_response_1 (Пример ответа, который признает ограниченный профессиональный опыт, но подчеркивает соответствующие навыки и проекты)
"Почему мы должны нанять вас, а не кого-то с большим опытом?": $example_response_2 (Пример ответа, который акцентирует внимание на потенциале, способности к обучению и страсти)
Долгосрочная стратегия для карьеры
$long_term_strategy (Предложите шаги, которые кандидат может предпринять, чтобы получить настоящий опыт и построить прочную основу для своей карьеры)
Вот задача, с которой вам предстоит справиться: Кандидат завысил количество лет опыта в своем резюме, чтобы выглядеть более конкурентоспособным для ролей младшего инженера программного обеспечения. Сейчас он проходит собеседования и не уверен, как отвечать на вопросы о своем "опыте", не попав в ловушку лжи. Ему нужны советы о том, как пройти собеседования и в итоге получить работу.
💬 Какие у вас сложности с прохождением собеседований?
Please open Telegram to view this post
VIEW IN TELEGRAM
❤1👍1😢1
Сейчас большинство представлений об ИИ ограничиваются одним агентом — моделькой, которая что-то предсказывает, генерирует или классифицирует.
Но реальный прорыв начинается, когда этих агентов становится несколько.
Когда они начинают взаимодействовать друг с другом.
Когда появляется координация, распределение ролей, память, планирование — всё это и есть мультиагентные системы (MAS).
— Microsoft делает язык DroidSpeak для общения между LLM
— Open Source-фреймворки вроде LangChain, AutoGen, CrewAI, LangGraph — бурно развиваются
— компании, включая МТС, уже применяют MAS в боевых задачах
🎓 На курсе мы подходим к этому практично:
Именно на третьем уроке вы впервые собираете не просто «умного бота», а живую систему из агентов, которая работает вместе — как команда.
Причём по-настоящему: врач, SQL-аналитик, travel-планировщик, Python-генератор, поисковик.
Please open Telegram to view this post
VIEW IN TELEGRAM
👾4🥱2❤1
Please open Telegram to view this post
VIEW IN TELEGRAM
😁32💯4🔥2👍1
🔍 Как диагностировать проблемы с производительностью в .NET
Когда вы сталкиваетесь с неожиданными задержками или замедлением работы, важно быстро выявить источник проблемы. Разберёмся как это сделать.
1. Понимание проблем с производительностью
В первую очередь, нужно понять, какие именно симптомы проявляются. Это могут быть:
• Долгое время отклика на запросы
• Увеличение времени обработки операций.
• Частые паузы или лаги, которые не зависят от внешней нагрузки.
2. Использование инструментов для профилирования
.NET предоставляет инструменты для профилирования и анализа производительности:
— PerfView. Инструмент для сбора и анализа трассировок и дампов памяти, который позволяет обнаружить узкие места в работе приложения
— dotTrace и Visual Studio Diagnostic Tools. Для анализа использования процессора и памяти, выявления горячих точек и оптимизации производительности.
— Application Insights. Сервис для мониторинга и анализа производительности в реальном времени.
3. Проверка работы сборщика мусора
Если ваше приложение не может эффективно управлять памятью, это приведет к длительным паузам, особенно в больших распределенных системах.
Фоновая сборка мусора в .NET может повлиять на производительность, если куча больших объектов часто расширяется.
Процесс аллокации памяти и выделение больших объектов может также привести к частым паузам, особенно если ваша система не успевает очистить память между сборками.
4. Анализ работы с памятью
Использование Large Object Heap для хранения больших объектов может вызвать проблемы с производительностью, так как LOH очищается реже и требует дополнительного времени для управления.
Проблемы с памятью также могут быть связаны с неэффективной работой с кэшами и слишком большими или неправильно настроенными буферами.
Зачастую сложно сразу найти проблемы с кодом, но это того стоит, особенно на длинной дистанции, чтобы не копить техдолг.
🐸 Библиотека шарписта #буст
Когда вы сталкиваетесь с неожиданными задержками или замедлением работы, важно быстро выявить источник проблемы. Разберёмся как это сделать.
1. Понимание проблем с производительностью
В первую очередь, нужно понять, какие именно симптомы проявляются. Это могут быть:
• Долгое время отклика на запросы
• Увеличение времени обработки операций.
• Частые паузы или лаги, которые не зависят от внешней нагрузки.
2. Использование инструментов для профилирования
.NET предоставляет инструменты для профилирования и анализа производительности:
— PerfView. Инструмент для сбора и анализа трассировок и дампов памяти, который позволяет обнаружить узкие места в работе приложения
— dotTrace и Visual Studio Diagnostic Tools. Для анализа использования процессора и памяти, выявления горячих точек и оптимизации производительности.
— Application Insights. Сервис для мониторинга и анализа производительности в реальном времени.
3. Проверка работы сборщика мусора
Если ваше приложение не может эффективно управлять памятью, это приведет к длительным паузам, особенно в больших распределенных системах.
Фоновая сборка мусора в .NET может повлиять на производительность, если куча больших объектов часто расширяется.
Процесс аллокации памяти и выделение больших объектов может также привести к частым паузам, особенно если ваша система не успевает очистить память между сборками.
4. Анализ работы с памятью
Использование Large Object Heap для хранения больших объектов может вызвать проблемы с производительностью, так как LOH очищается реже и требует дополнительного времени для управления.
Проблемы с памятью также могут быть связаны с неэффективной работой с кэшами и слишком большими или неправильно настроенными буферами.
Зачастую сложно сразу найти проблемы с кодом, но это того стоит, особенно на длинной дистанции, чтобы не копить техдолг.
Please open Telegram to view this post
VIEW IN TELEGRAM
❤11👍1
🤔 Такие ли айтишники проблемные
Многие думают, что айтишники наполовину состоят из проблем с головой. Кто в этом виноват и стоит ли переживать?
На одной стороне стоят те, кто уверены: IT-сфера — это «психологическая бомба замедленного действия», и в ней нужно менять многое, чтобы сохранить благополучие специалистов.
Возможно, нужна более гибкая и заботливая рабочая среда?
С другой стороны — есть мнение, что в любых профессиях существует стресс, и айтишники, как люди, привыкшие к решению сложных задач, должны научиться справляться с ними.
Наш админ думает так:
💬 Что думаете об этом? Как у вас обстоят дела с головой? Делитесь в комментариях 👇
Понравился пост? Поделитесь бустом, а мы взамен поделимся топовым контентом.
🐸 Библиотека шарписта #междусобойчик
Многие думают, что айтишники наполовину состоят из проблем с головой. Кто в этом виноват и стоит ли переживать?
На одной стороне стоят те, кто уверены: IT-сфера — это «психологическая бомба замедленного действия», и в ней нужно менять многое, чтобы сохранить благополучие специалистов.
Возможно, нужна более гибкая и заботливая рабочая среда?
С другой стороны — есть мнение, что в любых профессиях существует стресс, и айтишники, как люди, привыкшие к решению сложных задач, должны научиться справляться с ними.
Наш админ думает так:
Как тут не свихнёшься, когда тебя каждый день спрашивают одно и то же в надежде на изменения? Как попугаи «Какой статус? Какой статус?»
💬 Что думаете об этом? Как у вас обстоят дела с головой? Делитесь в комментариях 👇
Понравился пост? Поделитесь бустом, а мы взамен поделимся топовым контентом.
Please open Telegram to view this post
VIEW IN TELEGRAM
😁9❤1
Мультикурсор однозначно маст-хев для работы с однотипными изменениями в коде. Вместо монотонных изменений — раз и готово.
Смотрите и сохраняйте себе хоткеи для VS Code с картинки.
Please open Telegram to view this post
VIEW IN TELEGRAM
❤3
🤯 Мы больше года строим мультиагентные системы
Грабли, находки, паттерны, эксперименты — всё это накопилось и в какой-то момент стало жалко держать только у себя.
Никита — рассказывает (и показывает) базу: токенизация, LLM, SFT, PEFT, локальный инференс + RAG и как оценивать его качество.
Диана — как строят мультиагентные системы, какие есть паттерны проектирования и библиотеки.
Макс — про инференс в проде + разберет CoPilot, соберет с вами из кусочков свой копайлот, а затем его сломает через prompt injection. // Макс фанат autogen (а если нет — он вас разубедит в своем классном канале)
Финальным аккордом Дима углубится в MCP и соберет несколько кейсов повзрослее.
Курс тут: https://clc.to/47pgYA
Промокод:datarascals действует до 23:59 29 июня
Грабли, находки, паттерны, эксперименты — всё это накопилось и в какой-то момент стало жалко держать только у себя.
Никита — рассказывает (и показывает) базу: токенизация, LLM, SFT, PEFT, локальный инференс + RAG и как оценивать его качество.
Диана — как строят мультиагентные системы, какие есть паттерны проектирования и библиотеки.
Макс — про инференс в проде + разберет CoPilot, соберет с вами из кусочков свой копайлот, а затем его сломает через prompt injection. // Макс фанат autogen (а если нет — он вас разубедит в своем классном канале)
Финальным аккордом Дима углубится в MCP и соберет несколько кейсов повзрослее.
Курс тут: https://clc.to/47pgYA
Промокод:
🥱5
Представьте себе онлайн-магазин в средневековом стиле, где можно не только купить или продать товары, но и почувствовать атмосферу старинного рынка.
Именно такой проект недавно был создан с использованием ASP.NET.
Что интересно, это не просто сайт, а платформа с микросервисной архитектурой. Это значит, что каждый компонент (например, аутентификация или обработка объявлений) работает как отдельный микросервис.
Please open Telegram to view this post
VIEW IN TELEGRAM
❤5
Давайте решим, нужны ли комментарии в коде:
💯 — Нужны
⚡️ — Можно и без них
🐸 Библиотека шарписта #развлекалово
💯 — Нужны
Please open Telegram to view this post
VIEW IN TELEGRAM
💯152⚡91👾1
Сеньору запретили писать откровения на ревью, поэтому он опять наказан использованием эмодзи.
Пишите в комментарии, что это он написал на картинке 👇
Please open Telegram to view this post
VIEW IN TELEGRAM
Ключевые новости, которые могли ускользнуть от вашего внимания.
— Диагностика задержек в .NET
В статье описан случай, когда некоторые запросы в .NET-приложении занимали до 20 секунд, происходя это с периодичностью каждые полчаса. Узнайте в статье разобрался ли автор с этой проблемой.
— Руководство по выживанию с устаревшим кодом
В 2025 году Visual Basic 6.0 уже почти не используется, а VB.NET и .NET Framework постепенно уходят в прошлое, оставшись только для поддержки старых приложений.
— xUnit для сложных интеграционных тестов
Джереми Миллер описывает, как интегрировать логирование в xUnit для сложных интеграционных тестов с использованием Wolverine.
Please open Telegram to view this post
VIEW IN TELEGRAM
❤4
Middle/Senior C# разработчик — удалёнка.
C# Developer — до 5500 $, удалёнка.
Full-Stack .NET Developer — до 450 000 ₽, удалёнка.
Tech Lead AI — от 450 000 ₽, удалёнка.
С#-разработчик — от 250 000 ₽, удалёнка.
Бустер — Удалённо (в любом городе мира).
Please open Telegram to view this post
VIEW IN TELEGRAM
🛠 Гид по Redis в C#
Представьте, что ваши запросы обрабатываются мгновенно. Для этого можно использовать Redis. Сейчас покажем как это сделать.
1. Устанавливаем
2. Создаём подключение
3. Базовые операции: SET и GET
4. Механизм подписки и публикации
Подписчик:
Публикация:
5. Дополнительно: списки, хэши и TTL
Пушим и читаем из конца/начала:
Группируем поля в одном ключе:
TTL для удаления ключей через время:
Бонус: бест практис
• ConnectionMultiplexer — тяжёлый объект, создавайте один раз.
• Используйте ConfigureAwait(false) и ловите исключения RedisConnectionException.
• Выполняйте атомарные операции на стороне сервера для консистентности.
• При росте нагрузки переходите на кластерный режим или Redis Sentinel для отказоустойчивости.
В будущем Redis становится центром событийной архитектуры: Stream-поддержка и геоданные открывают новые горизонты.
🐸 Библиотека шарписта #буст
Представьте, что ваши запросы обрабатываются мгновенно. Для этого можно использовать Redis. Сейчас покажем как это сделать.
1. Устанавливаем
Install-Package StackExchange.Redis
2. Создаём подключение
using StackExchange.Redis;
var redis = ConnectionMultiplexer.Connect("localhost:6379");
IDatabase db = redis.GetDatabase();
3. Базовые операции: SET и GET
// Записываем строку
bool setResult = db.StringSet("user:42:name", "ProgLib");
Console.WriteLine($"SET OK: {setResult}");
// Читаем строку
string name = db.StringGet("user:42:name");
Console.WriteLine($"GET: {name}"); // → ProgLib
StringSet
возвращает true, если всё прошло гладко. StringGet
в случае отсутствия ключа вернёт null.4. Механизм подписки и публикации
Подписчик:
var sub = redis.GetSubscriber();
sub.Subscribe("notifications", (channel, message) => {
Console.WriteLine($"Получено сообщение: {message}");
});
Публикация:
sub.Publish("notifications", "Новый заказ №128");
5. Дополнительно: списки, хэши и TTL
Пушим и читаем из конца/начала:
db.ListRightPush("tasks", "Сделать отчёт");
var task = db.ListLeftPop("tasks");
Группируем поля в одном ключе:
db.HashSet("session:1001", new HashEntry[] {
new HashEntry("userId", 42),
new HashEntry("expiresAt", DateTime.UtcNow.AddMinutes(30).ToString("O"))
});
var expires = db.HashGet("session:1001", "expiresAt");
TTL для удаления ключей через время:
db.StringSet("cache:item:7", "данные", TimeSpan.FromMinutes(5));
Бонус: бест практис
• ConnectionMultiplexer — тяжёлый объект, создавайте один раз.
• Используйте ConfigureAwait(false) и ловите исключения RedisConnectionException.
• Выполняйте атомарные операции на стороне сервера для консистентности.
• При росте нагрузки переходите на кластерный режим или Redis Sentinel для отказоустойчивости.
В будущем Redis становится центром событийной архитектуры: Stream-поддержка и геоданные открывают новые горизонты.
Please open Telegram to view this post
VIEW IN TELEGRAM
❤14👍5🔥2