Pull to refresh
6
0
Олег Щербаков @glucas

технический менеджер

Send message

Ограничиваем доступ в Kubernetes: без смс, но с регистрацией

Reading time9 min
Views3.5K

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

Меня зовут Александр Кузьмин, я старший инженер в КРОК, занимаюсь облачными технологиями, микросервисами и всеми новомодными DevOps-методологиями. 

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

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

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

Архитектурные паттерны в iOS: привет от дядюшки Боба, или Clean Architecture

Reading time14 min
Views19K

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

Все, кто хочет не просто знать что стоит за названием той или иной архитектуры, но ещё и в каком случае какую использовать — наливайте чай и устраивайтесь поудобнее, будет лампово. Разбираем паттерны, реализующие концепцию Чистой Архитектуры — самые масштабируемые и надёжные.

Читать далее
Total votes 35: ↑34 and ↓1+34
Comments3

Как мы построили гибридное облако и сняли с ручника разработку

Reading time10 min
Views5.2K

Любому бизнесу, особенно крупному, хочется максимально оптимизировать внутренние процессы. В частности, те, которые касаются ИТ. Довольно часто мы встречаем ситуации, когда сугубо цифровые задачи в силу устаревших регламентов или страха сломать работающую систему решаются по старинке, вручную.

«Ингосстрах» обратилась к нам со следующей задачей: из-за огромного количества «ручных» операций параметр time-to-market их цифровых продуктов в некоторых случаях был достаточно высоким. Это не устраивало никого: ни разработчиков, ни тестировщиков, ни бизнес. Требовалось как можно сильнее сократить time-to-market, не стесняясь в ресурсах и средствах.

Читать далее
Total votes 39: ↑38 and ↓1+37
Comments4

Как я ходил на удалённые собеседования JAVA-разработчика, чтобы лучше нанимать людей

Reading time5 min
Views21K

Если обычные разработчики ходят на собеседования тренироваться и набирать опыт, то я пошёл выписывать все косяки. Чтобы их не было у меня, потому что я нанимаю людей. Собственно, стало интересно, как устроено в других компаниях — и я пошёл собеседоваться. Началось всё c базового набора: аккаунт зума, почта, резюме. Дальше можно пройти за неделю 10-12 собеседований, на что до тотальной удалёнки ушёл бы месяц.


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


image


Выложил на HH. Дальше ждать пришлось недолго. Первый час — уже несколько откликов и звонок. Всего за сутки было 20 откликов и пять звонков. Предложений много, все с самыми интересными проектами, стеком, ДМС и макбуком (которого пока нет, но обязательно пришлём через месяц-два).


На третий день я набрал примерно 30 проектов, которые были бы мне интересны, если бы я действительно искал работу (пост бы неожиданно закончился здесь, если бы нашёл что-то более интересное, чем уже есть), и начал описывать то, что попало в отсев.


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

Читать дальше →
Total votes 61: ↑53 and ↓8+52
Comments37

Интеграционный слой с Kafka и микросервисами: опыт построения операционной CRM контакт-центра торговой сети Пятерочка

Reading time8 min
Views12K

Из этого поста вы узнаете, зачем добавлять в интеграционный слой бизнес-логику, что случается, когда «не летит» Service mesh, и почему иногда костыли — лучшее решение проблемы.



Привет Хабр, на связи Иван Большаков — архитектор интеграционных решений, эксперт департамента разработки ПО КРОК. Я расскажу, как мы делали интеграционный слой для CRM-системы группы контакт-центров торговой сети Пятерочка.


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

Читать дальше →
Total votes 26: ↑25 and ↓1+28
Comments12

Карьерный level up: технические интервью и работа в ИТ в 2021

Reading time3 min
Views4.6K

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

4 февраля мы проводим онлайн-митап о найме в ИТ. Хотим поделиться с миром результатами исследования об изменениях в ИТ-найме, которое провели наши нанимающие менеджеры из команды департамента разработки ПО КРОК.  Для этого мы проанализировали  почти 500 технических интервью, которые провели за последние полгода. А еще один из нас отправился на секретную миссию и получил от крупнейших компаний 6 офферов после 6 собесов. 

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

