Как стать автором
Обновить
1
0
Dmitriy Kuts @ExileeD

PHP/Python/Go developer

Отправить сообщение

Чем заняться тимлиду, если не кодить? Рассказываю о своих задачах

Уровень сложностиПростой
Время на прочтение10 мин
Количество просмотров12K

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

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

Я составил список своих задач и разбил их на категории. Кстати говоря, добрую половину этих задач я повесил на себя сам.

Читать далее
Всего голосов 17: ↑15 и ↓2+17
Комментарии13

MacOS Monterey на Linux — быстро и просто?

Уровень сложностиПростой
Время на прочтение3 мин
Количество просмотров47K
Что делать, если у вас возникло желание или необходимость заняться разработкой под MacOS или iOS, но под рукой нет макбука, а покупать его только чтобы открыть Xcode кажется делом сомнительным? Недавно я столкнулся с такой проблемой в одном из своих пет-проектов и решил ее достаточно просто и быстро. После выполнения нескольких достаточно примитивных шагов, мне удалось запустить MacOS Monterey как на скриншоте ниже.

image

Никакого Virtualbox, никакого Virtual Machine Manager. Из требований — только 100 Гб свободного места на диске и хотя бы 16 Гб оперативной памяти. В рунете я встречал описание похожих путей установки, вроде Docker-OSX или Sosumi. Но я бы хотел поделиться способом, который позволяет использовать актуальную версию MacOS (Sosumi — сразу минус) и не потратить уйму свободного времени на возню с конфигами и терминалом. Поехали.
Читать дальше →
Всего голосов 68: ↑64 и ↓4+75
Комментарии67

Разбор Android 13 для разработчиков

Уровень сложностиСредний
Время на прочтение22 мин
Количество просмотров15K

Обзор всех изменений Android 13, которые пригодится вам знать чтобы протестировать работу приложения с новой версий ОС и узнать какие возможности вам будут полезны, чтобы улучшить ваш продукт, а какие вас заставит использовать Google Play!

Подробности
Всего голосов 20: ↑20 и ↓0+20
Комментарии17

Улучшаем лендинг на основе метрик, а не мнений: гайд

Время на прочтение12 мин
Количество просмотров4.7K

Привет, Хабр! Меня зовут Андрей Устьянцев, и я ведущий аналитик направления Big Data в Лиге Цифровой Экономики. Занимаясь digital-маркетингом с 2006 по 2019 год, в какой-то момент я осознал очевидную сейчас многим истину. Эффективность рекламной кампании в интернете зависит не только от качества настройки ее параметров, но и от продающего качества лендинга, на который ведется рекламный трафик.

Но как измерить качество? Оперирование субъективными мнениями дизайнеров и результатами опросов в «экспертных сообществах» (в духе «подскажите, что не так»), как я могу судить по моему опыту, ни к чему в итоге не приводит.

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

Коротко — суть:

Читать далее
Всего голосов 4: ↑3 и ↓1+2
Комментарии0

Управляйте своим Flutter приложением на лету с помощью Firebase Remote Config

Уровень сложностиСредний
Время на прочтение14 мин
Количество просмотров6.5K

Обновления в реальном времени, feature flagging и A/B тестирование – что, если я скажу вам, что вы можете включить эти мощные функции в своё приложение Flutter с минимальными усилиями по разработке и без каких-либо затрат? В этой статье я расскажу о нескольких реальных случаях использования, когда Firebase Remote Config может помочь вам при создании приложений Flutter.

Если вы предпочитаете видеоконтент, посмотрите видеоверсию этой статьи на YouTube (EN).

Узнать больше...
Всего голосов 1: ↑1 и ↓0+1
Комментарии0

Подборка полезных ссылок для разработчиков игр #2

Уровень сложностиПростой
Время на прочтение7 мин
Количество просмотров4K

100 новых ссылок по всем специальностям из геймдева для ваших закладок. Книги, статьи, полезные сервисы, материалы и Telegram каналы для всех, кто делает игры.

Читать далее...
Всего голосов 4: ↑4 и ↓0+4
Комментарии5

Уменьшаем размер MacOS.vdi в VirtualBox

Уровень сложностиПростой
Время на прочтение3 мин
Количество просмотров3K

Что ж, приступим сразу к делу. Как-то мы устанавливали виртуальную машину для сборки одного проекта, однако от души сделали динамический диск на 80GB. Однако позже стало понятно, что не стоило этого делать, так как у виртуальной MacOS оказалась весьма интересная особенность - даже если пространство на виртуалке остается незаполненным, она все равно занимает место на нашем Хосте (в моем случае - Windows). И так, вместо 27GB, фактически она занимала 50GB. Странно? Ну, пожалуй. Ведь динамический диск должен расширяться по ходу заполнения файлами. А что делать, если место пустует...

Так вот, к чему я это. Хватит предисловий и давайте попробуем разобраться с этим.
В целом, весьма четкая инструкция по этому вопросу уже была размещена на самом форуме VirtualBox.

