Search
Write a publication
Pull to refresh
-17
0

Системный архитектор

Send message

Навыки команды: Как я настраивал матрицу компетенций

Reading time5 min
Views8.3K

Почему в Confluence?


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

В этой статье я расскажу, как мы строили матрицу навыков (компетенций) команды, как она эволюционировала, и какие вопросы мы теперь с её помощью решаем.

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


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

Обязательно ли назначать на должность Тимлида Старшего разработчика?

Reading time3 min
Views6.1K

Введение.


В данной статье был проведен анализ рынка тимлидов и он показывает, что 63% компании закрывают позицию на должность тимлида внутренними сотрудниками, а 23% компании закрывают как внутренними, так и внешними сотрудниками.


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


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

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

Как сделать текст легче

Reading time6 min
Views5.5K

В прошлой статье я обещала, что расскажу, как сделать документы легче для восприятия. Есть два основных направления: текстовка и структура документа. Сегодня поработаем с текстами. Технические документы на русском читаются особенно тяжело, и добиться легкости в них сложнее, чем в английском. Как можно исправить многословные, громоздкие документы? Давайте попробуем сделать их конкретнее, проще, короче, и последовательнее.

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

Дата и время: трудно, но возможно

Reading time22 min
Views10K

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


На конференции DotNext Джон Скит поговорил о сложностях, связанных с написанием такого кода. Почему даже подход «просто храните всё в UTC» может приводить к ошибке, и пользователь может опоздать на встречу, правильно сохранённую в UTC?


А также говорил о Noda Time — созданном им инструменте для работы с датой и временем в .NET. Но доклад будет полезен, даже если вы не можете или не хотите использовать Noda Time.



Если хотите, можете посмотреть видео доклада в оригинале — запись под катом. А ещё мы подготовили для вас расшифровку. Далее — повествование от лица спикера.

PHP 8 — Что нового?

Reading time19 min
Views142K

PHP, начиная с 7 версии, кардинально изменился. Код стал куда быстрее и надёжнее, и писать его стало намного приятнее. Но вот, уже релиз 8 версии! Ноябрь 26, 2020 — примерно на год раньше, чем обещали сами разработчики. И всё же, не смотря на это, мажорная версия получилась особенно удачной. В этой статье я попытаюсь выложить основные приятные изменения, которые мы должны знать.


1. JIT


Как говорят сами разработчики, они выжали максимум производительности в 7 версии (тем самым сделав PHP наиболее шустрым среди динамических ЯПов). Для дальнейшего ускорения, без JIT-компилятора не обойтись. Справедливости ради, стоит сказать, что для веб-приложений использование JIT не сильно улучшает скорость обработки запросов (в некоторых случаях скорость будет даже меньше, чем без него). А вот, где нужно выполнять много математических операций — там прирост скорости очень даже значительный. Например, теперь можно делать такие безумные вещи, как ИИ на PHP.
Включить JIT можно в настройках opcache в файле php.ini.
Подробнее 1 | Подробнее 2 | Подробнее 3


2. Аннотации/Атрибуты (Attributes)


Все мы помним, как раньше на Symfony код писался на языке комментариев. Очень радует, что такое теперь прекратится, и можно будет использовать подсказки любимой IDE, функция "Find usages", и даже рефакторинг!


Забавно, что символ # также можно было использовать для создания комментариев. Так что ничего не меняется в этом мире.
Читать дальше →

Казнить нельзя помиловать

Reading time4 min
Views12K

Привет! 

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

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

Условия эксперимента следующие:

Вы руководите несколькими командами разработки. Одна из команд (не единственная) состоит из 10 человек, делает классный и востребованный продукт для конечных клиентов. В состав команды входят:

7 инженеров—разработчиков (допустим, все фуллстеки, чтобы убрать из задачи сложности по непересекающимся стекам);

UI/UX-дизайнер;

системный аналитик;

владелец продукта — ведущий специалист от Бизнеса, который определяет приоритеты доработок и пользу от новых фич.

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

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

Погрузившись в историю коммитов и побеседовав со всеми инженерами команды (в том числе и с тем, по которому «есть вопросы») вы получаете следующую картину:

Читать далее

Инженерное нелюбопытство

Reading time5 min
Views22K
Моя бабушка жутко не любила поездки железной дорогой. Паровозы не вызывали у неё доверия, вели себя явно подозрительно и откровенно угрожающе. С большим трудом моему отцу удавалось её посадить в вагон, когда это на самом деле было необходимо. Отец же, за всю свою жизнь исколесив в командировках почти весь союз, провёл в вагонах чистого времени что-то около года или больше, но каждый раз неимоверных душевных усилий стоило ему подниматься на борт самолёта. Я летаю, не замечая в них принципиальных отличий от городской маршрутки и уж точно не переживаю по этому поводу. Рискну предположить, что будь сейчас пассажирский коммерческий космос массово доступен, моим детям или внукам не будет стоить каких-то душевных усилий сгонять на выходные в лунную колонию и обратно, но я сам никогда в жизни не полезу ни во что, что летит за пределы атмосферы Земли. Нормальный, эволюционный ход истории. Потомки должны быть лучше предков, иначе человечество деградирует.

В IT наблюдается схожая тенденция, если брать за критерий меру, так сказать, «обыденности» технологий
Читать дальше →

Беседы 1-1. Двигатель коммуникаций

Reading time15 min
Views6.3K
Думаю, тема бесед один на один, 1-1 или как их только не называют, уже немного могла набить оскомину. Но говорить о необходимости бесед с сотрудниками и не упомянуть периодическую личную беседу, это тоже самое, что говорить об устройстве автомобиля, но обойти вниманием двигатель.

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

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

