Pull to refresh
9
0
Николай @primechord

Инженер

Send message

Подборка российских QA-конференций и митапов

Level of difficultyEasy
Reading time4 min
Views2.8K

Привет, Хабр! Меня зовут Василина Кузнецова, я работаю инженером по тестированию в Ozon Tech. Я часто смотрю отдельные видео докладов с конференций. Полезными для себя находила доклады про особенности Selenium и Playwright в тестах фронта, про правильный процесс код‑ревью, когда вводила его в своей команде, про опыт того, как настроить процесс распространения знаний по фичам с командой, про борьбу с флаки‑тестами и многие другие. Да и просто для развития в тестировании, чтобы быть в ногу со временем, особенно когда был период работать единственным тестировщиком на проекте.

В этом году я решила более систематично подойти к вопросу и спланировать свой календарь посещения конференций (онлайн и офлайн). Для этого я начала с подборки российских QA‑конференций и митапов на ближайший год. У некоторых мероприятий ещё нет точных дат, поэтому за основу брала расписание текущего года.

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

Итак, давайте начнём со списка конференций на 2025 год:

Читать далее
Total votes 9: ↑8 and ↓1+11
Comments2

Не играй в догонялки со Spring — Explyt Spring plugin для IDEA Community

Level of difficultyEasy
Reading time14 min
Views4.6K

Всем привет. После моей предыдущей статьи о Maven плагине, где я предложил новый подход к реализации и создал свою версию для IDEA (вместо того чтобы писать свой мини-мавен, я делегировал всю основную работу ему посредством Maven плагина), меня пригласили работать над Spring плагином в IT-стартап Explyt. Компания занимается автоматической генерацией тестов на базе AI и формальных методов. В процессе работы столкнулся с проблемами, похожими на те, которые решал в своем Maven плагине. У меня возникло некое дежавю, и я подумал: почему бы не использовать подобный подход, чтобы доработать и улучшить Dependency Injection Explyt Spring плагина? Текст для тех, кто работает со Spring-плагинами и хочет разобраться, как эффективно применять готовую логику Спринга для новых задач. Заходите под кат, подробно поделюсь своим кейсом, покажу код, расскажу про итерации и объясню логику.

Читать далее
Total votes 30: ↑26 and ↓4+27
Comments0

Действительно ли ИИ-помощники экономят время разработчиков?

Level of difficultyEasy
Reading time6 min
Views4.2K

Команда Spring АйО перевела статью об исследовании Uplevel, которое показало, что использование GitHub Copilot не улучшает производительность разработчиков, а наоборот — увеличивает количество ошибок в коде. 

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

Читать далее
Total votes 18: ↑16 and ↓2+16
Comments16

Более мощное семейство моделей YandexGPT 4: рост качества ответов, длинный контекст, пошаговые рассуждения

Reading time5 min
Views12K

Сегодня мы открываем доступ к четвёртому поколению наших больших языковых моделей: более мощная YandexGPT 4 Pro и облегчённая YandexGPT 4 Lite уже доступны через API в Yandex Cloud. Постепенно пользователям платформы станут доступны все их возможности. А первым сервисом Яндекса, где появится YandexGPT 4, станет Алиса с опцией «Про».

Новое семейство моделей умеет обрабатывать более сложные запросы, работать с расширенным контекстом, поддерживает скрытые рассуждения и вызов функций для работы с внешними инструментами. Нашей команде удалось значительно улучшить качество ответов: YandexGPT 4 Pro в 70% случаев отвечает лучше своей прошлой версии, а YandexGPT 4 Lite в среднем отвечает не хуже, чем самая мощная модель предыдущего поколения.

Вместе с Андреем Бутом @andbout, руководителем команды YandexGPT Alignment, кратко расскажем, что мы сделали для улучшения ответов и решения более сложных запросов, покажем результаты замеров качества и сравнения с другими моделями.

Читать далее
Total votes 39: ↑34 and ↓5+35
Comments48

Решение проблемы race condition в Kotlin корутинах

Level of difficultyMedium
Reading time4 min
Views5.4K

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

Читать далее
Total votes 7: ↑6 and ↓1+8
Comments3

Да будет справедливость или как найти друзей на удалёнке

Level of difficultyEasy
Reading time6 min
Views1.9K

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

