Pull to refresh

Эффективные ревью кода: 9 советов от исправившегося скептика

Website development *Programming *
Translation
Я знал теорию. Ревью кода помогает:
  • Находить баги
  • Обеспечивать читаемость и поддерживаемость кода
  • Распространять знания кода на всю команду
  • Быстрее входить в работу новым членам команды
  • Показывать всем новые подходы к решению задач

Или, это всего лишь пустая трата времени. По крайней мере, таким было мое первое впечатление от ревью кода.
Читать дальше →
Total votes 25: ↑19 and ↓6 +13
Views 20K
Comments 5

Уменьшаем количество ошибок с помощью чек-листа Code Review

Website development *Programming *
Translation
В нашей статье об эффективных ревью кода мы рекомендовали использовать чеклист. Чеклисты (контрольные списки) — это великая вещь в ревью: они гарантируют, что ревью действительно прошло через вашу команду. Также они способствуют выявлению и решению общих трудностей.

Исследование, проведенное Software Engineering Institute, показывает, что программисты делают 15-20 распространенных ошибок. Добавив такие ошибки в чеклист, вы можете быть уверены, что заметите их в момент появления и поможете от них избавиться надолго.

Чтобы вам было от чего отталкиваться, вот вам список типичных пунктов:
Читать дальше →
Total votes 26: ↑25 and ↓1 +24
Views 29K
Comments 13

Организация и использование сегментации в больших мобильных приложениях

Website development *System Analysis and Design *Development for iOS *Development of mobile applications *Development for Android *
Однажды, ваше мобильное приложение становится достаточно большим и им ежедневно пользуются десять тысяч — сто тысяч — миллион, не важно, в общем очень много живых и разных людей. Что это значит для вас, как для разработчика?

Да, теперь стало гораздо страшнее нажимать кнопку «Submit», ведь если вы чего-то недоглядели — в отличии от веб-приложений не получится посидеть ночь, обложившись банками ред-булла и пиццами и все исправить — ревью на мобильных платформах занимает время, а если говорить про iOS — аж целую неделю. Неделя — более чем достаточный срок для того, чтобы лояльный ранее пользователь перестал открывать ваше приложение.

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



В этой статье я постараюсь рассказать о том, что мы делаем, чтобы огромное продакшн-приложение продолжало оставаться таковым.
Читать дальше →
Total votes 13: ↑12 and ↓1 +11
Views 7.5K
Comments 3

Внутренняя кухня JUG.ru Group: как делается конференция на 1000 программистов

JUG Ru Group corporate blog Project management *Product Management *Personnel Management *
Может показаться, что про конференции всё понятно и со стороны: они же делаются как раз для того, чтобы люди приходили и смотрели. Но то, что видно зрителям — лишь вершина айсберга, и есть множество неочевидных моментов. Что стоит за организацией крупной IT-конференции? Мы решили показать «внутреннюю кухню» JUG.ru Group, отталкиваясь от чисел Joker 2016.

Можете попробовать угадать эти числа, а затем заглянуть под хабракат и узнать их реальные значения (порой округлённые, потому что работа ещё не завершена):

  • Срок, за который началась подготовка
  • Количество человекочасов, потраченных на программу
  • Суммарная площадь помещений конференции
  • Суммарное время авиаперелётов спикеров
  • Вес оборудования, которое привезут на площадку
  • Время работы волонтёра на конференции
  • Объём файлов макета одного из спонсорских стендов
  • Суммарное число просмотров хабрапостов, связанных с конференцией
  • Объём текста на сайте конференции
  • Количество тикетов в JIRA
  • Число участников команды JUG.ru Group



Читать дальше →
Total votes 50: ↑48 and ↓2 +46
Views 6.2K
Comments 3

Оптимизация работы портальной дизайн-команды с помощью Sketch и облака

VK corporate blog Web design *Interfaces *Usability *Mobile applications design *
Работая в продуктовой команде над одним или несколькими проектами, мы неизбежно приходим к необходимости организовать общий процесс и рабочее пространство. Кто-то решает этот вопрос через добавление инструментов для коллаборации, кто-то даже строит вокруг этого свой продукт. Однако мы обратились к опыту наших ближайших коллег — разработчиков. Они умеют оптимизировать свою работу и взаимодействие, как никто другой, и потому являются отличным примером для вдохновения.


Читать дальше →
Total votes 33: ↑32 and ↓1 +31
Views 16K
Comments 15

7Ps Framework: структурируем встречи, чтобы сделать эффективными

UIS corporate blog Development Management *Project management *Community management *Personnel Management *