Инсайтами и видео с митапа поделимся в блоге позже, а пока расскажем о программе. Кому лень читать после ката  —  регистрируйтесь тут.

Читать далее
Total votes 21: ↑21 and ↓0+21
Comments3

Настоящий металл: как сплавить команды в горниле совместной разработки

Reading time11 min
Views5.2K

У нас было 2 проектных менеджера, 72 эксперта от производства, 33 высококлассных спеца из двух IT-команд, несколько десятков систем управления производством по всей стране, а еще, разработчики КРОК и Группы НЛМК прежде не работали вместе.

Звучит как организационный ад, и это недалеко от истины. Но мы справились и теперь хотим поделиться опытом работы в объединенной команде Группы НЛМК и КРОК в масштабном проекте по развитию информационных сервисов службы продаж.

Читать далее
Total votes 31: ↑26 and ↓5+25
Comments3

Из тестировщиков в агенты изменений департамента: путь в 10 лет и два выгорания

Reading time15 min
Views12K
image

Хабр, привет! Меня зовут Ася, я ведущий инженер-тестировщик (QA Lead) в КРОК.

Недавно я отметила десятилетний юбилей в компании и в тестировании одновременно — да, за столько лет мне не надоело ни там, ни там. Хотя насчет тестирования было по-разному — успела даже дважды выгореть (один раз из-за декрета), стать контрол-фриком и влюбиться в профессию заново.

Про профессию тестировщика часто слышу, что это самый легкий и быстрый порог входа в ИТ — а там и на разработчика переучиться можно. Я же наоборот — училась на разработчика и даже успела им немного поработать, но душа к этому не лежала, потому что искать баги намного веселее. За всю мою карьеру я участвовала в совершенно разнообразных проектах: документооборот, файлообменники, статистические наблюдения, обработка обращений пассажиров в ЦППК, учет оборудования. А потом поняла, что этот опыт можно масштабировать на свою жизнь и даже на работу целого департамента. Так я стала агентом изменений департамента разработки программного обеспечения (ДРПО).

В этой статье хочу рассказать про свой путь и постараться ответить на вопрос, который мучает многих тестировщиков — а есть ли жизнь на Марсе задор и челленджи после многих лет в тестировании?
Читать дальше →
Total votes 36: ↑36 and ↓0+36
Comments3

Awesome-лист своими руками, или GitHub вместо блокнота

Reading time13 min
Views12K


Привет, Хабр! Наверное, у каждого из нас есть такой файлик, куда мы припрятываем что-то полезное и интересное для себя. Какие-то ссылки на статьи, книги, репозитории, мануалы. Это могут быть закладки в браузере или даже просто открытые вкладки, оставленные на потом. Со временем все это разбухает, ссылки перестают открываться, а большая часть материалов просто устаревает.


А что если поделиться этой годнотой с сообществом и выложить этот файлик на гитхаб? Тогда ваши труды могут быть полезны еще кому-нибудь, а поддерживать актуальность можно совместно, принимая обновления от желающих через старые добрые PR'ы. Именно для этого предназначен проект Awesome lists. Он входит в ТОП-10 репозиториев гитхаба, обладает 138К звезд, и ссылка на ваши труды может оказаться прямо в его корневом README, что привлечет огромную аудиторию к вашему творчеству. Правда, для этого придется немного постараться. О моем опыте таких стараний хочу поделиться с вами.


Меня зовут Максим Грамин. В КРОК занимаюсь Java-разработкой и исследованиями в области БД. В этом посте я расскажу, что такое Awesome Lists и как сделать свой настоящий официальный awesome-репо.

Читать дальше →
Total votes 34: ↑33 and ↓1+32
Comments6

Как правильно составить ТЗ на администрирование: наши грабли

