Search
Write a publication
Pull to refresh
0
Anton Petrov @ptrwxread⁠-⁠only

Backend

Send message

Из техпода в программисты (или Golang для самых маленьких)

Reading time11 min
Views47K

Доброго времени суток, Хабровчане! 

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

Читать далее

Тестировщик на прокачку: как X5 Group обучает SDET-специалистов

Reading time10 min
Views17K

Рынок автоматизированного тестирования — один из самых быстрорастущих в ИТ-индустрии. К 2024 году его объем достигнет планки в 30 млрд долларов. В то же время все больше компаний нанимает инженеров-тестировщиков широкого профиля, которые сопровождают продукт на протяжении всего жизненного цикла. 

Под катом Мария Снопок, руководитель команды тестирования Х5 Технологии, рассказывает о том, кто такие SDET и каким компаниям они нужны, а также делится собственным опытом обучения кадров.

Читать далее

Целевая аудитория: весь мир

Reading time2 min
Views46K
Многим из нас нередко приходят в голову новые идеи. Сайтов, программ, услуг, готового бизнеса, стартапа, наконец. Нередко бывает так, что идея направлена вроде бы на любого человека. Или, скажем, ваша потенциальная аудитория — “от 20 до 40, активные мобильные пользователи интернета”. Это сотни миллионов человек.

В любом how-to по маркетингу, вы найдете утверждение, что целевая аудитория должна быть определена максимально четко и по-возможности компактно. И тут-то начинает трещать шаблон: как же так? Мой замечательный продукт нужен всем, почему вместо 100 миллионов пользователей мне предлагают ограничить свой замечательный бизнес кругом в “три с половиной человека”, потеряв тем самым 99% потенциальной прибыли?
Узнать, почему здесь эта картинка

О целях

Reading time3 min
Views28K
Цель. Мы очень часто упоминаем это слово. Или говорим о целеустремленных людях. Или рассуждаем о средствах, не упоминая цели. Давайте разберемся, что же такое цель. Цель — это то, чего нужно достигнуть. Такое простое определение я использую для себя. Однако обманчивая простота требует ответить на несколько вопросов. Во-первых, нужно четко определить, чья это цель: ваша лично, компании, где вы работаете, какой-то группы людей, или быть может человечества?

Начнем с личных целей. Следующее, что следует определить — чего мы хотим достигнуть. Одним предложением. Но как дать правильное определение? Рецепт таков — когда цель будет достигнута, вы точно сможете это понять. Иными словами, цель должна быть измерима. Например: «хочу разбогатеть». Хорошее определение? Нет. Сейчас вам кажется богатством миллион долларов. Когда он у вас будет, вы вероятно посчитаете себя среднеобеспеченным человеком, но не богачом. «Хочу миллион долларов» — отлично. В кармане миллион — цель достигнута.
Читать дальше →

Мы сделаем этот велосипед за месяц

Reading time5 min
Views164K
Правильное управление процессом разработки это не меньшая проблема, чем собственно правильный код. Начинающие руководители часто даже не задумываются об этом, наступая на одни и те же грабли. На примере одной вымышленной истории попробуем разобраться какие проблемы нас ожидают и что можно сделать.

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

Велосипед


image
Итак, Вася долго трудился рядовым программистом, ведущим программистом и наконец стал Руководителем. У него есть команда отчаянных головорезов разработчиков в количестве двух единиц. Безусловно талантливых и знающих свое дело специалистов.

Вася получает первый заказ — надо сделать … велосипед.
Что же случилось далее

Путеводитель по инструментам автотестирования мобильных приложений

Reading time15 min
Views49K


…несмотря на то, что он кое в чём неполон, содержит много сомнительного или,
во всяком случае, вопиюще неточного, он имеет два важных преимущества:
во-первых, он немного дешевле, [...], а во-вторых, на его обложке большими
и приятными для глаз буквами написаны два слова «Без паники!»
— The Hitchhiker's Guide to the Galaxy

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

Меня зовут Арсений Батыров, я работаю в отделе QA Badoo и занимаюсь в основном ручным тестированием веб-приложений. А ещё я веду курсы по ручному и автоматическому тестированию мобильных приложений.

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

Я преследовал три цели:

  1. Классифицировать инструменты в стеке автотестирования, чтобы стали понятны их иерархия и сочетаемость.
  2. Показать, какие инструменты популярны сегодня на рынке.
  3. Рассказать про самые популярные инструменты каждого типа и сравнить их по нескольким параметрам.

Результатом моих трудов стал этот путеводитель по наиболее популярным и простым в освоении инструментам автотестирования мобильных приложений.

Пользуйтесь!

  • Выбираете инструмент — посмотрите сравнение.
  • Хотите узнать, как устроена автоматизация на мобильных устройствах — загляните в классификацию.
  • Хотите добиться повышения зарплаты — освойте популярный инструмент.
Читать дальше →

Основные linux-команды для новичка