image
Необязательно формально. Главное — наедине. Photo by Charles Deluvio on Unsplash
Читать дальше →

Тимлид и здоровье его команды

Reading time7 min
Views5.8K

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

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

Давайте подумаем

Эволюция работы с техническим долгом

Reading time3 min
Views3.9K

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

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

Читать далее

Сбалансированная система показателей для ключевых показателей IT

Reading time4 min
Views4.2K

Оригинал How to Make Sure Your KPIs Are Balanced

автор  Stuart Rance, дата публикации 21.10.14

Достоинства: написано простым, доступным языком, качественные примеры.

Недостатки: слишком компактно.

Уровень сложности - средний.

Полезность - 7/10.

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

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

Здесь и далее курсивом замечания переводчика.

Читать далее

17 «хороших» и 4 «плохих» способа ускорения проекта

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

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

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

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

Архитектура и стоимость простого бессерверного веб-приложения Amazon Web Services

Reading time7 min
Views17K

Введение


Весной этого года я сидел в локдауне на Багамах, без права сходить на берег и, борясь со скукой, решил посмотреть, что это за зверь такой Amazon Web Services, и да, я пропал. Случилось, что называется, любовь с первого взгляда. Одной из технологий, что пьянила меня не хуже багамского рома, были бессерверные вычисления.


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

Интервью как продажи, часть 1 (из декретов в машинное обучение)

Reading time10 min
Views7.6K
Проходить интервью — отдельный навык. И это навык продаж.

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

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

  • Меняет карьеру
  • Первые разы проходит интервью
  • Переходит из академии в индустрию
  • Из своего бизнеса на наемную работу
  • Кому пока плохо удается проходить не технические этапы интервью (все эти софт-скиллы, cultural fit, etc.)

Мои блог-посты описывают процессы интервью в область ИИ и машинного обучения, но первые части подойдут почти к любой сфере. В части 1 я расскажу про интервью глазами продавца, в части 2 глазами покупателя. Про технические этапы и как к ним готовиться напишу в части 3. Как создавать себе работу по душе самой, не рассчитывая «на дядю» и не проходя классическую схему интервью, в части 4. Погнали.

*Scope: переход: два декрета подряд — МедТех — индустрия. Сфера: машинное обучение/компьютерное зрение. Вводные данные: художник, PhD по физике. Место событий: планета Земля (пандемия расширила границы)

Часть 1. Интервью как продавец


Компания покупает Ваше время и труд. Вы продаете свой опыт и навыки. Вы — продавец. Они — покупатель.

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

Можно ли сэкономить, набирая junior специалистов?

Reading time7 min
Views20K

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


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

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

Что почитать менеджеру продукта или проекта: от исследований Канемана до мотивации Брэдбери

Reading time9 min
Views9.5K


Всем привет! В нашем совместном с МФТИ учебном проекте Технотрек есть семестровый курс по Product Management. Меня зовут Станислав, и я ведущий преподаватель этого курса, а также менеджер продукта в проекте DonationAlerts. Готовясь к курсу, я собрал внушительный список полезных материалов. Сделал для вас из этого списка подборку книг и блогов, которые будут полезны менеджерам продуктов или проектов.

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

Пишите зарплаты, траты и чего вы хотите. Или не пишите ничего

Reading time4 min
Views29K

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

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

Как заставить руководство проникнуться техническим долгом

Reading time5 min
Views4.8K

«Руководство не даёт мне заняться рефакторингом legacy-кода!» Знакомая ситуация? Раздражает жутко. Большинство разработчиков рано или поздно сталкивается лбами с менеджером, который совершенно не заинтересован в том, чтобы совершенствовать уже готовое. То нужно реализовать что-то новое, то срочно потушить пожар, то исправить какой-то баг… В общем, причина отложить рефакторинг запущенной кодовой базы у них всегда найдётся.

И даже когда пытаешься им объяснять, какие преимущества даёт опрятный код, они то ли не понимают, то ли не хотят понимать. У них только затраты и сроки на уме, а до качества никому нет дела. И получается, что вы абсолютно бессильны что-то сделать с техническим долгом, который всё копится и копится. Программисты работают на прод, а прод – на запросы нетерпеливых пользователей. За рефакторинг никто платить не будет. Положение выглядит безнадёжным.

Попадая в такую ситуацию, многие толковые разработчики просто пакуют вещи и уходят из компании. И очень скоро из-за текучки в отделе уже двери не закрываются: одни уходят, другие приходят…
Читать дальше →

Как оптимизировали экономику СССР и что из этого вышло

Reading time11 min
Views67K

Я работаю специалистом по обработке и анализу данных (data scientist), поэтому большая часть моей работы включает в себя подбор оптимизируемых метрик и размышления о том, как выполнять процессы с максимальной эффективностью. Недавно я обнаружил совершенно удивительную книгу об экономических проблемах в СССР и о коллективе экономистов и компьютерных учёных, стремившихся решить их на основе данных. Книга называется Red Plenty. На самом деле она написана в жанре романа, что странно, однако представляет собой точную экономическую историю СССР. Автор активно заимствует информацию из книги 1973 года под названием Planning Problems in the USSR, которую я тоже приобрёл. При чтении этих книг я не мог не обратить внимания на параллели с планированием в любой современной организации. Факт, который покажется сегодня знакомым каждому data scientist: во второй книге есть цитата исследователя, жалующегося на то, что 90% своего времени он потратил на очистку данных, и только 10% — на само моделирование!

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

Почему донат — это будущее, если всё сделать правильно

Reading time5 min
Views43K

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

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

Читать далее

Information

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