Коллеги проджект-менеджеры поймут: нет большего зла, чем встречи ради встреч — наш персональный ад перфекционистов, мир которых построен на контроле ресурсов и, в первую голову, контроле времени участников проекта. Поделюсь методикой, которой я пользуюсь, чтобы сделать зло управляемым. Это компиляция принципов 7Ps Framework от James Macanufo и моих доработок фреймворка под себя, которые я вынес из работы над проектами в UIS.

Читать дальше →
Total votes 7: ↑7 and ↓0 +7
Views 2.7K
Comments 0

Выбор Help Desk системы. 9 типичных заблуждений

Okdesk corporate blog Help Desk Software *Service Desk *Project management *Product Management *
Мы разрабатываем систему автоматизации постпродажного клиентского обслуживания для небольших бизнесов Okdesk, а потому ежедневно общаемся с большим количеством небольших сервисных компаний:

  • ит аутсорсинг;
  • обслуживание ККТ и другого специализированного оборудования;
  • digital агентства и веб студии;
  • вендоры и разработчики сервисов.

Оказывается, неудачный выбор и внедрения, вызванные неправильным подходом к проектам автоматизации в некоторых компаниях, порождают на рынке мифы относительно бесперспективности внедрений в определенных ситуациях. По итогам общения с более чем 1000 представителями среднего и малого бизнеса, мы отобрали наиболее распространенные заблуждения, из-за которых компании отказываются от внедрения систем службы поддержки (Help Desk). Многие из этих заблуждений являются причинами отказа от внедрения и других систем автоматизации. Нам захотелось поделиться этими заблуждениями с читателями и развеять эти мифы.
Развеиваем мифы
Total votes 5: ↑4 and ↓1 +3
Views 7.8K
Comments 2

Что нам стоит Scrum построить: интервью с Agile-коучем Василием Савуновым

Project management *Agile *
Всем привет!

Сегодня у нас на связи agile-коуч Василий Савунов. Немного поговорим об организации работы команды по системе Scrum, а также получим ценные рекомендации по обучению Scrum и Kanban.

Читать дальше →
Total votes 7: ↑7 and ↓0 +7
Views 8.6K
Comments 0

Как выполнить 70 задач за день: жизнь в таск-трекерах — хорошая жизнь

ITSumma corporate blog Personnel Management *Reading room Business Models *IT-companies


Систематически вести задачи я пытался, наверное, раз 20-25. И каждая попытка срывалась, как теперь я понимаю, по двум причинам.

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

Любую работу сложно вести, когда ты не понимаешь, для чего. «Упорядочить жизнь» — не самая адекватная цель, так как «упорядоченная жизнь» — это достаточно размытое явление. А вот «снизить уровень тревоги, снизив уровень неизвестности» — цель гораздо конкретнее и лучше, на которую вполне можно потратить час в день.

Во-вторых, все методологии, которые я читал, описывают сразу конечное состояние процесса. «Вам нужно взять ToDoIst, разбить по проектам, интегрировать с календарем, делать ревью задач за неделю, приоритезировать их…» Это сложно начать делать сразу. Как и в программной разработке, я считаю, что нужно пользоваться методом прогрессивного джпега — итеративно.

Поэтому пройдусь по своим “итерациям”, и, может быть, в таком же виде это пригодится и вам. В конце концов, чем не повод использовать майские каникулы, чтобы выйти на работу, используя новую (относительно) парадигму?

А как я к этому пришёл, можно прочитать здесь.
Читать дальше →
Total votes 52: ↑40 and ↓12 +28
Views 42K
Comments 54

Как организовать эффективную работу распределенной команды верстки

TINKOFF corporate blog CSS *HTML *Development Management *Personnel Management *
Sandbox

Всем привет! Меня зовут Роман, и сегодня я поделюсь своим опытом работы в распределенной команде верстки. Расскажу о процессах, которые мы построили, и как команда из четырех человек покрывает потребности в верстке целого подразделения, состоящего из 30+ продуктов и 20+ продуктовых команд.


Как организовать эффективную работу распределенной команды верстки

Еще расскажу о том, как:


  • Контролировать работу распределенной команды;
  • Добиваться консистентности кода в разных проектах;
  • Справедливо распределять задачи;
  • Поддерживать высокое качество работы;
  • Не накапливать незавершенные задачи;
  • Проводить профилактику выгорания и развивать сотрудников.
Читать дальше →
Total votes 31: ↑30 and ↓1 +29
Views 7K
Comments 10

Удаленная работа без подготовки. Краткое введение

Project management *Product Management *


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

Если раньше было много статей со сравнением удаленной работы и работы в офисе для IT сферы, то теперь это актуально для всех. Для начала попробуем разобрать что это за зверь и развеем несколько популярных страхов.
Читать дальше →
Total votes 7: ↑3 and ↓4 -1
Views 3.3K
Comments 2

Ура (О нет) — удаленка

