Search
Write a publication
Pull to refresh
3
0
Егор @Ommonick

SDET teamlead

Send message

Ключ к эффективности разработки: делать то, что нужно, но лишнего не делать

Reading time2 min
Views5.4K

Кучу времени можно сэкономить если:


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


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

Читать дальше →

Протоколы семейства TCP/IP. Теория и практика

Level of difficultyMedium
Reading time23 min
Views217K
image

В сети можно найти огромное количество материала о том, как функционируют сети на базе стека протоколов TCP/IP, а также как писать компьютерные программы с сетевыми возможностями. При рассмотрении компьютерных сетей часто углубляются в описание физических основ и структур данных, передаваемых по сети, а при рассмотрении сетевого программирования основное внимание уделяют интернет-сокетам.

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

В ходе работы над статьёй я написал небольшое приложение, которое послужит отправной точкой для понимания компьютерных сетей и семейства протоколов TCP/IP. С приложением можно экспериментировать, получая дополнительные знания.

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

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

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

Level of difficultyMedium
Reading time10 min
Views5.5K

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

Изменение API вы можете встретить в разных кейсах. От изменение протоколов взаимодействия с сетью до изменения нативных API биометрией.

Узнай как сделать приложение масштабируемым и не наступать на грабли!

Читай и не наступай на грабли ?

Проектирование отказоустойчивости IT-систем

Reading time11 min
Views24K

❓Как проектировать системы, которые будут толерантными для различного вида отказов и ошибок?

Что такое отказоустойчивость и стабильность?

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

1. Деградация работоспособности системы должна быть прямо пропорциональна "величине" отказа. То есть, если упал сервис, отвечающий за некую некритичную функциональность — вся система не должна при этом падать. Да, небольшой кусочек не работает, но это не влияет на стабильность остальной части функционала.

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

Читать далее

Регрессионная спираль смерти

Reading time11 min
Views7.4K

Перевод статьи подготовлен в преддверии старта курса «Автоматизация тестирования на JavaScript»





История, которая может показаться вам до боли знакомой:


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

Читать дальше →

Творец Колосса. История Томаса Флауэрса

Level of difficultyEasy
Reading time9 min
Views6.1K


Говорят, что война — это битва не только снарядов и брони, но и информационных технологий. В современном мире это действительно так, однако справедливость данного высказывания в полной мере относится и ко Второй мировой войне. На Германскую авиационную промышленность работали созданные Конрадом Цузе компьютеры Z2 и Z3, а на фронте немецкая армия вовсю использовала сложные системы шифрования для передачи сообщений, которые союзникам требовалось оперативно расшифровывать. И здесь им на помощь пришла мощная вычислительная машина, которую построил простой инженер почтовой службы, британец Томми Флауэрс.
Читать дальше →

Особенности проксирования через CDN/Websocket/gRPC для обхода блокировок

Level of difficultyMedium
Reading time15 min
Views96K

Эта статья — заключительная (наконец‑то!) из моего огромного цикла про недетектируемые инструменты для обхода блокировок. В предыдущих публикациях я упоминал, что клиенты и серверы XRay (форк V2Ray) и Sing‑box при использовании протоколов VLESS/VMess/Trojan могут работать через веб‑сокеты и gRPC, что позволяет подключаться к даже заблокированным Роскомнадзором прокси‑серверам через CDN (content delivery или content distribution network) и дает дополнительные преимущества. Сегодня мы поговорим об этом поподробнее.

Читать далее

100+ тестов на Vanessa-Automation. Личный опыт без маркетинга

Reading time18 min
Views15K

Всем привет.

Сегодня я хотел бы поговорить немного про тестирование в 1С.

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

Читать далее

Основы TCP/IP для будущих дилетантов

Reading time11 min
Views486K
Предположим, что вы плохо владеете сетевыми технологиями, и даже не знаете элементарных основ. Но вам поставили задачу: в быстрые сроки построить информационную сеть на небольшом предприятии. У вас нет ни времени, ни желания изучать толстые талмуды по проектированию сетей, инструкции по использованию сетевого оборудования и вникать в сетевую безопасность. И, главное, в дальнейшем у вас нет никакого желания становиться профессионалом в этой области. Тогда эта статья для вас.

Читать дальше →

Романы, получившие одновременно и «Локус», и «Небьюлу»

Reading time3 min
Views20K

«Локус» и «Небьюла» вместе с «Хьюго» составляют тройку престижнейших фантастических литературных премий. При этом устроены они совершенно по-разному. За «Хьюго» голосуют участники фестиваля WorldCon. «Локус» вручается с 1971 года, а победителей выбирают читатели одноименного издания. А победители «Небьюлы» (впервые вручена в 1966 году) выбираются членами жюри. Любопытно, что в последние годы читатели «Локуса» и судьи «Небьюлы» проявляют удивительное единодушие. Четыре раза за последние пять обе премии имели общего лауреата.