Инструкция была максимально простой, но мне стало немного беспокойно из-за конфузов, которые случались у некоторых ребят с форума. Дело в том, что команда diskutil secureErase freespace 0 / стерла все данные, что были на виртуалке Mojave.vdi у одного юзера, а после часовой кропотливой сборки проекта на моей виртуалке этого совсем не хотелось. Пришлось еще немного порыться в интернете и поосторожничать.

Читать далее
Всего голосов 10: ↑10 и ↓0+10
Комментарии1

Подборка полезных ссылок для разработчиков игр #1

Время на прочтение7 мин
Количество просмотров8.1K

148 новых ссылок по всем специальностям из геймдева для ваших закладок. Книги, статьи, полезные сервисы, материалы и Telegram каналы для всех, кто делает игры.

Читать далее...
Всего голосов 2: ↑2 и ↓0+2
Комментарии2

Автоматизация маркетинга и продаж: 900+ заявок ежемесячно

Время на прочтение5 мин
Количество просмотров3.4K

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

Мы в Completo более активно стали привлекать клиентов с помощью других инструментов. Это позволило не просесть по лидам. В результате мы получаем от 900 до 1200 MQL ежемесячно, в том числе благодаря автоматизации процессов. В этом материале делимся опытом и рассказываем, как работает автоматизация у нас.

Читать далее
Всего голосов 8: ↑1 и ↓7-4
Комментарии4

Как адаптировать Android-приложение под Huawei

Время на прочтение11 мин
Количество просмотров12K

Всем привет! Меня зовут Миша Вассер, я Head of Android в AGIMA. Мы занимаемся разработкой Digital-продуктов для больших и маленьких компаний, в том числе пилим мобильные приложения.

Не так давно — по сравнению со всей историей Android — Huawei выкатил собственную операционную систему и сказал: «Ребята, вот вам новая система, кайфуйте». Многие отнеслись к новой ОС скептически. Остальным пришлось адаптировать под нее свои Android-приложения.

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

Читать далее
Всего голосов 37: ↑35 и ↓2+35
Комментарии20

Миграция приложения из Docker Compose в Kubernetes. Как, зачем и с какими проблемами я столкнулся

Время на прочтение25 мин
Количество просмотров22K

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

Стоявшая передо мной задача: улучшить инфраструктуру и качество работы приложения, успевшего вырасти из MVP и стенда для одного клиента в популярный SaaS. Отсутствие отказоустойчивости и масштабируемости компонентов сервиса начало ощутимо мешать пользователям. Настала пора адаптировать приложение под кластерный режим.

Приложение работало в контейнерах, а оркестрация осуществлялась с помощью Docker Compose. Компоненты приложения не задумывались готовыми к запуску в кластерном режиме, что, разумеется, нормальная ситуация для раннего этапа многих проектов: бизнес требует быстрой доставки новых функций, и на преждевременную оптимизацию не всегда можно и нужно тратить время. Но в какой-то момент именно стабильность и быстродействие становятся самыми важными функциями. 

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

Читать далее
Всего голосов 19: ↑19 и ↓0+19
Комментарии15

On-Demand ISR в Next.js или как эффективно обновлять статический контент на сайте, поступающий из CMS или админки

Время на прочтение4 мин
Количество просмотров5.8K

В этой статье я расскажу, как и для чего, на одном из своих проектов, мы прикрутили новую возможность Next.js – On-Demand ISR (инкрементная статическая регенерация по запросу).

Читать далее
Всего голосов 1: ↑1 и ↓0+1
Комментарии3

Как мы создали шаблон функциональных требований к разработке ПО

Время на прочтение9 мин
Количество просмотров44K

Всем привет, мы – Таня и Лиза, системные аналитики в МТС. В этой статье мы поделимся опытом внедрения структурированного шаблона функциональных требований (ФТ) к разработке ПО в нашей команде.

Статья будет полезна тем, кто работает с фронтовым функционалом – системными и бизнес-аналитикам. Неважно, Junior вы или Lead, в большой работаете компании или в стартапе, – наш рассказ вас наверняка заинтересует. Поговорим не только о том, как мы докатились до такой жизни, приняли единый формат ФТ, но и том, какие именно артефакты аналитик готовит в ходе своей работы. А еще мы подробно расскажем про причины поиска подходящего формата, сложности перехода и составляющие наших ФТ. 

Добро пожаловать под кат!

Читать далее
Всего голосов 23: ↑23 и ↓0+23
Комментарии22

Как настроить Nginx в качестве балансировщика нагрузки

Время на прочтение9 мин
Количество просмотров71K

Что такое балансировка нагрузки?


Балансировка нагрузки подразумевает эффективное распределение входящего сетевого трафика между группой бэкенд-серверов. Задача же регулятора — распределить нагрузку между несколькими установленными бэкенд-серверами.