Reading time10 min
Views14K
Вообще, тема неисчерпаемая. Ковыряется как-то Лёшка (наш инженер) в стойке в ЦОДе повышенной ответственности, где стоит несколько банков. В соседнем ряду наблюдает совершенно дикую картину: парень подошёл к блейду. Выдернул жёсткий диск, что-то записал, ВОТКНУЛ ЕГО НАЗАД, выдернул второй, записал, поставил, выдернул третий. Лёша ему: «Пссс, парень, ты чего?» Он: «Ну так инвентаризация же!» И сразу как-то всё стало понятно.

Я работаю в департаменте вычислительных систем КРОК, мы поддерживаем всё то, что можно кинуть в стену. То есть сервера, системы хранения данных и прочее дорогое железо в дата-центрах. Ну и то, что на нём — операционки, базовую инфраструктуру. Простейшая базовая услуга — ЗИП, то есть замена комплектующих вовремя. Более сложные — это заменять сисадминов заказчика.

Самый страшный момент контракта — это составление техзадания. Расскажу про те грабли, которые мы ощупали вместе с клиентами и о том, как их избежать. Ну и приложу пример шаблона ТЗ, который используем мы.
Читать дальше →
Total votes 48: ↑47 and ↓1+51
Comments26

Юридические эксперименты в ИТ. Как кастомизировать закон под себя

Reading time9 min
Views7.8K


Похоже, власти прислушались к жалобам бизнеса на неудобные законы и приняли закон об экспериментальных правовых режимах в сфере цифровых инноваций (Федеральный закон от 31.07.2020 № 258-ФЗ). По сути государство говорит нам: «Вам не нравится действующее регулирование? Окей, придумайте свои законы, которые вас устроят. Мы на время сделаем их обязательными для вас и других желающих и посмотрим, как они работают. Если эксперимент пройдет хорошо, то сделаем из вашей идеи полноценный закон, обязательный для всех».

Давайте рассмотрим, кому от нового закона станет удобнее и в чем его особенности.

Поехали!
Читать дальше →
Total votes 25: ↑25 and ↓0+25
Comments12

MLOps — Cook book, chapter 1

Reading time10 min
Views10K


Всем привет! Я CV-разработчик в КРОК. Уже 3 года мы реализуем проекты в области CV. За это время чего мы только не делали, например: мониторили водителей, чтобы во время движения они не пили, не курили, по телефону не разговаривали, смотрели на дорогу, а не сны или в облака; фиксировали любителей ездить по выделенным полосам и занимать несколько мест на парковке; следили за тем, чтобы работники носили каски, перчатки и т.п.; идентифицировали сотрудника, который хочет пройти на объект; подсчитывали всё, что только можно.


Я все это к чему?


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


Моделируем ситуацию


Представим, что мы устроились в молодую компанию “N”, деятельность которой связана с ML. Работаем мы над ML (DL, CV) проектом, потом по каким-либо причинам переключаемся на другую работу, в общем делаем перерыв, и возвращаемся к своей или чужой нейроночке.


  1. Наступает момент истины, нужно как-то вспомнить на чем ты остановился, какие гиперпараметры пробовал и, самое главное, к каким результатам они привели.
Читать дальше →
Total votes 26: ↑25 and ↓1+24
Comments4

Используем Xtend для прикладной кодогенерации: сеанс чёрной магии с разоблачением

Reading time12 min
Views6.9K

Привет Хабр! Меня зовут Когунь Андрей. В КРОК я руковожу группой разработчиков Java (у нас большая распределённая по всей стране команда). Ещё я провожу встречи московского сообщества Java разработчиков JUG.MSK. Делаю это исключительно в корыстных целях: фотографируюсь там со всеми докладчиками, и однажды открою галерею с самыми интересными людьми в мире Java-разработки. Также помогаю делать конференции для разработчиков: JPoint, Joker и DevOops — в качестве члена программного комитета. Ну и для души, так сказать, преподаю Java-технологии студентам.