Мне посчастливилось работать в одной очень крутой и заботливой компании, которая закрывала выше описанные мною потребности. То есть оплачивала групповые интересы своих сотрудников. Так я ходил с переменным постоянством на сквош, большой теннис, скалолазанье, гонку героев. Кроме этого было еще много коммьюнити - это и настольные игры, и занятия по пению, футбол, воллейбол, беговой клуб и скорее всего что-то еще что я не смог вспомнить. Честно говоря, такая забота меня просто поразила и я нигде такого не встречал.

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

У участников этого коммьюнити была проблема, на которой они чаще всего жаловались. Это способ записи на еженедельную тренировку. Дело в том, что на каждое коммьюнити компания выделяла определенный бюджет. И конкретно в большом теннисе его хватало на 2 тренировки в неделю максимальной вместимости по 8 чел в группе. При этом желающих в зависимости от сезона было больше чем могла вместить группа.

Читать далее
Total votes 9: ↑6 and ↓3+7
Comments6

Функциональные HTTP-эндпоинты с Spring MVC/WebFlux и Kotlin

Level of difficultyEasy
Reading time7 min
Views2.1K

Функциональные подходы к разработке в Spring становятся все более популярными благодаря своей гибкости и лаконичности. В новой статье от эксперта сообщества Spring АйО, Михаила Поливахи, рассматривается, как можно эффективно определять HTTP-эндпоинты с использованием Spring MVC/WebFlux, применяя функциональный стиль программирования на языке Kotlin. Аналогичный подход можно реализовать и на Java, хотя использование Kotlin позволяет существенно упростить код.

Читать далее
Total votes 9: ↑9 and ↓0+11
Comments1

У нас T-shape, а у вас?

Level of difficultyMedium
Reading time6 min
Views2.5K

Привет! Я Женя, ведущий автоматизатор, QA-Lead и лидер профессии по направлению QA. Эта статья о том, как мы развили инженерную культуру,, повысили масштабируемость команды и ускорили поставку.

Расскажу о нашем опыте использования практики T-shape, она же практика DevOps.В статье акцентирую внимание на плотной коллаборации QA и DEV инженеров в рамках работы над быстрой и качественной доставкой бизнес-ценности клиенту.

В эксперименте участвовало пять команд —  более 30 человек, которые работают над сервисом с входящей нагрузкой более 3 млн запросов в день.

Читать далее
Total votes 11: ↑8 and ↓3+7
Comments9

Как жить без IntelliJ IDEA? Часть №1. Собери сам

Level of difficultyEasy
Reading time9 min
Views39K

На российском рынке сложилась сложная ситуация с IDE для Java-разработчиков. Новости, связанные с ограничением скачивания IntelliJ IDEA Ultimate, недоступностью JetBrains маркетплейса и блокировкой лицензий, которые использовались на территории РФ порождают огромное количество вопросов, на которые не у всех есть ответы.

Команда Spring АйО подготовила цикл статей, в которых постарается ответить на все вопросы, связанные с уходом IntelliJ IDEA из России.

Читать далее
Total votes 43: ↑36 and ↓7+41
Comments124

Улучшаем процесс ревью в команде

Level of difficultyEasy
Reading time6 min
Views3.6K

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

Что же можно сделать в каждой из трех ролей, чтобы все остались довольны (и целы)?

Читать далее
Total votes 13: ↑10 and ↓3+10
Comments9

Тесты для функций compose в андроид

Level of difficultyEasy
Reading time5 min
Views1.3K

Представьте себе мир, где каждый раз, когда вы вносите изменения в код вашего приложения, вы уверены, что ничего не сломалось. Где ошибки обнаруживаются еще до того, как пользователи успеют их заметить. Где ваш код не только работает, но и документируется автоматически, улучшая архитектуру проекта с каждым тестом. Звучит как мечта? На самом деле это реальность, если вы правильно используете тесты. В этой статье мы погрузимся в мир тестирования Android-приложений с использованием Jetpack Compose, рассмотрим различные виды тестов и научимся настраивать и писать инструментальные тесты для ваших Compose функций.

Читать далее
Total votes 1: ↑1 and ↓0+3
Comments0

Пишем алгоритмы на самом ненужном языке в мире и страдаем

Level of difficultyHard
Reading time38 min
Views38K

Привет, Хабр!

То, что будет происходить ниже – сущий ад. Я буду писать простейшие программы на языке Whitespace (Но не такие простые, как в прошлой статье). Этот язык настолько ненужный, что оригинальный сайт с интерпретатором для этого языка уже давно мертв, все ссылки на оригинальные гайды, соответственно – тоже.

