Обновить
25
0
Абакар Магомедов@Ab0cha

Android TechLead

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

Почему моё Android-приложение крашится?

Уровень сложностиСредний
Время на прочтение5 мин
Охват и читатели6.6K

Привет! Меня зовут Абакар, я работаю главным техническим лидером разработки в Альфа-Банке.

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

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

Читать далее

Погружаемся в недра Retrofit

Уровень сложностиСложный
Время на прочтение7 мин
Охват и читатели7.7K

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

Читать далее

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

Уровень сложностиСложный
Время на прочтение10 мин
Охват и читатели5.3K

Привет! Меня зовут Абакар, я работаю главным техническим лидером разработки в Альфа-Банке.

Сегодня мы поговорим на тему, связанную с корутинами, а именно погрузимся чуть глубже в недра компилятора Kotlin. На данную тему мы с Александром Гиревым готовили доклад на «Мобиус».

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

Читать далее

Хочешь стать техлидом? Возможно, что не стоит

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

Привет! Меня зовут Абакар, я работаю главным техническим лидером разработки в Альфа-Банке.

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

Читать далее

Что я усвоил за время своих выступлений на конференциях

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

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

Читать далее

Самые весёлые TODO из Android-фреймворка

Уровень сложностиПростой
Время на прочтение5 мин
Охват и читатели5.8K

Привет, меня зовут Абакар и я работаю главным техлидом Android в Альфа-Банке. Сегодня я расскажу про самые забавные тудухи из AOSP на которые мне приходилось натыкаться во время изучения исходников.

Читать далее

Вредные советы, как приходить с вопросами к техлиду

Уровень сложностиПростой
Время на прочтение6 мин
Охват и читатели4.1K

Привет! Меня зовут Абакар, я работаю главным техническим лидером в Альфа-Банке. Ко мне довольно часто приходят разработчики с вопросами, и я решил собрать свой топ-4 вредных советов о том, как не надо приходить с вопросами.

Важный дисклеймер: это вредные советы, и так делать не нужно!

Читать далее

Как заглянуть под капот Composable функции

Уровень сложностиСредний
Время на прочтение9 мин
Охват и читатели4.6K

Возникал ли у тебя когда-нибудь вопрос о том, как посмотреть, во что Compose Runtime превращает наши Composable-функции, например, когда ты сделал оптимизацию и хочешь понять, что она работает так, как ты ожидаешь? Если да, то ты по адресу. Привет! Меня зовут Абакар, работаю главным техлидом в Альфа-Банке. В статье попробую разобраться, как Composable-функции меняются при компиляции и как работает аннотация @Composable.

Читать далее

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

Уровень сложностиСредний
Время на прочтение8 мин
Охват и читатели6.7K

Привет! Меня зовут Абакар, и я работаю главным техлидом в Альфа-Банке. Меня часто посещает вопрос: «А какой навык всё-таки самый полезный для разработчика?». Понятное дело, что ответ на этот вопрос обязан быть комплексным, и скилл-сет разраба не должен ограничиваться одним навыком. Но умение дебажить — действительно хороший показатель уровня разработчика. Давай разберем на нескольких примерах, почему я так считаю.

Читать далее

Как я в 22 года получил «лычку» Senior

Уровень сложностиПростой
Время на прочтение5 мин
Охват и читатели31K

Привет, читатель! Хотел поделиться историей о том, как я пришёл в IT в 18 лет и к 22 годам получил статус Senior в EPAM. Senior — тот самый Священный Грааль, о котором мечтают все новички.

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

Читать далее

API vs ABI: разницу видят не только лишь все

Уровень сложностиСредний
Время на прочтение5 мин
Охват и читатели9.9K

Привет, дорогой читатель! Думаю, ты точно знаешь, что такое API и как сделать, чтобы твои изменения были API-совместимыми. На самом деле я сам никогда не задумывался, что существует ABI-совместимость, до момента, пока не столкнулся с разработкой библиотеки.

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

Читать далее

8 вещей, которые я усвоил за 6 лет карьеры разработчика

Уровень сложностиПростой
Время на прочтение6 мин
Охват и читатели19K

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

Читать далее

Возможна ли жизнь после плеймаркета?

Уровень сложностиПростой
Время на прочтение6 мин
Охват и читатели9.3K

Привет, старина! Представь свой обычный рабочий день андроид разработчиком. Ты открываешь почту и видишь сообщение как на картинке. Твои действия?

Читать далее

8 типичных нетипичных советов Android-разработчику перед интервью

Уровень сложностиПростой
Время на прочтение6 мин
Охват и читатели8.7K

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

У меня богатый опыт собеседований, только в Альфе я успел провести больше 200. Я выделил несколько советов, которых стоит придерживаться кандидатам. Какие-то из советов могут показаться капитанскими :)

Читать далее

Как мы играли в тесты на Groovy и проиграли

Уровень сложностиСредний
Время на прочтение6 мин
Охват и читатели4.3K

В начале у меня будет один вопрос к тебе дорогой читатель. Писал ли ты когда-нибудь unit-тесты на Groovy ? Если ты андроид-разработчик, то вероятность этого крайне мала. И я с таким не сталкивался пока не пришел на проект Альфы. Небольшой дисклеймер: если ты до этого никогда не писал unit-тесты, то этот материал может показаться тебе непонятным.

Давай представим, ты приходишь на проект и видишь тест, как на картинке. Что ты будешь делать дальше?

Читать далее

Топ 3 странности андроида с которыми мне приходилось сталкиваться

Время на прочтение2 мин
Охват и читатели6.6K

Топ 3 странности андроида с которыми мне приходилось сталкиваться

Disclaimer: Это мой личный топ и субъективное мнение, материала получилось немного, но я надеюсь он будет интересным для тебя.

Читать далее

Самый запутанный краш в моей жизни

Время на прочтение4 мин
Охват и читатели14K

Я работаю над приложением Альфа Мобайл для физических лиц. Однажды с утра пораньше мне прилетел тикет, в котором была описана проблема с лагающим UI. Этот баг воспроизводился только на 21 api. Собственно как делали наши предки я решил для начала попытаться воспроизвести этот баг. Запускаю я билд и вижу вот такое:

Читать далее

Jetpack Compose оптимизация производительности списка

Время на прочтение2 мин
Охват и читатели5.9K
image

Я в своем время наткнулся на довольно интересное поведение composable функций в списках, тогда мне помогла статья с медиума и чтение книги по compose internals, ссылки на них я приложу в конце статьи. Решил поделиться, возможно кому-то это поможет)

Отображение списков распространенный кейс для большинства приложений и зачастую эти списки динамические, в них меняется контент, позиции элементов и т.д. Есть довольно быстрый способ оптимизировать ваш список в compose.
Но для начала рассмотрим, что такое «место вызова» (call site), composable функции.
Читать дальше →

11 Советов самому себе в джуновское прошлое

Время на прочтение7 мин
Охват и читатели24K

11 Советов самому себе в джуновское прошлое

Читать далее

Как дать максимально хреновую оценку задаче

Время на прочтение4 мин
Охват и читатели8.4K
image

Известно, что практически каждому разработчику доводится давать оценку задач на проектах. Для кого-то это время горя, а для кого-то время радости (таких людей не существует). Рассчитывать количество трудозатрат на задачу не самый тривиальный челлендж, поэтому я решил дать несколько советов, как следует себя вести, когда к вам пришли с просьбой оценить задачу.
Читать дальше →
1

Информация

В рейтинге
Не участвует
Откуда
Россия
Дата рождения
Зарегистрирован
Активность