В КРОК мы с коллегами в основном занимаемся заказной разработкой. Одно из наших направлений — так называемые учётные системы. Их надо делать по возможности быстро. Они типовые, различия обычно наблюдаются только в доменной модели. Поэтому мы постоянно боремся за то, чтобы писать меньше бойлерплейт-кода, будь то тривиальные геттеры-сеттеры, конструкторы и т.п. или CRUD-репозитории и контроллеры. Мы для этого активно пользуем кодогенерацию.


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


Читать дальше →
Total votes 38: ↑36 and ↓2+39
Comments6

Как устроен склад алкоголя, и как нечеловекоподобный дрон может летать между бутылками

Reading time6 min
Views9.8K
image

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

Но вернёмся к роботу. От него нужны три вещи:

  1. Двигаться по складу без помощи оператора.
  2. Считывать штрихкоды или QR-коды паллет и надписи около них.
  3. Превращать это в данные инвентаризации и передавать в WMS в итоге.

Казалось бы, простейшая задача для пятичасового хакатона. Но на деле всё немного не так. Начнём с того, что метки под скотчем или полиэтиленом (то есть нужно сопоставление нескольких кадров без бликов) имеют разный шрифт и бывают рваными или протёртыми.
Читать дальше →
Total votes 29: ↑29 and ↓0+29
Comments22

Коммитите в опенсорсе, работая разработчиком? Разбираемся с правами (привет, nginx)

Reading time10 min
Views15K


Ситуация с правами на код в Российской Федерации довольно интересная: по закону разработчик (физлицо) защищён очень и очень сильно. Нужно как-то весьма прилично косякнуть, чтобы оказаться неправым. А вот работодателю нужно довольно много и кропотливо бегать с бубном и бумагами, чтобы получить права на тот самый код, который пишется на его же зарплату.

Давайте рассмотрим, что говорят законы о правах на код с обеих сторон:

  • Когда и какие права возникают у вас (как физлица) на код.
  • Как правильно устроена передача имущественных прав на код работодателю.
  • Тимлид, который делал ревью, — он соавтор или кто?
  • Можно ли коммитить в свой pet-project с рабочего компьютера в рабочее время?
  • Какой геморрой предстоит пройти, чтобы правильно использовать код, если вы его заказали?

И так далее.

Поехали!
Читать дальше →
Total votes 65: ↑65 and ↓0+65
Comments78

Какие ошибки делают руководители на удалёнке

Reading time8 min
Views33K
Привет, Хабр! Я не разработчик, а менеджер. Меня некоторое время учили управлять людьми, а потом я погрузилась в мрачный мир разработки, где всё идёт не так, как говорят в университете. Сейчас я руковожу практикой управления жизненным циклом программного обеспечения и хочу рассказать несколько, возможно, важных для тимлидов и ПМ'ов вещей, которые касаются перехода на удалёнку. Потому что в наших командах люди было уже начинали так косячить. А потом покажу и расскажу про наш стек автоматизации для удалёнки, и о том, как мы аппрувим релизы из чатов на телефоне одной кнопкой, а не поднимая VPN в защищённый периметр, и это ускорило согласования, и это помогает согласовывать день в день.

Первый совет — хватит доставать своих людей!



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


Дятел-менеджмент в чистом виде

Если стоит задача повысить эффективность команды сейчас и в перспективе — оставьте людей в покое. И установите 15-минутные дейли по утрам. Я уже успела увидеть и общепроектные синхры раз в четыре часа, и дейли по два часа, и впадающих во фрустрацию менеджеров, привыкших договариваться сидя лицом к лицу с кем-то.
Читать дальше →
Total votes 49: ↑44 and ↓5+50
Comments41

Разбор решения задач реальной промышленности (спасение поросят и другие)