Наверное, в этой форме надо написать выжимку для привлечения внимания? Нуу, мы с головой запрыгнем в язык, состоящий из пробелов, черт побери, что вам еще нужно? А потом этим пробельным кодом отформатируем отрывок из книги «Война и Мир», и он будет прекрасно компилироваться.

Читать далее
Total votes 42: ↑41 and ↓1+51
Comments19

HMAC-SHA256 и Telegram Mini App

Level of difficultyMedium
Reading time13 min
Views1.6K

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

Мы с вами начнем с теории и проникая в глубь - мы закончим примером реального security фильтра который наглядно покажет, на примере аутентифицикации сообщения от Telegram - на сколько мощной может быть функция если это хеш-функция.

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

Читать далее
Total votes 7: ↑5 and ↓2+7
Comments4

Корутины: stackful vs stackless

Level of difficultyEasy
Reading time7 min
Views12K

В этой статье я хочу объяснить разницу между stackless и stackful корутинами: чем они отличаются, какие у них плюсы и минусы, а также в общих чертах рассказать, как в некоторых языках программирования реализована многопоточность.

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

Читать далее
Total votes 25: ↑23 and ↓2+27
Comments27

Делегаты и делегированные свойства в Kotlin

Level of difficultyEasy
Reading time5 min
Views2.4K

Привет, Хабр! Меня зовут Артем и я автор и ведущий YouTube канала Android Insights

Сегодня мы погрузимся в мир делегатов и делегированных свойств в Kotlin. Эта тема может показаться сложной на первый взгляд, но я постараюсь объяснить её максимально понятно и подробно. Итак, приступим!

Читать далее
Total votes 4: ↑3 and ↓1+2
Comments1

Koin: как сделать свой DI за 10 минут

Reading time19 min
Views5.8K

Привет, меня зовут Иван Курак, я Android-разработчик приложения Ozon Job. В этой статье мы реализуем свой механизм, на котором построен Koin. Тем самым мы пройдём путь, который проходили его авторы при решении проблемы построения собственного DI.

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

Дополнительная (но от того не менее важная) цель статьи — показать, что базовый механизм, на котором построен Koin, не такой уж и страшный :)

Тестовый текст
Total votes 16: ↑16 and ↓0+23
Comments7

Секреты айтишной карьеры, о которых лучше не рассказывать…

Level of difficultyEasy
Reading time11 min
Views85K

Секреты айтишной карьеры, о которых лучше не рассказывать...

...но которыми всё же с нами поделился QA lead "ITQ Group" Сергей Мурашов.

Давным-давно, когда трава была зеленой, а страна не пестрила рекламой IT-курсов, профессия тестировщика еще не была той самой ниточкой, за которую может зацепиться человек без сверхспособностей, чтобы попасть в мир IT. Именно тогда свой путь QA и начал автор этой статьи.

Читать далее
Total votes 55: ↑42 and ↓13+42
Comments34

Взлом JVM-приложения с помощью отладчика IntelliJ IDEA

Level of difficultyEasy
Reading time7 min
Views8.5K

Что если мы скажем вам, что отладчик может стать не просто инструментом для поиска ошибок, а настоящим «режимом бога» в мире кода? 

В новом переводе от команды Spring АйО рассматривается, как можно исследовать память приложения и изменить его функциональность, при этом не затрагивая исходного кода, а используя только лишь отладчик IntelliJ IDEA.

Читать далее
Total votes 30: ↑28 and ↓2+34
Comments4

С 80-х по 2024-й: как создавались и оптимизировались CI-тесты

Reading time9 min
Views2K

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

В прошлом непрерывное интеграционное тестирование было с нами не всегда, в отличие от обычного тестирования. По моим наблюдениям, CI — это результат того, что тестирование всё больше ускоряется. Разберёмся, как это произошло и как тестирование будет ускоряться дальше.

Читать далее
Total votes 12: ↑11 and ↓1+14
Comments0

Пишем простенький DI для Android приложения

Reading time9 min
Views5.4K

Сейчас практически любой проект имеет в своём составе как минимум одну библиотеку или решение для разруливания зависимостей, но далеко не каждый разработчик действительно понимает как устроены эти самые решения. Поэтому в этой статье я хотел бы прояснить некоторые базовые моменты, на которых построены такие известные библиотеки как Dagger, Hilt и Koin, а также показать на практическом примере как можно написать свое DI решение.

Читать далее
Total votes 3: ↑2 and ↓1+3
Comments6
1

Information

Rating
Does not participate
Works in
Registered
Activity