Pull to refresh
6
0
Александр Згнётов @azgnetov

User

Send message

Обзор Spring-компонентов. Часть 1 – Spring Boot и фреймворк интеграции

Reading time18 min
Views43K

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

Читать далее
Total votes 14: ↑13 and ↓1+16
Comments1

Собеседование на Java разработчика. Разбор 1606 вопросов и ответов. Часть 3 (с 270 по 370 вопрос)

Level of difficultyEasy
Reading time78 min
Views11K

Всем привет! Меня зовут Владимир Баганов. Я продолжаю серию статей с простым разбором вопросов на собеседованиях на Java разработчика. Под капотом 370 разобранных вопросов из 1606 вопросов.

Читать далее
Total votes 17: ↑5 and ↓12-7
Comments6

Собеседования для бэкендеров: как готовиться, тренироваться и не облажаться

Level of difficultyEasy
Reading time5 min
Views12K

Привет, Хабр! Меня зовут Гриша Скобелев, я бэкенд-разработчик, у меня есть гитара, кошка и скейтборд. Я так сильно люблю Spring Framework, что назвал кошку в честь него — Веснуша. Возглавляю программный комитет Podlodka Java Crew, где мы делаем классные конференции. Еще я организовал книжный клуб для бэкенд-разработчиков { между скобок }. Хочу поделиться своим опытом развития бэкендера — от собеседования до наработки разных навыков для роста. Тут будет много ссылок, практических советов и инструкций, которые я наработал за время своей карьеры, общения с другими бэкендерами и проведения конференций и консультаций.

Читать далее
Total votes 23: ↑20 and ↓3+19
Comments15

Собеседование на Java разработчика. Разбор 1606 вопросов и ответов. Часть 2 (с 170 по 269 вопрос)

Level of difficultyHard
Reading time102 min
Views20K

Всем привет! Меня зовут Владимир Баганов. Я продолжаю серию статей с простым разбором вопросов на собеседованиях на Java разработчика. Под капотом 269 разобранных вопросов из 1606 вопросов.

Читать далее
Total votes 16: ↑8 and ↓8+3
Comments3

Собеседование по Java. Разбор 1606 вопросов и ответов. Часть 1 (с 1 по 169 вопрос)

Level of difficultyMedium
Reading time127 min
Views67K

Всем привет! Меня зовут Владимир Баганов. Я хочу начать серию статей с простым разбором вопросов на собеседованиях на Java разработчика. Под капотом 169 разобранных вопросов из 1606 вопросов.

Читать далее
Total votes 16: ↑8 and ↓8+3
Comments14

Как проходит интервью с QA-инженерами в Тинькофф

Reading time9 min
Views45K

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

Договоримся, что термины «тестировщик», «QA» и «инженер» равнозначны и используются с целью разнообразить слог. Профессионально мы строим команды фулстек-QA-инженеров, но идеологию затронем лишь вкратце. Материал будет полезен тем, кто интересуется процессами в крупных компаниях, видит свое будущее в качестве QA-инженера или хочет работать именно в Тинькофф. Если это про вас — добро пожаловать под кат!

Читать далее
Total votes 20: ↑16 and ↓4+13
Comments20

Изучаем mutmut — инструмент для мутационного тестирования на Python

Reading time3 min
Views7.9K
Мутационное тестирование позволяет выявить баги, которые не покрыты обычными тестами.

У вас есть тесты на все случаи жизни? Или может быть, в репозитории вашего проекта даже лежит справка «О 100-процентном тестовом покрытии»? Но разве в реальной жизни всё так просто и достижимо?


Читать дальше →
Total votes 20: ↑18 and ↓2+22
Comments8

Фаззинг тестирование веб-интерфейса. Расшифровка доклада

Reading time7 min
Views6.6K


В начале этого года Тензор проводил митап в городе Иваново, на котором я выступил с докладом про эксперименты с фаззинг-тестированием интерфейса. Тут расшифровка этого доклада.

Когда обезьяны заменят всех QA? Можно ли отказаться от ручного тестирования и UI автотестов, заменив их фаззингом? Как будет выглядеть полная диаграмма состояний и переходов для простого TODO приложения? Пример реализации и о том, как работает такой фаззинг далее под катом.
Читать дальше →
Total votes 15: ↑15 and ↓0+15
Comments0

Мутационное тестирование

Reading time12 min
Views41K

Юнит тесты помогают нам удостовериться, что код работает так, как мы этого хотим. Одной из метрик тестов является процент покрытия строк кода (Line Code Coverage).