Reading time9 min
Views21K
Свиноматка кормит поросят до 26-го дня. За это время она может на них прилечь, что приведёт к тому, что поросят станет чуть меньше, чем было в самом начале. Чтобы этого избежать, используются вот такие станки, как на фото, которые исключают её повороты и хождение по загону. У одной свиноматки — от 10 до 15 поросят. На первой неделе поросята ещё не понимают, что эта туша опасна, и могут не уйти из опасной области, когда она ложится. Когда это происходит, поросёнок громко визжит примерно в половине случаев. Часть поросят можно спасти, если вовремя поднять свинью. Задача — детектировать такие случаи и вызывать сотрудника.


Как видите, этот вариант решения распознаёт поросят на видео и считает их.

Ещё были задачи оптимизации вентиляции в шахте (сэкономить на электричестве, но не убить при этом шахтёров); моделирование растекания жидкости; матмодель расплава; определение каски и очков на сотруднике перед входом в опасную зону и поиск брака на шоколадных батончиках.

Когда представитель MARS сказал, что принесёт обучающую выборку, мы не думали, что это будет четыре коробки шоколадок Twix Minis.
Читать дальше →
Total votes 42: ↑41 and ↓1+53
Comments19

Как мы летали на дронах по мусорным полигонам и искали утечки метана

Reading time6 min
Views16K

Карта полёта, отмечены точки с концентрацией метана свыше 3 000 ppm*m. И это много!

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

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

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

Услуга автоматизированного замера уровня метана с помощью дронов очень востребована в Европе.

Мы, с нашими партнёрами из компании Пергам, провели совместную работу в этом направлении и получили интересный результат.
Читать дальше →
Total votes 54: ↑52 and ↓2+50
Comments46

Байки переговорщика

Reading time11 min
Views36K


Привет!

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

С другой стороны, частые переговоры означают много поездок. Иногда везёт. Вот в Дубае выходные пятница и суббота, а воскресенье — рабочий. При этом рейсы на воскресенье дорогие, и куда выгоднее лететь в пятницу. Встреча по поводу наших разработок по машинному зрению для дронов была на воскресенье, и когда наш переговорщик прилетел, заказчик извинился и сказал, что не получается, и нужно перенести ещё на пару дней. Так у него получились незапланированные выходные. Ну а дальше он закономерно вышел на пляж и уснул. После чего всем говорил, что сгорел на работе. Но интересно не это: дело в том, что ещё один наш коллега как раз застрял посреди тундры. Это примерно два часа вертолётом от Нового Уренгоя, и, кроме вертолёта, там транспорта нет. У него была метель — и, как следствие, нелётная погода. Он прибыл, обследовал талевые канаты и не смог вылететь. К началу истории уже сидел там два дня. Синоптики обещали открыть площадку только ещё через три дня. Из развлечений у него там была еда в столовой на месторождении, настольный теннис с вахтовиками и SMS на телефоне. Вот они друг другу и жаловались, кто и где застрял.
Читать дальше →
Total votes 112: ↑101 and ↓11+90
Comments49

Опасные производства: мы следим за тобой, %username% (аналитика видео)

Reading time6 min
Views26K

Один товарищ — без каски, второй — без перчатки.

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

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

Конкретно:

  • Очень легко распознавать людей без каски. Даже лысых. Увидели человека без каски — сразу алерт оператору или начальнику цеха.
  • То же самое касается очков и перчаток на опасных производствах, страховки на поясе (правда, мы смотрим только на карабин пока), светоотражающих жилетов, респираторов, шапочек для волос и других СИЗ. Сейчас система обучена распознавать 20 типов СИЗов.
  • Можно точно считать людей на объекте и учитывать, когда и сколько их было.
  • Можно подавать тревогу при заходе человека в опасную зону, причём эта зона может настраиваться по факту запуска-остановки станков.

И так далее. Самый простой пример — цветовая дифференциация укладчиков кирпичей и заливщиков бетона по цвету каски. Для помощи роботу. В конце концов, жить в обществе с отсутствием цветовой дифференциации, значит не иметь цели.
Читать дальше →
Total votes 74: ↑72 and ↓2+70
Comments44
1

Information

Rating
Does not participate
Location
Москва, Москва и Московская обл., Россия
Works in
Registered
Activity