Pull to refresh
0
0
Дмитрий @ex_ineris

QA Engineer

Send message

Базы данных: общие понятия. SA для самых маленьких

Level of difficultyEasy
Reading time7 min
Views8.2K

Добро пожаловать в блок статей для начинающих системных/бизнес аналитиков. Здесь мы готовимся к получению заветного оффера вместе

Пожалуй, начнем с самого базового и примитивного - определения.

База данных (БД) - это набор данных, хранящихся в структурированном виде.

Вторым ключевым понятием является СУБД.

Система управления базами данных (СУБД) - это системы (или программы), позволяющие создавать базы данных и манипулировать сведениями из них.

Схема ниже представляет собой упрощенный процесс взаимодействия с БД

Читать далее

Языки программирования, взорвавшие мой мозг

Level of difficultyMedium
Reading time11 min
Views31K

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

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

Нагружаем и отдыхаем: load testing без стресса ч.2 — автоматизация

Level of difficultyMedium
Reading time12 min
Views1.8K

Привет, Хабр, это снова Валентина, которая отвечает за качество low-code платформы Eftech.Factory в компании Effective Technologies. Представляю вторую статью из серии публикаций о наших практиках нагрузочного тестирования (НТ). Первую, про поиск оптимального процесса НТ, можно прочесть здесь. На этот раз я собираюсь поделиться рекомендациями по автоматизации рутины и отчётности. 

Чтобы провести нагрузочное тестирование без стресса, надо позаботиться о сохранении своего ресурса — времени и нервов. Также мне кажется правильным освободить себя от рутинных и нудных дел, чтобы заниматься интересными и сложными задачами.

Чтобы достичь этих целей, я выработала для себя антистрессовый чек-лист из пяти пунктов.

По ним мы сегодня и пойдём.

Читать далее

Управляем проектом и его документацией при помощи Python

Level of difficultyMedium
Reading time19 min
Views8.2K

Доброго времени суток, хабр! Управление проектом — это настоящее искусство, требующего внимания к деталям, навыков планирования. Документация, планы и структура проекта должна составляться в первую очередь, перед написанием кода.

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

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

Читать далее

Скилл-нутриенты для тестировщика и не только: зачем выращивать в себе технолога

Level of difficultyEasy
Reading time11 min
Views5K

Однажды я задумался, почему одни QA-инженеры застревают в мидлах, а другие — дорастают до CTO. Я исследовал эту тему, проводил интервью и пришёл к определённым выводам, которыми готов поделиться. 

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

Читать далее

Пять техник, как помочь себе, если вы забываете иностранные слова в речи

Level of difficultyEasy
Reading time4 min
Views18K

Вы учите язык, общаетесь на нем по работе или учебе, и постоянно ловите себя на том, что какие-то слова «вылетают» из головы. Причем это могут быть как сложные для русскоязычного восприятия слова, которые вы недавно изучили, так и абсолютно простые, по типу boring  -скучный, или software -программное обеспечение.

Часто такая забывчивость очень фрустрирует говорящих, начинаются самобичевания – «плохая память, возраст, мне не дано».

Я собрала пять  простых техник для тех, кто сталкивается с подобными сложностями, на примере английского языка. Да, кому-то они могут показаться упрощениями, но на практике, если вы сталкиваетесь с таким забыванием в потоковой речи с иностранцем, гораздо проще заранее держать в памяти какие-то инструменты, которые можно использовать как «скорую помощь». Как гласит китайская пословица – «Готовь зонт прежде, чем пойдет дождь».

Читать далее

Детское программирование: 10 проектов, которые могут создать дети

Level of difficultyEasy
Reading time6 min
Views7.3K

Детское программирование пусть и кажется спорной и даже сомнительной темой, но навыки, которые ребята получают на курсах кодинга или путем самостоятельных занятий, закладывают основы формирования личности XXI века. Знания и умения, связанные с IT, способствуют развитию компьютерной грамотности, часто становятся полезными в школьном обучении, домашних делах и даже в момент профессионального самоопределения. 

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

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

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

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

Читать далее

Разрабатываем первое AI приложение

Level of difficultyMedium
Reading time13 min
Views9.6K

Эволюция языка сыграла значительную роль в развитии человечества. Она дает нам возможность делиться знаниями и работать вместе. Благодаря этому большая часть нашего опыта продолжает сохраняться и передаваться через разные письменные тексты.

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

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

Читать далее

ByeDPI + Redsocks на OpenWRT: дарим свободу локальной сети на дровах (на примере ASUS RT-N12 ROM/ОЗУ: 8/32 Мб)

Level of difficultyEasy
Reading time6 min
Views108K

Решение проблемы зачастую упирается в использование роутеров с ограниченными ресурсами, таких как ASUS RT-N12 VP B1 с ROM/ОЗУ 8/32 Мб. В этой статье я расскажу, как настроить связку ByeDPI и Redsocks на роутере с OpenWRT, даже если ваш роутер далеко не топ по характеристикам.

## Зачем нужны ByeDPI и Redsocks?

ByeDPI — это утилита для обхода DPI (Deep Packet Inspection), которая изменяет сетевые пакеты таким образом, чтобы они не распознавались системами фильтрации трафика.

Redsocks — это прокси-инструмент, который перенаправляет трафик через SOCKS или HTTP прокси, даже если приложение не поддерживает прокси напрямую.

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