Но насколько корректен данный показатель? Имеет ли он практический смысл и можем ли мы ему доверять? Ведь если мы удалим все assert строки из тестов, или просто заменим их на assertSame(1, 1), то по-прежнему будем иметь 100% Code Coverage, при этом тесты ровным счетом не будут тестировать ничего.


Насколько вы уверены в своих тестах? Покрывают ли они все ветки выполнения ваших функций? Тестируют ли они вообще хоть что-нибудь?


Ответ на этот вопрос даёт мутационное тестирование.

Читать дальше →
Total votes 60: ↑58 and ↓2+56
Comments41

Мутационное тестирование: как поможет и чем лучше воспользоваться

Reading time6 min
Views4K

Насколько вы уверены в своих тестах? Покрывают ли они все ветки выполнения ваших функций? Можем ли мы доверять Code Coverage? Ответы на эти вопросы дает мутационное тестирование. Для того чтобы пролить свет на самые темные его уголки, мы поговорили с PHP девелопером Itransition Максом Рафалко.

Макс — разработчик фреймворка для мутационного тестирования в PHP, который называется Infection. А на конференции PHP Russia 2021 он будет выступать с докладом, который познакомит слушателей с методологией мутационного тестирования.

Читать далее
Total votes 20: ↑19 and ↓1+29
Comments4

План подготовки к собеседованию на позицию Java разработчика

Reading time5 min
Views63K
Каждый раз, готовясь к собеседованиям на позицию «Java разработчик», я понимаю, что мне бы очень помог конкретный план подготовки. Поэтому все свои записи, накопившиеся в ходе прохождения собеседований, было решено структурировать и опубликовать. Надеюсь, кому-то этот план будет полезен.

И я намеренно не пишу, для кого предназначен этот план подготовки: для senior, middle или junior разработчика — все зависит от конкретной вакансии и от требований работодателя. Поэтому опирайтесь на этот план, но фильтруйте и в то же время не воспринимайте его как исчерпывающее руководство.

  1. Java core. Здесь можно ориентироваться например на книгу «OCP: Oracle Certified Professional Java SE 8 Programmer II Study Guide: Exam 1Z0-809» для подготовки к Java сертификации уровня Professional. Есть подобная книга «OCA: Oracle Certified Associate Java SE 8 Programmer I Study Guide: Exam 1Z0-808» для уровня Associate — на нее тоже можно взглянуть. Пройдитесь по оглавлению и выделите для себя, что можно повторить. Конечно же, не стоит пускаться во все тяжкие и читать книгу от корки до корки — многие темы из этой книги можно обойти стороной, например форматирование дат. Выделите самое основное. Например для меня это были следующие темы: коллекции (стандартные вопросы «Как устроена HashMap?» или «Чем отличается LinkedList от ArrayList?» все также часто задают на собеседованиях), дженерики, функциональные интерфейсы, многопоточность (тут тоже фильтруйте — не нужны вам cyclic barrier и fork join framework).
    Также не забывайте проецировать знания на свой опыт. Например, когда вам приходилось использовать многопоточное программирование? Какие проблемы вы решали? Какие блокировки использовали?
  2. Многопоточность.
Читать дальше →
Total votes 32: ↑30 and ↓2+28
Comments16

Гайд для новичков по установке Kubernetes

Level of difficultyMedium
Reading time33 min
Views68K

© кадр из к/ф «Пираты Карибского моря»

С чего начинается практическое освоение любой системы? Правильно, с установки. Данный гайд является компиляцией из народной мудрости, официальной документации, а также собственного опыта и призван помочь новичкам разобраться с тем, как же все таки устанавливать Kubernetes.

Мы потренируемся ставить как вырожденный кластер «все-в-одном», состоящий только из одного узла, так и настоящий высокодоступный (high available) кластер с полным резервированием. В процессе работы мы рассмотрим применение различных контейнерных движков (Container Runtimes): cri-o, containerd, связки Docker + cri-dockerd plugin. Кроме этого, потренируемся настраивать отказоустойчивый балансировщик нагрузки на базе keepalived и haproxy.

Весь процесс установки будет детальным образом прокомментирован и разложен по шагам, а в реперных точках мы будем делать снимки состояния виртуальных машин (snapshots), что позволит рассмотреть различные варианты установки без необходимости делать одну и ту же работу по несколько раз.
Читать дальше →
Total votes 22: ↑21 and ↓1+24
Comments13

Information

Rating
Does not participate
Works in
Registered
Activity

Specialization

Test Automation Engineer, Quality Assurance Engineer