Читать далее

Windows — причина медленного интернета

Level of difficultyEasy
Reading time4 min
Views126K

Если вы столкнулись с «особой» проблемой медленного интернета и никакие танцы с бубном вам не помогают, то это статья для вас.

Провайдер, роутер, интернет-кабели, rg-45, обжимка, cat5e, порты, драйвера, программы уменьшающие скорость, утилиты, вирусы, настройки сетевого адаптера — это не какие-то страшные слова, на самом деле это всё не причина замедления интернета. В случае, если вы прошли всю эту цепочку и ничего не изменилось, тогда читайте дальше.

В этой статье я поделюсь своим «интересным» опытом, как я искал решение проблемы и о том, что Windows можно починить и не переустанавливать.

Читать далее

USB HID устройства на службе пентестера. Часть 3

Level of difficultyMedium
Reading time5 min
Views3K

В этой, завершающей статье нашего цикла, посвященного использованию HID USB устройств для тестирования на проникновение мы рассмотрим вопросы использования наших устройств против ОС Linux и затем перейдем к тому, как можно защититься от таких атак.

Читать далее

Шпаргалка для собеса по GoLang

Reading time30 min
Views57K

"Правильно заданный вопрос - половина ответа". Осваиваю профессию Prompt Engineering. Это ответы на вопросы. Мопед не мой. Спасибо, Codeium. Не обрабатывал наводящие подвопросы, а надо бы. Но может быть кому-то пригодится и в таком виде.

Читать далее

Модель Такмана в переговорах

Level of difficultyEasy
Reading time17 min
Views9.4K

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

Читать далее

Как писать полезные тесты для микросервисов

Level of difficultyMedium
Reading time29 min
Views13K

Привет! Меня зовут Гриша и я бэкенд разработчик на .net 

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

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

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

Читать далее

Спуфинг, боты и брутфорс. Как с помощью QA улучшить систему логирования и обеспечить безопасность на крупном сервисе

Level of difficultyMedium
Reading time13 min
Views2.6K

Привет, Хабр! Для любого сервиса главное — это клиент. Когда он уходит, становится очень больно. Вдвойне больнее, если сервисом пользуются боты вместо реальных людей. Но понять это бывает не так просто, особенно если боты — нейросети.

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

Забегая вперед — это были и разлогины пользователей, и запросы на восстановление доступа, брутфорс паролей, а главное — ботовая активность. А все вместе это влияло на общую доступность сервиса, и, соответственно, экономическую эффективность проекта. Поэтому было важно обнаружить и устранить корень проблемы, а не только последствия. Как это удалось и какие результаты мы получили? 

Материал будет полезен QA-специалистам, аналитикам, лидам и project-менеджерам.

? Читать далее

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

Reading time11 min
Views13K

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

Читать далее

Теневое правление Илона Маска

Level of difficultyEasy
Reading time29 min
Views24K

Перевод фрагмента статьи из newyorker.com, где собраны множество реплик коллег и знакомых Илона Маска о его детстве, карьерном пути и влиянии на современную политику.

Читать далее

Ретрогейминг в стиле мини: современные версии классических игровых приставок от Nintendo, Sega, Atari и других компаний

Reading time6 min
Views6.7K

Старые игры никем не забыты — они популярны до сих пор. Кроме того, любители ретрогейминга собирают дома коллекции старых видеоконсолей, картриджи, диски и кассеты с играми. Но несколько лет назад компания Nintendo сделала интересный ход — выпустила мини-версию своей 8-битной консоли с современным «железом». После этого аналогичные инкарнации своих устройств выпустили и другие компании. Давайте посмотрим, какие приставки сейчас доступны для геймера. Возможно, какие-то из них есть и в вашей коллекции? Если да, напишите об этом в комментариях.

Читать далее

Герои напильника и паяльника: итоги сезона DIY

Reading time8 min
Views17K

В классических RPG персонаж игрока занимается, по сути, ровно двумя вещами: качается и причиняет миру добро. Эти вещи взаимосвязаны: чем больше причинил добра, тем больше дали очков опыта. Чем сильнее прокачал навыки, тем больше можешь причинить миру добра. DIY — тоже в каком-то смысле RPG. Собрав работающий электросамокат на базе нерабочего гироскутера, одновременно и новые безумные скиллы приобретаешь, и сынишку радуешь, и немного даже об окружающей среде заботишься.

Привет, Хабр! Сезон DIY подходит к концу, и мы, компания VK, пришли его торжественно закрыть, раздать особо отличившимся героям лут и голду, а заодно — поговорить о том, чему именно учится DIY’щик и какое конкретно добро он причиняет миру.

Читать далее

Information

Rating
Does not participate
Works in
Date of birth
Registered
Activity

Specialization

Backend Developer, Quality Assurance Analyst
Lead