Что порой кроется за «успехом»
Вторая статья – довольно интересная история прохождения собесов на позицию Senior. 25 компаний, 54 этапа, 2 оффера 😱
Есть один интересный фрагмент в статье – «…SharedFlow и StateFlow - опиши их. Я описал flow, параметры в конструкторах, но строго наоборот, перепутав одно с другим, и это при условии, что я чуть ли их не каждый день использовал в повседневной работе. Они трижды меня спрашивали, точно ли так, и я трижды с готовностью отвечал, что все точно так!)».
Кандидат любого уровня может затупить на совсем простых, банальных вещах. Так что если вы джун и где-то затупили на элементарном, не расстраивайтесь – такое бывают у всех 😉
Главное делайте выводы, собирайте фидбек, лучше готовьтесь, старайтесь не нервничать и получите свой оффер 😎
Читать (Ru)
По ту сторону фидбека: как проходят Android-собеседования и чего мы ждём от кандидатов
Сегодня объявляется день материалов связанных с собесами 😉
Первая статья от Альфа-Банка. Чего они ожидают от кандидатов на позицию Android-разработчика. И на что вам нужно обратить внимание, чтобы получить заветный оффер от.
👉 Собеседование — это не допрос
👉 Зачем нужны вопросы на стадии знакомства?
👉 Важны ли софт-скилы?
👉 В каком формате проходит техническая часть
👉 Нужно ли правильно ответить на все вопросы?
👉 Что происходит после технической части?
Читать (Ru)
Gradle Cache: Your build’s best friend
Отличная статья от Алексея Быкова, про уровни кеширования Gradle и как они работают.
👉 Input/Action/Output or where it all starts
👉 Caching layers in Gradle
👉 Build cache in action
👉 Remote Build Cache
Читать (En)
Error Handling in Clean Architecture using Flow and Jetpack ComposeСтатья с примером реализации обработки ошибок в Clean Architecture и связке Kotlin Flow + Jetpack Compose.
Читать (En)
Android Studio Live Code Templates to Save Your Time CodingБазовый список шаблонов для Android Studio и несколько вариантов от автора, для использования кастомных шаблонов.
👉 Some pure Kotlin templates
👉 Some Android specific for Jetpack Compose
👉 Custom templates
👉 Template ideas
Читать (En)
Эффективное и комплексное устранение утечек памяти в AndroidСтатья посвящена изучению эффективных и комплексных решений по нахождению и устранению утечек памяти в контексте Android-разработки.
👉 Что такое утечка памяти?
👉 Что такое GC?
👉 Однопоточные утечки памяти
👉 Многопоточные утечки памяти
👉 Утечки файловых дескрипторов
Читать (Ru)
Проектируем функционал сторисРазбор лучших практик и ошибок в проектировании сторис. В статье собраны 102 гайдлайна на базе 100+ просмотренных приложений.
👉 Блок с миниатюрами сторис
👉 Открытие сторис
👉 Темы для сторис
👉 Просмотр сторис
👉 Отслеживание прогресса
👉 Действия с историями
👉 Переключение историй
👉 Закрытие историй
Читать (Ru)
🔥 Приглашаем 1 августа в 20:00 мск, на открытый вебинар "Как Swift может помочь с заглушками сервисов или как не зная других языков стать фулстек iOS разработчиком с использованием фреймворка Vapor" в Отус.
❗️Вебинар является бесплатной частью онлайн-курса "iOS Developer. Professional".
🟠 На вебинаре мы расскажем, как можно использовать фреймворк Vapor 4 для создания бэкенд-сервисов и как это может помочь iOS-разработчикам, которые не знают других языков программирования. Обсудим создание своего API, организацию БД и другие задачи, которые можно решить с помощью Vapor. Также мы рассмотрим элементы реактивного программирования SwiftNIO 2, разработанные Apple, и их роль в экосистеме Vapor.
📚 Этот вебинар будет полезен всем iOS-разработчикам, которые хотят научиться писать сервисы и использовать Vapor, даже если они владеют только Swift.
👉 Запись на вебинар: https://otus.pw/S1br/Нативная интеграция. Информация о продукте www.otus.ru
Android Developer Roadmap 2023
Еще один, очередной роадмап по Android на 2023 год.
К слову, роадмап несколько не стандартный, потому что состоит из списка упражнений для практики. Выполняя каждое упражнение(читай проект/фича), получаешь опыт.
Для тех, кто не может придумать себе проект для практики, самое то.
Читать (En)
Learn Kotlin Flow by real examples for AndroidПроект с примерами для изучения Kotlin Flow.
• How to use Kotlin Flow in Android Project?
• Doing simple task in background using Kotlin Flow.
• Doing tasks in series using Kotlin Flow.
• Doing tasks in parallel using Kotlin Flow. Blog
• Making two network calls in parallel using Kotlin Flow.
• Using operators like filter, map, reduce, flatMapConcat, zip, and etc.
• Exception handling in Kotlin Flow
• How to use onCompletion in Flow?
• Retry Task using retry operator in Flow.
• Retry Task with Exponential Backoff in Flow.
• Using Kotlin Flow with Retrofit. Blog
• Using Kotlin Flow with Room Database. Blog
• Using Kotlin Flow with various 3rd party libraries.
• Making two network calls in parallel using Kotlin Flow.
• Doing task in series using Kotlin Flow.
• Writing Unit-Test for ViewModel which uses Kotlin Flow
• Flow and StateFlow
GitHub → Learn-Kotlin-Flow
Material Design Components for Android 1.9.0
Каким-то образом пропустил новость. В Material Design Components for Android 1.9.0 появился новый компонент – Carousel, который работает на основе RecyclerView, со своим CarouselLayoutManager🔥
Читать (En)
X5 Kotlin Multiplatform Meetup
X5 Tech приглашает на митап, на котором обсудят опыт использования КММ в реальных проектах, что в итоге можно выиграть от KMM и сделать общим между платформами.
Программа
🟢Kotlin multiplatform в b2b: как мы пишем приложение для сотрудников 20 тысяч магазинов. На примере приложения «Пятёрочка» спикеры поделятся взглядом на технологию после опыта использования и разберут: сложности внедрения общей ViewModel, плюсы и минусы KMM.
🟢Почему KMM не кроссплатформа. Доклад будет ориентирован на разработчиков, не знакомых с технологией. Спикер затронет известные недостатки кроссплатформы и посмотрит, как их решает KMM, что можно сделать общим между платформами, а что нет, и сколько в итоге можно выиграть от использования KMM.
Митап пройдет в гибридном формате: офлайн в Москве в пространстве Весна с онлайн-трансляцией для тех, кто не сможет приехать.
Регистрация по ссылке.
🗓 26 июля, 19:00 мск • Онлайн / Офлайн (Москва)
5 Kotlin Tips for a Cleaner Codebase
Несколько советов для написания более понятного, поддерживаемого и читаемого Kotlin кода.
👉 Pay attention to the visibility of classes
👉 Keep the number of top-level declarations to a minimum
👉 Prefer readability over saving a few lines of code
👉 Prefer creating a dedicated data class to using a Pair or Triple
👉 Prefer exhaustive when statements
Читать (En)
Injection Points
Обзор нескольких полезных Android API фабрик, с помощью которых мы можем влиять на создание основных компонентов.
👉 AppComponentFactory
👉 LayoutInflater.Factory and Views
👉 FragmentFactory
👉 ViewModelProvider.Factory
👉 WorkManager and WorkerFactory
Читать (En)
Работа с асинхронными операциями с помощью Kotlin Coroutines
Еще один большой материал с примерами по корутинам 🔥
👉 Знакомство с Kotlin Coroutines
👉 Области видимости (CoroutineScope)
👉 Диспетчеры (Dispatchers)
👉 Корутин-билдеры (Coroutine Builders)
👉 Задачи (Jobs)
👉 Функции приостановки (Suspend)
👉 Continuation
👉 CoroutineExceptionHandler
👉 SupervisorJob
👉 Заключение
Читать (Ru)
Как мы запускали демоприложенияСтатья от ребят из Тинькофф, в которой рассказывается как они ускорили синхронизацию и сборку проекта, состоящего из ~1000 модулей, решили проблему лагающей Android Studio с помощью демоприложений, уменьшили простой и улучшили продуктивность разработчиков.
Статья будет интересна тем, кто работает над многомодульным проектом, где количество модулей перевалило за сотню, время синхронизации измеряется в минутах, а время сборки — в десятках минут.
Читать (Ru)