Reading time14 min
Views1M
Linux — это операционная система. Как винда (windows), только более защищенная. В винде легко подхватить вирус, в линуксе это практически невозможно. А еще линукс бесплатный, и ты сам себе хозяин: никаких тебе неотключаемых автообновлений системы!

Правда, разобраться в нем немного посложнее… Потому что большинство операций выполняется в командной строке. И если вы видите в вакансии «знание linux» — от вас ожидают как раз умение выполнять простейшие операции — перейти в другую директорию, скопировать файл, создать папочку… В этой статье я расскажу про типовые операции, которые стоит уметь делать новичку. Ну и плюс пара полезняшек для тестировщиков.

Я дам кратенькое описание основных команд с примерами (примеры я все проверяла на cent os, red hat based системе) + ссылки на статьи, где можно почитать подробнее. Если же хочется копнуть еще глубже, то см раздел «Книги и видео по теме». А еще комментарии к статье, там много полезного написали)
Читать дальше →

Что такое CI (Continuous Integration)

Reading time10 min
Views157K
CI (Continuous Integration) — в дословном переводе «непрерывная интеграция». Имеется в виду интеграция отдельных кусочков кода приложения между собой. Чем чаще мы собираем код воедино и проверяем:

  • Собирается ли он?
  • Проходят ли автотесты?

Тем лучше! CI позволяет делать такие проверки автоматически. Он используется в продвинутых командах разработки, которые пишут не только код, но и автотесты. Его спрашивают на собеседованиях — хотя бы понимание того, что это такое. Да, даже у тестировщиков.

Поэтому я расскажу в статье о том, что это такое. Как CI устроен и чем он пригодится вашему проекту. Если вы больше любите видео-формат, можно посмотреть мой ролик на youtube на ту же тему.


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

Мнемоника: можно запомнить всё

Reading time5 min
Views431K
habrahabr.ru/post/179397 Вторая часть уже здесь!

Что такое мнемоника?


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

Самым простым примером мнемоники можно привести пример стишка, благодаря которому можно легко запомнить первые цифры после запятой в числе Пи:
Чтобы нам не ошибаться,
Надо правильно прочесть:
Три, четырнадцать, пятнадцать,
Девяносто два и шесть.
Ну и дальше надо знать,
Если мы вас спросим —
Это будет пять, три, пять,
Восемь, девять, семь.


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

Скажу откровенно, я специально не искал на хабре информацию по мнемонике. Я хочу изложить взгляд со своей стороны: то, что знаю я. У меня не было желания “разбавлять” информацию другими источниками. Под катом много полезной информации, которую я очень долго собирал по крупицам.
Читать дальше →

20 вопросов, которые стоит задать IT-компании, прежде чем сменить работу

Reading time4 min
Views68K
Если бы меня попросили дать один универсальный совет всем, кто ищет работу в IT, я бы сказал: не стесняйтесь задавать побольше вопросов. Мало приятного в том, чтобы через месяц осознать, что новая компания/должность — совсем не то, что вы искали. А если это вакансия с релокацией, цена ошибки возрастает в разы.

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


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

Важнейшие структуры данных, которые вам следует знать к своему собеседованию по программированию

Reading time7 min
Views77K


Никлаус Вирт, швейцарский ученый-информатик, в 1976 году написал книгу под названием «Алгоритмы + Структуры данных = Программы».

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

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

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

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

Переведено в Alconost
Читать дальше →

Как стать Oracle Certified Professional Java SE 8 Programmer

Reading time7 min
Views95K
В этой статье речь снова пойдет о сертификации. Не так давно я рассказывал о процессе получения сертификата от компании Google для Android разработчиков. Почитать об этом можно вот здесь. В статье я периодически приводил сравнение с процессом получения сертификатов от Oracle. Немного подумав, я решил раскрыть эту тему подробнее, благо сертификат от Oracle я получил полгода назад и еще не все забыл. Естественно, на хабре уже не раз описывали этот процесс. Например, достаточно подробные описания можно найти тут и тут. Однако, указанные статьи были написаны несколько лет назад, и затрагивают Java SE 7. Я же постараюсь сосредоточиться на особенностях экзамена по Java SE 8 и в принципе обновить информацию по процессу получения сертификата. Тех, кому все еще интерсено, прошу под кат.
Поехали

Внутренняя работа HashMap в Java

Reading time6 min
Views290K

[примечание от автора перевода] Перевод был выполнен для собственных нужд, но если кому -то это окажется полезным, значит мир стал хоть немного, но лучше! Оригинальная статья — Internal Working of HashMap in Java


В этой статье мы увидим, как изнутри работают методы get и put в коллекции HashMap. Какие операции выполняются. Как происходит хеширование. Как значение извлекается по ключу. Как хранятся пары ключ-значение.

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

Структуры данных в картинках. LinkedList

Reading time4 min
Views564K
Приветствую вас, хабражители!

Продолжаю начатое, а именно, пытаюсь рассказать (с применением визуальных образов) о том как реализованы некоторые структуры данных в Java.