Существует несколько типов балансировщиков нагрузки:

  • Балансировщик нагрузки приложений.
  • Сетевой балансировщик нагрузки.
  • Балансировщик нагрузки шлюза.
  • Классический балансировщик нагрузки.
Читать дальше →
Всего голосов 19: ↑15 и ↓4+17
Комментарии22

За гранью App Store, или Что нового открывает MDM и Supervised для B2B в iOS

Время на прочтение14 мин
Количество просмотров8.6K
Привет! Меня зовут Денис Кудинов, я iOS-Development team lead в «Лаборатории Касперского». В этой статье расскажу об Mobile Device Management, а также о supervised- и BYOD-режимах — как работает технология и что с ее помощью можно сделать такого, что недоступно обычным приложениям из App Store. Считайте это презентацией возможностей Configuration Profiles, да и Apple MDM в целом :)

image

Статья будет полезна разработчикам B2B-приложений для iOS, которые хотят разбавить свои инструменты новыми фичами, а также для product owner-ов и бэкенд-разработчиков, которые хотят поддержать взаимодействие с мобильными устройствами.
Читать дальше →
Всего голосов 11: ↑11 и ↓0+11
Комментарии4

Настоящий Product Backlog Refinement: 4 этапа правильной работы над фичами

Время на прочтение6 мин
Количество просмотров19K

Привет, Хабр! Я Екатерина Колесникова, Agile Coach в inDriver. Когда я пришла в команду, заметила проблемы в процессе Product Backlog Refinement. Я предложила новый сценарий этой церемонии — и он сработал. В этой статье поделюсь опытом проведения PBR без скучной теории о «правильном» планировании. 

Читать далее
Всего голосов 11: ↑10 и ↓1+11
Комментарии9

Как мы ускоряли сборку Android-приложения из двух миллионов строк кода

Время на прочтение18 мин
Количество просмотров16K

Всем привет! Наверняка каждый Android-разработчик хоть раз сталкивался с проблемой скорости сборки своего проекта. После нехороших слов в адрес кодогенерации, покупок более мощного железа, многочисленных попыток распилить проект на небольшие параллельно собираемые модули и прохождений всех стадий торга мы продолжаем искать решение этой проблемы. К счастью, за годы развития и в Gradle, и Android Gradle Plugin (AGP) появилось много полезных штук для ускорения сборки, о которых я расскажу дальше.


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


Я расскажу на примере мобильного Яндекс Браузера. У нас было ~150 Gradle-модулей, ~2 млн LoC на Java/Kotlin, десяток Gradle-плагинов, тысячи строк кода в buildSrc и лёгкая дрожь от вопроса, сколько ещё может переварить билд-система. Не скажу, что это всё было категорически необходимо, но к написанным строчкам кода надо проявлять уважение.

Читать дальше →
Всего голосов 30: ↑30 и ↓0+30
Комментарии19

Дайджест заметок UX-дизайнера за июль 2022

Время на прочтение13 мин
Количество просмотров1.9K

Автор заметок UX-дизайнера — Антон Григорьев — опытный проектировщик информационных систем, преподаватель и автор статей. Он каждый месяц прочитывает десятки публикаций, отбирает из них самые достойные, выписывает основные тезисы и публикует в своём канале. В июльский дайджест полезных материалов для UX-дизайнеров попало 14 материалов…

Читать далее
Всего голосов 3: ↑3 и ↓0+3
Комментарии1

9 причин перейти с Python на Go

Время на прочтение10 мин
Количество просмотров22K

Переход на новый язык — это всегда большой шаг. Особенно, если этим языком владеет только один член команды. В начале этого года мы поменяли основной язык программирования в Stream — с Python на Go. В этой статье я приведу 9 причин почему — и 3 минуса, выявленных в процессе. 

Кодить на Python не брошу, но посмотрю
Всего голосов 36: ↑8 и ↓28-19
Комментарии36

Это кто понаписал?

Время на прочтение4 мин
Количество просмотров7.9K
Технический директор и разработчик вместе изучают legacy-код в попытках исправить баг. Мучениям нет конца, и они уже готовы сдаться. «Да кто вообще понаписал эту хрень?» — спрашивает технический директор. В раздрае чувств он смотрит в git blame. Оказывается, это он и понаписал.

Встречайте нашего главного героя – Джейка. Он разработчик, недавно принятый в компанию, на проект, которому идет седьмой год. В процессе онбординга Джейку поручили устранить баг, и для этого ему пришлось закопаться в глубины legacy-кода. Вооружившись всеми своими знаниями и пониманием контекста, он сделал шаг в бездну. Всё должно было быть просто. В конце концов, это задача для новичка. Что такого может случиться? (где-то здесь прозвучал циничный смех)
Читать дальше →
Всего голосов 12: ↑12 и ↓0+12
Комментарии12
1
23 ...

Информация

В рейтинге
Не участвует
Откуда
Praha, Hlavni Mesto Praha, Чехия
Дата рождения
Зарегистрирован
Активность