Plarium corporate blog Personnel Management *IT-companies Remote work
Резкий переход на удаленную работу для многих превратился в настоящее испытание. Большая часть сотрудников Localization и Support — отделов студии Plarium Krasnodar — уже около пяти лет работает удаленно, но за прошедший месяц им тоже пришлось преодолеть некоторые сложности. Мы попросили ребят дать несколько советов, как эффективно организовать удаленную работу и что важно учитывать.

Читать дальше →
Total votes 12: ↑7 and ↓5 +2
Views 3.7K
Comments 0

Кто там выше тимлида?

TINKOFF corporate blog Development Management *Personnel Management *
image

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

Стоит отметить, что для разработчика существует несколько векторов развития, которые хорошо описаны в статье Три дороги для программиста: эксперт, руководитель, основатель. Я же сосредоточусь на втором направлении — руководителе.
Читать дальше →
Total votes 28: ↑27 and ↓1 +26
Views 13K
Comments 11

Сколько стоит избавиться от ручного тестирования?

IT systems testing *Development Management *
Sandbox

— «... ну вот опять, снова вернулась ко мне задача из тестирования, сколько можно уже?» — Вася зло прокомментировал появившееся уведомление о новом письме.

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

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

Кому будет интересна статья:

• Руководителям команд/направлений, ищущих способы ускорить/удешевить разработку;
• Ручным тестировщикам, желающим начать заниматься Quality Assurance;
• QA, как «ещё один успешный кейс улучшения процессов в команде»;
• Разработчикам, неравнодушным к процессам в команде.

Погрузиться в мир средикнопочья
Total votes 4: ↑1 and ↓3 -2
Views 5.4K
Comments 17

Реализация CI/CD для корпоративных хранилищ данных

Axenix (ex-Accenture) corporate blog Data storage *Development Management *Data storages *Project management *

В Сети много рецептов приготовления CI/CD для решения различных проблем и организации процессов под определённые нужды. В этой статье мы опишем ещё один, суть которого - приготовить процесс, максимально близкий к классическому подходу, несмотря на то что предназначен он для разработки КХД, и решить проблему организации работы большой команды.

Читать далее
Total votes 3: ↑3 and ↓0 +3
Views 5.3K
Comments 3

Локальные IT-сообщества: как перестать беспокоиться и начать разрабатывать

ЮMoney corporate blog Community management *

Привет! Я Вадим, ведущий разработчик во фронтенде ЮMoney. В статье расскажу, что такое локальное сообщество, зачем оно программисту и как его запустить.

Под катом наши боли на старте техсинков, задачи разработки, которые удалось решить, и лайфхаки для создания IT-сообщества.

Читать статью
Total votes 6: ↑6 and ↓0 +6
Views 3.5K
Comments 1

Применение диаграммы Исикавы для решения корпоративных проблем

System Analysis and Design *Development Management *Project management *Product Management *

Проблема – это негативное состояние или событие, которое нам (лично, отделу или компании в целом) чем-либо мешает и угрожает возникновением ещё больших проблем. Значительная часть времени в управлении тратится на "латание корпоративных дыр" или создания таких условия, чтобы проблем не возникало. В этом материале расскажу о способе, который поможет делать эту работу системнее и эффективнее.

Читать далее
Total votes 7: ↑5 and ↓2 +3
Views 10K
Comments 6

Фильтрация JSON: как мы проводили конкурс на самый быстрый алгоритм

Quadcode corporate blog Algorithms *IT-companies

Привет, меня зовут Костя Плешаков, я Архитектор в Quadcode. В статье расскажу, как мы организовали конкурс, который помог решить проблему исключения некоторых данных (в нашем API) в процессе отправки на фронт. В результате мы получили высокопроизводительный алгоритм фильтрации JSON с использованием векторных инструкций Intel® AVX2.

Читать далее
Total votes 10: ↑10 and ↓0 +10
Views 4.3K
Comments 9

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

IT systems testing *Web services testing *
Sandbox

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

Думаю, по ощущениям это похоже на пилотаж болида Формулы-1 без подготовки.

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

Кстати, сегодня к нам пришел тестировщик...

Читать далее
Total votes 8: ↑3 and ↓5 -2
Views 13K
Comments 17

Программирование — это про общение

Programming *Designing and refactoring *Game development *Research and forecasts in IT *
✏️ Technotext 2022

Когда выгорание по внутренним (и внешним) причинам достигает максимума, когда тошнит от одного воспоминания о том как выглядит IDE, когда мнится что в седло большой разработки больше не вернутся никогда, но, при всём при этом, вносить свой вклад в развитие индустрии хочется - остаётся одно.

Сменить угол обзора.

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

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

Давайте поговорим об этом
Total votes 36: ↑35 and ↓1 +34
Views 8.5K
Comments 12
1