Ставим ByeDPI и Redsocks на OpenWRT

Немного про UEFI и GRUB

Level of difficultyHard
Reading time8 min
Views33K

В данной статье пойдёт речь об особенностях UEFI на примере переноса Debian Stretch с MBR на UEFI. Опишу так же разницу между MBR и UEFI, так как я её воспринимаю.

Кроме общей части, ключевая часть статьи про формирование GRUB EFI файла grubx64.efi во время grub-install и про то, что этот файл не так прост, как кажется на первый взгляд.

Читать далее

«Удалённо» управляем компьютером с доступом в BIOS

Level of difficultyMedium
Reading time9 min
Views50K


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

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

Но как это сделать? Вот этим мы тут и будем заниматься…
Читать дальше →

Мои заметки про процессоры для cовсем маленьких

Level of difficultyMedium
Reading time14 min
Views13K

Центральный процессор (CPU, Central Processing Unit) — это основной компонент устройств, который выполняет все вычисления и логические операции, необходимые для работы программ.

Здесь я постараюсь рассказать про строение и работу процессора на примере x86–64 архитектуры.

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

Я решил поделиться своими заметками, так как возможно кому-то это может показаться полезным. На детальность информации не претендую, но не против конструктивной критики.

Вот довольно неплохие видео, которые noob friendly:

1) https://www.youtube.com/watch?v=ubsZ9MO9qkU

2) https://www.youtube.com/watch?v=aNVMpiyeY_U&t=280s

Устройство процессора (схематически).

Читать далее

8 инструментов для разработчиков, которые стоит попробовать

Level of difficultyEasy
Reading time5 min
Views11K

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

Читать далее

Как написать Android приложение, которое не будет стыдно положить в портфолио. Гайд для новичков в Android разработке

Level of difficultyEasy
Reading time22 min
Views17K

Гайд по написанию Android-приложения с нуля, используя лучшие архитектурные подходы – Clean Architecture и MVI, они обеспечат поддерживаемость, тестируемость и масштабируемость приложения, что особенно важно для сложных и долгосрочных проектов.

Читать далее

Цифровые часы для дома на светодиодной ленте

Level of difficultyEasy
Reading time3 min
Views11K

Про конструкцию больших часов на светодиодной ленте я уже писал в одной из своих прошлых статей. Эти часы, размером 320 на 100 см, адаптированы к установке на открытом воздухе на улице. Тогда же, 7 лет назад, сразу же после изготовления этих часов я приступил к реализации другой похожей конструкции, размером меньше, для комнаты. Данная статья, можно сказать, является дополнением той вышеупомянутой статьи. Все основные подробности изложены именно там. А здесь я расскажу про особенности, касающиеся второй менее габаритной конструкции.

Читать далее

Один деплой, чтоб править всеми: катим разные микросервисы по одинаковым рельсам

Level of difficultyMedium
Reading time11 min
Views5.4K

Привет, Хабр! Расскажу про единый деплой для всех приложений в кластер K8s и поделюсь, как нам удаётся жить без OPA rules и не допускать дичи некорректных манифестов в кластере.

Читать далее

VPN с Mobile IP на Raspberry Pi. WG туннель

Level of difficultyEasy
Reading time13 min
Views6.5K

Для умных дядь в статье ничего интересного, это статья про обычный туннель. Оно для самых маленьких, но отчаянно нуждающихся. Никаких wg-quick'ов тут, впрочем, не будет. :)

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

Читать далее

FlexiPrompt: Удобное создание динамических промптов в Python

Level of difficultyEasy
Reading time4 min
Views2.6K

Эта статья будет полезна Python-разработчикам, работающим с языковыми моделями (LLM).

Недавно у меня возникла потребность в формировании промптов внутри python кода. Не хотелось брать тяжеловесные решения. Результатом работы стала небольшая библиотека.

Читать далее

BananaNAS — портативный NAS из одноплатника

Level of difficultyEasy
Reading time7 min
Views17K

В статье рассказывается о разработке портативного NAS с двумя дисками NVME на основе одноплатного компьютера. Даётся небольшая теория работы контроллера PCIe, рассказывается о проблемах интеграции своего модуля дисков, а также приводятся детали дизайна и результаты тестирования.

Детали разработки

Подходы к сокращению регрессионного тестирования

Reading time6 min
Views9.4K

Привет, Хабр! Меня зовут Ксения Сергеева, я QA-инженер в компании SM Lab, IT-подразделении Спортмастера. Сейчас работаю с мобильным приложением для продавцов, а за последние несколько лет успела потрудиться на благо финтеха и сервисов топливной компании. И, конечно, на каждом из проектов я сталкивалась с проведением регрессионного тестирования.

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

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

А еще регрессу как правило сопутствует куча ограничений. Сдвинулись сроки передачи фичи в тест? Время на регресс уменьшилось. Близится конец периода, а мы не все успеваем? Режем регресс. Коллега ушел на больничный и рук не хватает? Ну, вы понимаете.

Плюс, регресс — штука дорогая, ведь в это время команда (особенно QA) не занимается созданием новой ценности для заказчика и пользователя, а перелопачивает старую.

Читать далее

Information

Rating
7,834-th
Location
Днепр, Днепропетровская обл., Украина
Date of birth
Registered
Activity