В прошлый раз мы говорили об ArrayList, сегодня присматриваемся к LinkedList.

LinkedList — реализует интерфейс List. Является представителем двунаправленного списка, где каждый элемент структуры содержит указатели на предыдущий и следующий элементы. Итератор поддерживает обход в обе стороны. Реализует методы получения, удаления и вставки в начало, середину и конец списка. Позволяет добавлять любые элементы в том числе и null.

Прочитать чуть больше

Сравнение скорости работы ArrayList и LinkedList на практике

Reading time3 min
Views74K
Приветствую Вас!

ArrayList и LinkedList — знают все. В каких ситуациях работает быстро, а в какой ситуации работает медленной тот или другой список — знают тоже все, кто в теории, а кто на практике. Данный пост подходит для тех, кто только начинает изучать Java, или кто слышал, о том «что быстрее», но не видел на практике.
Читать дальше →

Структуры данных в картинках. ArrayList

Reading time3 min
Views896K
Приветствую вас, хабралюди!

Взбрело мне в голову написать несколько статей, о том как реализованы некоторые структуры данных в Java. Надеюсь, статьи будут полезны визуалам (картинки наше всё), начинающим java-визуалам а также тем кто уже умеет писать new ArrayList(), но слабо представляет что же происходит внутри.



Сегодня поговорим о ArrayList-ах

ArrayList — реализует интерфейс List. Как известно, в Java массивы имеют фиксированную длину, и после того как массив создан, он не может расти или уменьшаться. ArrayList может менять свой размер во время исполнения программы, при этом не обязательно указывать размерность при создании объекта. Элементы ArrayList могут быть абсолютно любых типов в том числе и null.

Поверить на слово

Структуры данных в картинках. HashMap

Reading time6 min
Views1.2M
Приветствую вас, хабрачитатели!

Продолжаю попытки визуализировать структуры данных в Java. В предыдущих сериях мы уже ознакомились с ArrayList и LinkedList, сегодня же рассмотрим HashMap.



HashMap — основан на хэш-таблицах, реализует интерфейс Map (что подразумевает хранение данных в виде пар ключ/значение). Ключи и значения могут быть любых типов, в том числе и null. Данная реализация не дает гарантий относительно порядка элементов с течением времени. Разрешение коллизий осуществляется с помощью метода цепочек.

А почему бы и нет?

Структуры данных в Java. Полезные методы вспомогательных классов

Reading time7 min
Views38K
Привет, habr!

Я Software Engineer в EPAM. Более 8 лет я работаю с legacy-кодом, написанном на языке Java (предвосхищая комментарии, отмечу, что понимание и терпимость к legacy началась задолго до EPAM, в заключении вы найдёте ответ, почему). Часто в работе я сталкивался с одними и теми же повторяющимися недочетами. Это побудило меня написать заметку, и начать я хочу со структур данных и вспомогательных классов Collections и Arrays. Почему-то некоторые разработчики пренебрегают их использованием, и напрасно

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

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

Facebook заставляет модераторов документировать своё рабочее время с точностью до секунды — даже походы в туалет

Reading time8 min
Views51K

«Людям приходится отмечать время прихода и ухода даже при походе в туалет, и объяснять, почему они там задержались – это унизительно и оскорбительно»




Когда Валера Зайцев пару лет назад начал работать в Дублине в должности модератора Facebook, он знал, что ему придётся смотреть на наиболее резкий и жёсткий контент из интернета. Чего он не знал, так это того, что Facebook будет подсчитывать длительность его походов в туалет в секундах.

«Людям приходится отмечать время прихода и ухода даже при походе в туалет, и объяснять, почему они там задержались – это унизительно и оскорбительно», — рассказал Зайцев журналу VICE News.

Facebook, отдающий большую часть задач по модерации контента сторонним компаниям, которых насчитывается более 15 000, не всегда держал своих сотрудников на таком коротком поводке. Когда Зайцев, которому тогда было 33, присоединился к армии модераторов Facebook в июле 2016 года, он столкнулся с профессионально организованным рабочим процессом, где он проходил подробные тренировки и к нему отлично относились.

Хакатоны. Как выжать максимум и выжить

Reading time7 min
Views5.3K
Доброго всем времени суток!

Меня зовут Александр Михалин — я .NET разработчик в компании “Рексофт”. За моей спиной 7 хакатонов, причем один в качестве члена жюри. Я не спал 8 ночей, выпил 52 чашки кофе, 15 банок редбулла, со мной в команде побывали 24 человека. Сегодня я хочу рассказать о хакатонах всё. Ну или почти всё.


Фото предоставлено командой ВКонтакте.

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

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

Под катом:

  • Моя история
  • Мотивация для участия
  • Советы и рекомендации
Читать дальше →
1

Information

Rating
Does not participate
Location
Якутск, Саха (Якутия), Россия
Date of birth
Registered
Activity

Specialization

Backend Developer
Middle
Golang
MySQL
Docker