Тестовое задание
Тестовое задание – это небольшое приложение на пару экранов. Его задача – проверить твои навыки проектирования и кодирования, а также способность самостоятельно работать над проектом. Полезно иметь на гитхабе хотя бы один сделанный проект, чтобы отмахиваться им от рекрутеров, когда просят показать код.
Залететь на новую работу выполнив тестовое – один из самых непыльных путей. Ты делом показываешь что могёшь условную мурку и часто пропускаешь другие этапы собеседования. Я делал так дважды, просили клон инстаграма и todo-лист. Сейчас у меня валяется пет-проект где я обмазался всеми технологиями с ног до головы, и в принципе этого достаточно если кто-то хочет посмотреть код.
Идея для приложения?
Самое время для творчества. Подойдет все, что решает конкретную проблему:
🐗 заметки
🐗 прогноз погоды
🐗 конвертер криптовалют
🐗 репозитории компании на github
🐗 список премьер в кино
Существует огромный список публичных API, на основе которых можно собрать свою интересную поделку.
Идеи для дизайна можно посмотреть на Uplabs и Dribbble. Или просто использовать Material Design от Google.
Какие технологии использовать при разработке?
Бывает, что компания явно указывает рекомендуемый стек. За использование чего-то экзотического попросят пояснительную бригаду. Если ничего не указано, используем следующие технологии:
🐗 язык: kotlin
🐗 версия android: 6.0 (API Level 23) и выше
🐗 архитектура: clean, MVVM или MVI, Data-Domain-UI, гайд и рекомендации
🐗 бизнес-логика: ViewModel, LiveData, Flow
🐗 UI: адаптивный Material 3, XML или Jetpack Compose, ViewBinding, Lifecycle
🐗 DI: Hilt, Koin
🐗 навигация: Single Activity, Navigation Component
🐗 многопоточность/async: Kotlin Coroutines
🐗 работа с сетью: Retrofit, Okhttp
🐗 сериализация: Kotlin Serialization, Gson
🐗 загрузка картинок: Coil, Glide
🐗 хранение данных: DataStore, Room
🐗 фоновая обработка: WorkManager
🐗 линтеры: Lint, Ktlint, Detekt, Spotless
На что обратить внимание при оформлении / что будет оцениваться?
🐗 полнота реализованного функционала, соответствие требованиям и пожеланиям ТЗ
🐗 качество, плавность и стабильность работы
🐗 проект собирается и запускается, работает без крашей и багов, не жрет оперативку как голодный родственник, корректное функционирование вплоть до закрытия. Не допускается потеря работоспособности во время использования. Устойчиво к сворачиванию/разворачиванию
🐗 использование архитектурных подходов, логическое разделение на модули, организация классов в пакеты
🐗 опрятность кода: никаких кривых отступов, закомменченных участков, лишних пустых строк, стилистическое оформление по гайдлайнам
🐗 обработка ошибок и пустых состояний, индикаторы загрузки
🐗 избегать многоуровневой структуры в xml-файлах
🐗 не копипастить 100% кодовой базы из других проектов на гитхабе, это легко проверяется
🐗 минимум внешних зависимостей типа moxy и epoxy
🐗 работа с Git – оформление коммитов и пулл-реквестов
Готовый проект публикуем на гитхаб. Обязательно заполняем readme:
🐗 какие задачи выполняет приложение (скопировать ТЗ)
🐗 используемые зависимости, их версии
🐗 инструкция по запуску
Отправляем ссылку на проект потенциальному работодателю. Пингуем, чтобы дали фидбек.
В заключение примеры тестовых заданий от разных компаний: Wildberries, VK, Avito, Kode, KazanExpress, Tutu, Tinkoff, Shift.
И примеры посложнее: VK, Avito.
Тестовое задание – это небольшое приложение на пару экранов. Его задача – проверить твои навыки проектирования и кодирования, а также способность самостоятельно работать над проектом. Полезно иметь на гитхабе хотя бы один сделанный проект, чтобы отмахиваться им от рекрутеров, когда просят показать код.
Залететь на новую работу выполнив тестовое – один из самых непыльных путей. Ты делом показываешь что могёшь условную мурку и часто пропускаешь другие этапы собеседования. Я делал так дважды, просили клон инстаграма и todo-лист. Сейчас у меня валяется пет-проект где я обмазался всеми технологиями с ног до головы, и в принципе этого достаточно если кто-то хочет посмотреть код.
Идея для приложения?
Самое время для творчества. Подойдет все, что решает конкретную проблему:
Существует огромный список публичных API, на основе которых можно собрать свою интересную поделку.
Идеи для дизайна можно посмотреть на Uplabs и Dribbble. Или просто использовать Material Design от Google.
Какие технологии использовать при разработке?
Бывает, что компания явно указывает рекомендуемый стек. За использование чего-то экзотического попросят пояснительную бригаду. Если ничего не указано, используем следующие технологии:
На что обратить внимание при оформлении / что будет оцениваться?
Готовый проект публикуем на гитхаб. Обязательно заполняем readme:
Отправляем ссылку на проект потенциальному работодателю. Пингуем, чтобы дали фидбек.
В заключение примеры тестовых заданий от разных компаний: Wildberries, VK, Avito, Kode, KazanExpress, Tutu, Tinkoff, Shift.
И примеры посложнее: VK, Avito.
Please open Telegram to view this post
VIEW IN TELEGRAM
Ретроспектива изученных языков
Впервые желание изучать языки программирования появилось у меня в школе. Прошло полгода как в моё село провели интернет. Я закончил скачивать все торренты которые существуют на свете (потребитель) и задумался над созданием чего-нибудь самостоятельно (криэйтор).
🐗 HTML
Делать сайты – первое, до чего я додумался. Некоторое время поизучал теги/стили на htmlbook. Максимальный выхлоп – несколько веб-страничек, которые можно было открыть в браузере.
🐗 PascalABC
На первом курсе приказали программировать. Этот учебный язык я долбил 2 года, так и не выучил. Требовалось сдавать курсовые, показывать что-нибудь работающее. Я оставался на уровне «как присваивать значение переменной?». Решения - копипастятся из интернета. Будущее - неопределенное.
🐗 Delphi
У этого, забытого даже динозаврами, диалекта Паскаля была своя IDE для создания приложений. Никакой заинтересованности не вызвал.
🐗 Visual Basic
А также Visual Basic for Application. Изучение началось с написания макросов для Word и Excel. Язык сразу показался перегруженным - одни только sub и end sub чего стоят. Но! Оказалось на Бейсике можно создавать настоящие программы для Windows. Впервые появился намек на коммерческий потенциал. В мыслях зашуршала капуста с франклинами. Скачивается Visual Studio, начинается освоение Windows Forms.
Впервые желание изучать языки программирования появилось у меня в школе. Прошло полгода как в моё село провели интернет. Я закончил скачивать все торренты которые существуют на свете (потребитель) и задумался над созданием чего-нибудь самостоятельно (криэйтор).
Делать сайты – первое, до чего я додумался. Некоторое время поизучал теги/стили на htmlbook. Максимальный выхлоп – несколько веб-страничек, которые можно было открыть в браузере.
На первом курсе приказали программировать. Этот учебный язык я долбил 2 года, так и не выучил. Требовалось сдавать курсовые, показывать что-нибудь работающее. Я оставался на уровне «как присваивать значение переменной?». Решения - копипастятся из интернета. Будущее - неопределенное.
У этого, забытого даже динозаврами, диалекта Паскаля была своя IDE для создания приложений. Никакой заинтересованности не вызвал.
А также Visual Basic for Application. Изучение началось с написания макросов для Word и Excel. Язык сразу показался перегруженным - одни только sub и end sub чего стоят. Но! Оказалось на Бейсике можно создавать настоящие программы для Windows. Впервые появился намек на коммерческий потенциал. В мыслях зашуршала капуста с франклинами. Скачивается Visual Studio, начинается освоение Windows Forms.
Please open Telegram to view this post
VIEW IN TELEGRAM
Приложения работают, но Бейсик менее душным не становится. Внезапно оказывается, что у Microsoft есть еще как минимум один язык для Windows Forms – C#. Так он мне понравился! Копаясь в Visual Studio обнаружил фреймворк WPF – визуально-презентационная система для Windows-приложений. Всё выглядит красиво, разметка XAML помогает дизайнить адаптивно. К Windows Forms больше не возвращаюсь.
В это время ходил с Nokia Lumia на Windows Phone 7. Сложив 2+2 решаю делать на C# приложения под эту ось. Даже спустя 10 лет вспоминается как у Microsoft все было красиво и удобно в их IDE. Бесперспективность идеи создания мобильных приложений вскоре становится очевидной. ОС совсем не привлекательна для пользователей.
Где еще найти применение шарпам? Недолгий гуглешь приводит к игровому движку Unity. Загрузка, установка, туториал пройден, начинаю пилить 2D-шутер. По другую сторону производства открываю для себя целую индустрию по продаже готовых ассетов для игр. Скачиваю Blender, рисую кружку. Все утомляет, удаляю и блендер и юнити.
Не обошел меня стороной. Приходит новый препод, начинаются лекции. Звездочки, тильды, амперсанды прямо в коде. Какие-то заголовочные файлы. Без слез и пузыря не взглянешь. Я вроде бы признавал универсальность и всеобщую мощь C++, но язык мне просто не нравился.
Одной парой в неделю тянется дисциплина «Веб-дизайн». Изучаю JS+HTML+CSS, делаю сайты по шаблонам, ровняю отступы, настраиваю стили. Интерес к созданию сайтов похоронен в школе, поэтому двигаюсь как самурай – без энтузиазма.
Windows Phone дышит на ладан. Нокиа превращается в кирпич. Приобретаю Самсунг и принимаю решение учить язык разработки приложений под Android – Java. По удачному стечению обстоятельств Java имеет схожий с C# синтаксис, учить легко, все чудно. Скачиваю IntelliJ IDEA, осваиваю Android SDK, устраиваюсь на работу. Пишу на Java с 2015 по 2018.
В конце 2018 становится очевидно: настроения в Андроид-разработке изменились. Пора в Котлин. В январе начинаю изучать, через 2 недели пишу на проде (паскаль за 2 года). Раз в месяц выходит новая версия, вываливают data object, читаю что это, открываю проект, добавляю слово data к своим object.
P.S.
Бэкенд-разработка полностью прошла мимо меня. Мне никогда не было интересно как работают сервера и какие нагрузки там крутятся. Синдром фронтендера у меня даже не появлялся. В мобильную разработку я влез, когда случился переход из скевоморфизма в плоский мир. Я до сих пор двумя ногами адепт простоты и утонченности. Между запросами к SQL и созданием красоты, которую можно увидеть, потыкать и посвайпать, выберу второе.
Какие выводы?
Что дальше?
Please open Telegram to view this post
VIEW IN TELEGRAM
Вылизываем резюме
С резюме начинается первая коммуникация с работодателем. Его цель – появиться на радарах рекрутеров и попасть на собес. Для ру-рынка хватает hh, в остальных случаях – LinkedIn и PDF. Целиться лучше в рынок, а не в конкретную компанию. Хорошо оформленная анкета сразу выделит тебя из безликой массы.
По пунктам:
🧷 Фотка
Не особо нужна. Дискриминация по внешке и все такое. Посмотрят на тебя в мите.
🧷 Личные данные
Нужны – имя и фамилия. Не нужны – отчество, пол, возраст, рост, вес, дата рождения.
🧷 Контактная информация
Указать почту и телеграм. Номер телефона лучше не указывать, чтобы помощника олега не напрягать.
Дополнительно город или часовой пояс. Если живешь в лесу – указать крупный город рядом.
🧷 Специализация
Указать основной язык/фреймворк/стек. Например: Android разработчик, Flatter developer. Ни в коем случае не добавлять приставки junior, middle, intern, начинающий, стажер и т. д. – есть шанс легко себя продаунгрейдить.
🧷 Зарплатные ожидания
Обсуждаются на собесе. В резюме не указываются. О твоей ценности как специалиста скажет рынок. И чаще в большую сторону.
🧷 Опыт вождения/наличие тачки
Это лишняя информация. Для работы в IT не нужны права.
🧷 Уровень образования
Если по специальности – указать вместе с кафедрой.
Если гуманитарий – только название вуза без специальности.
Если семинариев не заканчивали - по ситуации. Либо вообще ничего не указывать, либо «учился там-то, диплом потерялся».
🧷 Знание языков
Все просто: пишем английский от B1 и выше. Даже если твой текущий уровень – старбакс. Потом не баклушничаем и подтягиваем.
🧷 Пройденные курсы
Худшее, что делают курсы в резюме – перетягивает на себя внимание с опыта работы. Не должно быть тривиального километрового списка. Никаких курсов по фотошопу. Только по указанной специальности. Если опыт работы есть – курсы лучше не указывать.
🧷 Электронные сертификаты
Не отвлекаемся.
🧷 Рекомендации
Не отвлекаемся.
С резюме начинается первая коммуникация с работодателем. Его цель – появиться на радарах рекрутеров и попасть на собес. Для ру-рынка хватает hh, в остальных случаях – LinkedIn и PDF. Целиться лучше в рынок, а не в конкретную компанию. Хорошо оформленная анкета сразу выделит тебя из безликой массы.
По пунктам:
Не особо нужна. Дискриминация по внешке и все такое. Посмотрят на тебя в мите.
Нужны – имя и фамилия. Не нужны – отчество, пол, возраст, рост, вес, дата рождения.
Указать почту и телеграм. Номер телефона лучше не указывать, чтобы помощника олега не напрягать.
Дополнительно город или часовой пояс. Если живешь в лесу – указать крупный город рядом.
Указать основной язык/фреймворк/стек. Например: Android разработчик, Flatter developer. Ни в коем случае не добавлять приставки junior, middle, intern, начинающий, стажер и т. д. – есть шанс легко себя продаунгрейдить.
Обсуждаются на собесе. В резюме не указываются. О твоей ценности как специалиста скажет рынок. И чаще в большую сторону.
Это лишняя информация. Для работы в IT не нужны права.
Если по специальности – указать вместе с кафедрой.
Если гуманитарий – только название вуза без специальности.
Если семинариев не заканчивали - по ситуации. Либо вообще ничего не указывать, либо «учился там-то, диплом потерялся».
Все просто: пишем английский от B1 и выше. Даже если твой текущий уровень – старбакс. Потом не баклушничаем и подтягиваем.
Худшее, что делают курсы в резюме – перетягивает на себя внимание с опыта работы. Не должно быть тривиального километрового списка. Никаких курсов по фотошопу. Только по указанной специальности. Если опыт работы есть – курсы лучше не указывать.
Не отвлекаемся.
Не отвлекаемся.
Please open Telegram to view this post
VIEW IN TELEGRAM
Список технологий, с которыми работал: основные языки, фреймворки, библиотеки, инструменты и методологии. Должны показать твою высокую техническую экспертизу. Никакого пунктуально-стрессоустойчивого буллщита, уверенного владения вордом и солидов с драями. Все только по делу. Например: Git, Java, Kotlin, Dart, KMP, Compose, RxJava, ExoPlayer, Firebase, Realm, ML Kit, FastLane, TeamCity, CircleCI, Detekt, Kaspresso.
То, что расскажет о тебе как о специалисте. Начинать лучше всего с количества лет коммерческого опыта. Указать на чем специализируешься, что интересно, что умеешь, в чем хорошо разбираешься, в чем эксперт. В каких больших и маленьких командах работал, по каким методологиям. Какие системы создавал и поддерживал. Изучаемые тобой новые технологии. Что для тебя важно в айти в целом и в будущей команде в частности. Опыт управления, если хочешь управлять и быть наставником, разное лидерство, сотрудничество, руководство командами, работа в коллаборативной среде. Пишешь техностатьи, выступаешь с докладами, побеждаешь на хакатонах – всё сюда. Ссылку на гитхаб обязательно, форки, проекты, добавил запятую в какой-нибудь опенсорс – пиши, что только на тебе там все и держится. В общем не соискатель, а киборг-убийца.
Все перечисленное выше хорошо, но нисколько не поможет пройти фильтр эйчара если такой имеется. Графа с опытом работы должна быть тем жирнее, чем его меньше. Каждый эйчар мечтает увидеть здесь бизнес-результаты и метрики. Это может быть конкретное измеримое достижение на работе, улучшение процессов, завершение проектов, запуск проектов с нуля, инновации и творческое мышление. В меньшей степени – умение рефакторить, переезжать с одной архитектуры на другую.
Структура следующая:
– Возглавил интеграцию в приложение кошелька TrustWallet для проведения платежей в криптовалюте.
– Работал над оффлайн-режимом, снизил нагрузку на бэкенд на 20%, использовав библиотеку Realm.
Шаблонные формулировки типа «правил баги, делал фичи» никого не впечатляют. Если на проекте случалось только верстать ui, в то время как коллега оркестрировал сложными фреймворками – не стесняемся и тащим опыт себе.
Если коммерческий опыт имеется – все в шоколаде. Если опыта нет – время включать режим изобретателя и работать с тем, что имеется: взять стажировку, фриланс, смежную сферу, работу на дядю, не по специальности, парт-тайм, друг попросил, волонтерство, научный проект, лабы в универе или наконец чужой опыт и сконвертировать это в свой айтишный опыт работы. Fake it till you make it. В случае успеха рисованная экспертиза станет реальной. Неудачи не бывает, бывают тестовые попытки.
Обнови свое резюме уже сегодня!
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
Морской волк
Джун попадает в токсичную компанию.
Постигает азы работы в команде.
Заканчивает проект лидом.
Хочу продать тебе идею почитать немного столетней беллетристики. Еще не писал рецензии на творения поп-культуры. Начнем с этой книги Джека Лондона, о которой я узнал из статьи про волчистость. Вольная интерпретация в трех строчках – выше, переусложненная как полагается – ниже. Без спойлеров.
1893 год. Литературный критик Хэмфри Ван-Вейден отправляется на пароме через залив и терпит кораблекрушение. Из воды его волею случая спасает капитан промысловой шхуны, которого все на борту зовут Волк Ларсен. Ни дня в жизни не работавший руками 35-летний Ван-Вейден обнаруживает себя среди разношерстной команды и становится заложником жестокой воли ее капитана. Ларсен, презирающий сибаритский образ жизни, назначает спасенного юнгой и забирает с собой в плавание. Уже в новой для себя роли Ван-Вейден вынужден отправиться к берегам Японии бить морских котиков и учиться «стоять на своих ногах».
Как рыба живет в воде, так любое произведение – в контексте. В данном случае внутри общественной мысли конца XIX – начала XX века в западной культуре. В эпоху модернизма были популярны идеи объяснить устройство общества действиями законов живой природы и биологическими концепциями естественного отбора. Выживает наиболее приспособленный к экономике. В этой модели харизматичный Волк Ларсен – ницшеанский сверхчеловек. Превосходит людей как те обезьян. Не считается с правилами и законами, самостоятельно определяет свою судьбу. Бросает вызов обществу на пути к своим целям. Его антипод – человек посредственный, стремящийся к комфорту и безопасности. Столкновение этих двух противоречивых образов и будет конвой романа.
Джун попадает в токсичную компанию.
Постигает азы работы в команде.
Заканчивает проект лидом.
Хочу продать тебе идею почитать немного столетней беллетристики. Еще не писал рецензии на творения поп-культуры. Начнем с этой книги Джека Лондона, о которой я узнал из статьи про волчистость. Вольная интерпретация в трех строчках – выше, переусложненная как полагается – ниже. Без спойлеров.
1893 год. Литературный критик Хэмфри Ван-Вейден отправляется на пароме через залив и терпит кораблекрушение. Из воды его волею случая спасает капитан промысловой шхуны, которого все на борту зовут Волк Ларсен. Ни дня в жизни не работавший руками 35-летний Ван-Вейден обнаруживает себя среди разношерстной команды и становится заложником жестокой воли ее капитана. Ларсен, презирающий сибаритский образ жизни, назначает спасенного юнгой и забирает с собой в плавание. Уже в новой для себя роли Ван-Вейден вынужден отправиться к берегам Японии бить морских котиков и учиться «стоять на своих ногах».
Как рыба живет в воде, так любое произведение – в контексте. В данном случае внутри общественной мысли конца XIX – начала XX века в западной культуре. В эпоху модернизма были популярны идеи объяснить устройство общества действиями законов живой природы и биологическими концепциями естественного отбора. Выживает наиболее приспособленный к экономике. В этой модели харизматичный Волк Ларсен – ницшеанский сверхчеловек. Превосходит людей как те обезьян. Не считается с правилами и законами, самостоятельно определяет свою судьбу. Бросает вызов обществу на пути к своим целям. Его антипод – человек посредственный, стремящийся к комфорту и безопасности. Столкновение этих двух противоречивых образов и будет конвой романа.
Эта социально-философская утопия удачно маскируется под жанр морских приключений. Подробно описывая традиции моряков и быт на корабле Лондон создает для нас эффект погружения. Здесь будет много романтического деления мира на черное и белое. Несмотря на это мы не сразу видим в Волке Ларсене антигероя, безжалостного просто по своей прихоти.
Перед нами он предстает во всех возможных спектрах: жестокий тиран, обаятельный садист, закоренелый индивидуалист. В противовес этому – обходительный и рассудительный собеседник с нестандартным складом ума, пылким темпераментом и необычайной физической силой. Через философские дискуссии и идеологические споры Ларсен будет штурмовать мировоззрение Ван-Вейдена. А тому останется только аргументированно противостоять. Здесь найдется отражение и собственным взглядам Лондона. Волк Ларсен – откровенный злодей, которого мы неохотно уважаем. Злодей, который честен с нами с самого начала, в том, кем является и во что верит.
Когда фокус повествования сместится на Ван-Вейдена мы увидим воспевание силы духа, преодолевающего любые препятствия, и даже какую-никакую любовную линию. Чем закончится это приключение – будет интригой до самого конца. Как и собственно кто здесь морской волк.
Мир описанный в романе бесконечно далек от нашего. Попробуй сегодня на серьезных щщах подискутировать про гипотезу сверхчеловека, не привлекая внимание санитаров. Развитие гуманизма надолго прописало эту идею на два метра под землю. В то же время другие идеи Ницше – выход из зоны комфорта, нигилизм и экзистенциализм актуальны как никогда.
Чему может научить роман и его главные герои обывателя сегодняшнего, живущего в самое безопасное и человекоцентричное время за всю историю? Тому, что сильная личность не выковывается на диване, ей нужны условия близкие к экстремальным. Тому, что нужна смелость брать ответственность за себя и других. Еще невероятной жажде жизни, которую случается видеть так редко («отлежусь само пройдет», «и здесь неплохо кормят»). Наконец тому, что жизнь полна неудовлетворенности, но еще меньше может удовлетворить нас мысль о предстоящей смерти.
– Он никогда не философствует о жизни? – добавил я.
– О нет, – ответил Волк Ларсен с горечью. – И в этом его счастье. Он слишком занят жизнью, чтобы думать о ней. Я сделал ошибку, когда впервые открыл книгу.
Перед нами он предстает во всех возможных спектрах: жестокий тиран, обаятельный садист, закоренелый индивидуалист. В противовес этому – обходительный и рассудительный собеседник с нестандартным складом ума, пылким темпераментом и необычайной физической силой. Через философские дискуссии и идеологические споры Ларсен будет штурмовать мировоззрение Ван-Вейдена. А тому останется только аргументированно противостоять. Здесь найдется отражение и собственным взглядам Лондона. Волк Ларсен – откровенный злодей, которого мы неохотно уважаем. Злодей, который честен с нами с самого начала, в том, кем является и во что верит.
Когда фокус повествования сместится на Ван-Вейдена мы увидим воспевание силы духа, преодолевающего любые препятствия, и даже какую-никакую любовную линию. Чем закончится это приключение – будет интригой до самого конца. Как и собственно кто здесь морской волк.
Мир описанный в романе бесконечно далек от нашего. Попробуй сегодня на серьезных щщах подискутировать про гипотезу сверхчеловека, не привлекая внимание санитаров. Развитие гуманизма надолго прописало эту идею на два метра под землю. В то же время другие идеи Ницше – выход из зоны комфорта, нигилизм и экзистенциализм актуальны как никогда.
Чему может научить роман и его главные герои обывателя сегодняшнего, живущего в самое безопасное и человекоцентричное время за всю историю? Тому, что сильная личность не выковывается на диване, ей нужны условия близкие к экстремальным. Тому, что нужна смелость брать ответственность за себя и других. Еще невероятной жажде жизни, которую случается видеть так редко («отлежусь само пройдет», «и здесь неплохо кормят»). Наконец тому, что жизнь полна неудовлетворенности, но еще меньше может удовлетворить нас мысль о предстоящей смерти.
– Он никогда не философствует о жизни? – добавил я.
– О нет, – ответил Волк Ларсен с горечью. – И в этом его счастье. Он слишком занят жизнью, чтобы думать о ней. Я сделал ошибку, когда впервые открыл книгу.
Уходим в отпуск выгодно
О чем должен помнить каждый работяга на пятидневке по ТК? Об отпуске конечно же.
Работодатель каждый месяц платит зарплату, чтобы ты забыл о своих мечтах и предоставляет отпуск, чтобы ты не выгорел в угли. За каждый отработанный год тебе полагается 28 оплачиваемых дней отпуска. 14 из которых надо отгулять одним куском, остальные хоть по одному дню.
Есть месяцы, в которые отдыхать невыгодно – доход будет меньше. Если мы откроем производственный календарь на 2024 год, то обнаружим что в предстоящем году выгоднее всего брать длинный отпуск в июле и октябре и соответственно невыгоднее в январе и июне. Чем больше в месяце рабочих дней – тем лучше для кошелька. Чем больше праздников и выходных – тем хуже.
Расклад на 2024 такой:
январь – 17 раб. дней
февраль – 20 раб. дней
март – 20 раб. дней
апрель – 21 раб. день
май – 20 раб. дней
июнь – 19 раб. дней
июль – 23 раб. дня
август – 22 раб. дня
сентябрь – 21 раб. день
октябрь – 23 раб. дня
ноябрь – 21 раб. день
декабрь – 21 раб. день
Работодатель платит за каждый календарный день отпуска, включая выходные. За праздничные дни не платит. Размер отпускных зависит от официальной части дохода. Один день отпуска = среднедневному заработку за последний год перед месяцем начала отпуска. Отпускные платят заранее. Если не пришли за три дня до начала отпуска – стоит осмотреться, возможно у твоей галеры пробоина в корпусе и пора спасаться бегством.
О чем должен помнить каждый работяга на пятидневке по ТК? Об отпуске конечно же.
Работодатель каждый месяц платит зарплату, чтобы ты забыл о своих мечтах и предоставляет отпуск, чтобы ты не выгорел в угли. За каждый отработанный год тебе полагается 28 оплачиваемых дней отпуска. 14 из которых надо отгулять одним куском, остальные хоть по одному дню.
Есть месяцы, в которые отдыхать невыгодно – доход будет меньше. Если мы откроем производственный календарь на 2024 год, то обнаружим что в предстоящем году выгоднее всего брать длинный отпуск в июле и октябре и соответственно невыгоднее в январе и июне. Чем больше в месяце рабочих дней – тем лучше для кошелька. Чем больше праздников и выходных – тем хуже.
Расклад на 2024 такой:
январь – 17 раб. дней
февраль – 20 раб. дней
март – 20 раб. дней
апрель – 21 раб. день
май – 20 раб. дней
июнь – 19 раб. дней
июль – 23 раб. дня
август – 22 раб. дня
сентябрь – 21 раб. день
октябрь – 23 раб. дня
ноябрь – 21 раб. день
декабрь – 21 раб. день
Работодатель платит за каждый календарный день отпуска, включая выходные. За праздничные дни не платит. Размер отпускных зависит от официальной части дохода. Один день отпуска = среднедневному заработку за последний год перед месяцем начала отпуска. Отпускные платят заранее. Если не пришли за три дня до начала отпуска – стоит осмотреться, возможно у твоей галеры пробоина в корпусе и пора спасаться бегством.
Для примера возьмем двух стахановцев: Аркадия и Арсения. Эти двое из ларца лутают по 300k/мес, планируют в 2024 отпуск на 14 дней и отработали 12 месяцев до месяца в котором будет отпуск.
👋 Аркадий решает продлить новогодний опохмел и выбирает даты отпуска:
15.01.2024 – 28.01.2024.
Из этих 2 недель: 10 – рабочие дни, 4 – выходные.
Всего в январе 17 рабочих дней. Аркадий отработает только 7 из них.
За предыдущие 12 месяцев доход Аркадия составил:
3 600 000₽ (300 000₽ * 12).
Средний дневной заработок Аркадия:
10 238₽ (3 600 000₽ / 12 / 29.3).
29.3 – это в среднем дней в месяце.
ЗП Аркадия за январь составит:
123 530₽ (300 000₽ / 17 * 7).
Отпускные Аркадия за январь:
143 332₽ (10 238₽ * 14).
Совокупный доход за январь:
266 862₽ (123 530₽ + 143 332₽).
У Арсения будет 300 000₽.
🏝 Арсений собрался в отпуск на тропический остров и выбирает даты:
15.07.2024 – 28.07.2024.
В июле целых 23 рабочих дня, из которых Арсений отработает 13.
Доход за год, средний дневной заработок и размер отпускных будет таким же как у Аркадия.
ЗП Арсения за июль составит:
169 565₽ (300 000₽ / 23 * 13).
Совокупный доход за июль:
312 897₽ (169 565₽ + 143 332₽).
У Аркадия будет 300 000₽.
Таким образом наши джентльмены сходили в одинаковый по продолжительности отпуск, но с разницей в 46k деревянных. Этот пример показывает, что иногда можно обнаружить на балансе приятную неожиданность, если плохо спланировать отпуск или будущие расходы. Есть много критериев определения точки безубыточности, если хочется упороться – заходи в калькулятор отпускных. Там можно указать предыдущие отпуска, больничные, командировки и простои.
Про что не забыть когда увольняешься?
Перерабатывать зарплату в выполненную работу надоело, решаешь сойти на берег. Не всегда получается отгулять все дни отпусков, они накапливаются несгораемой суммой. За них тебе положена компенсация, вообще за все время – хоть за 5 лет, хоть за 25. Компенсация платится деньгами. Отказать в ней не имеют права. За каждый отработанный месяц положены 2.33 дня оплачиваемого отпуска.
И самое главное: отпуск – это не способ заработать на компенсациях, а реализация твоего права на отдых. С любимой работы нужно уметь уходить домой.
#rest@foundout
15.01.2024 – 28.01.2024.
Из этих 2 недель: 10 – рабочие дни, 4 – выходные.
Всего в январе 17 рабочих дней. Аркадий отработает только 7 из них.
За предыдущие 12 месяцев доход Аркадия составил:
3 600 000₽ (300 000₽ * 12).
Средний дневной заработок Аркадия:
10 238₽ (3 600 000₽ / 12 / 29.3).
29.3 – это в среднем дней в месяце.
ЗП Аркадия за январь составит:
123 530₽ (300 000₽ / 17 * 7).
Отпускные Аркадия за январь:
143 332₽ (10 238₽ * 14).
Совокупный доход за январь:
266 862₽ (123 530₽ + 143 332₽).
У Арсения будет 300 000₽.
15.07.2024 – 28.07.2024.
В июле целых 23 рабочих дня, из которых Арсений отработает 13.
Доход за год, средний дневной заработок и размер отпускных будет таким же как у Аркадия.
ЗП Арсения за июль составит:
169 565₽ (300 000₽ / 23 * 13).
Совокупный доход за июль:
312 897₽ (169 565₽ + 143 332₽).
У Аркадия будет 300 000₽.
Таким образом наши джентльмены сходили в одинаковый по продолжительности отпуск, но с разницей в 46k деревянных. Этот пример показывает, что иногда можно обнаружить на балансе приятную неожиданность, если плохо спланировать отпуск или будущие расходы. Есть много критериев определения точки безубыточности, если хочется упороться – заходи в калькулятор отпускных. Там можно указать предыдущие отпуска, больничные, командировки и простои.
Про что не забыть когда увольняешься?
Перерабатывать зарплату в выполненную работу надоело, решаешь сойти на берег. Не всегда получается отгулять все дни отпусков, они накапливаются несгораемой суммой. За них тебе положена компенсация, вообще за все время – хоть за 5 лет, хоть за 25. Компенсация платится деньгами. Отказать в ней не имеют права. За каждый отработанный месяц положены 2.33 дня оплачиваемого отпуска.
И самое главное: отпуск – это не способ заработать на компенсациях, а реализация твоего права на отдых. С любимой работы нужно уметь уходить домой.
#rest@foundout
Please open Telegram to view this post
VIEW IN TELEGRAM
Новый год на солнечном острове Пхукет 🎆
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
Технический скрининг
Как-то раз, когда я был джун и глуп и не видал больших цифр в офферах, звонит мне рекрутер и спрашивает:
– Михаил, можем ли мы извне получить доступ к приватной переменной класса?
– Конечно можем!
– Эмм… нет не можем.
– Можем через рефлексию!
– Кажется, нам пора закругляться, до свидания!
Пальцем щелк и деньги в банк
Зачем нужен скрининг?
Техсобес – событие энергозатратное. Чтобы каждый залетный птиц с наскока туда не проскочил бизнес придумал фильтровать таких смелых и умелых еще на дальних подступах. Время и ресурсы сокращаются, флоу найма улучшается. Чтобы добраться до технической секции и показать, что мурку могешь, нужно сначала созвониться с эйчаром, послушать рассказ о компании/вакансии, позадавать свои вопросы. И иногда пройти технический скрининг – первичную проверку на харды в сжатом тайминге.
Какие вопросы задают?
Не суть важно, если уже подготовился к техсобесу. Будут вопросы базового уровня сложности, на которые есть очевидные и быстрые правильные ответы. Ответы должны показать подходишь ли ты на открытую позицию или нет. Совсем неготовые дисквалифицируются из воронки найма, остальные двигаются дальше.
Примеры:
🐗 Модификаторы доступа в котлине
🐗 Типы исключений в котлине
🐗 Parcelable vs Serializable
🐗 Hot Flow vs Cold Flow
🐗 FlatMap vs ConcatMap
Как правильно действовать?
Перейти с автомата на ручной режим. Выключить синдром отличника. Помнить что у тебя и рекрутера одна цель – пристроить тебя на рабочее место. Не теряться если попался незнакомый вопрос. Профессионально и дружелюбно объяснять сложные концепции простыми словами. В слишком объемных ответах нет смысла, не развивать тему и не офтопить. Если совсем все плохо – записать вопросы, узнать ответы и идти на следующий собес.
Как-то раз, когда я был джун и глуп и не видал больших цифр в офферах, звонит мне рекрутер и спрашивает:
– Михаил, можем ли мы извне получить доступ к приватной переменной класса?
– Конечно можем!
– Эмм… нет не можем.
– Можем через рефлексию!
– Кажется, нам пора закругляться, до свидания!
class Bank {
private val money = "$300"
}
fun main() = runBlocking {
val money = Bank::class
.memberProperties
.first { it.name == "money" }
.apply { isAccessible = true }
.get(Bank()) as String
println(money)
}
Пальцем щелк и деньги в банк
Зачем нужен скрининг?
Техсобес – событие энергозатратное. Чтобы каждый залетный птиц с наскока туда не проскочил бизнес придумал фильтровать таких смелых и умелых еще на дальних подступах. Время и ресурсы сокращаются, флоу найма улучшается. Чтобы добраться до технической секции и показать, что мурку могешь, нужно сначала созвониться с эйчаром, послушать рассказ о компании/вакансии, позадавать свои вопросы. И иногда пройти технический скрининг – первичную проверку на харды в сжатом тайминге.
Какие вопросы задают?
Не суть важно, если уже подготовился к техсобесу. Будут вопросы базового уровня сложности, на которые есть очевидные и быстрые правильные ответы. Ответы должны показать подходишь ли ты на открытую позицию или нет. Совсем неготовые дисквалифицируются из воронки найма, остальные двигаются дальше.
Примеры:
Как правильно действовать?
Перейти с автомата на ручной режим. Выключить синдром отличника. Помнить что у тебя и рекрутера одна цель – пристроить тебя на рабочее место. Не теряться если попался незнакомый вопрос. Профессионально и дружелюбно объяснять сложные концепции простыми словами. В слишком объемных ответах нет смысла, не развивать тему и не офтопить. Если совсем все плохо – записать вопросы, узнать ответы и идти на следующий собес.
Please open Telegram to view this post
VIEW IN TELEGRAM
Примеры open-source проектов
Нет лучшего способа преисполниться в андроид-разработке, чем покопаться в чужих исходниках. Всегда полезно посмотреть как пишут код взрослые дяди и утащить себе проверенные методики. Здесь не будет примеров, которые давно не обновлялись и соответственно не запустятся после клонирования.
🐗 github.com/android/nowinandroid
Полнофункциональное приложение от гугла. Создано с использованием Kotlin, Compose и Material3. Постоянно обновляется и представляет собой агрегатор новостей об андроид-разработке разложенных по топикам. Про организацию модулей в проекте рассказано здесь. Используется рекомендуемая архитектура с UDF, о ней подробнее здесь. Код покрыт unit и ui тестами, производительность мониторится с помощью бенчмарков.
🐗 github.com/android/sunflower
Еще одно приложение от корпорации добра. Справочник для садоводства. Иллюстрирует лучшие практики по переезду с Android View (Material2) на Jetpack Compose (Material3). О миграции рассказано здесь. Код полностью покрыт тестами, есть бенчмарки, показано как работать с ассетами и предварительно заполнять Room.
🐗 github.com/chrisbanes/tivi
Приложение для отслеживания сериалов от бывшего разработчика из гугла. В проект тащятся новейшие версии библиотек, сейчас в процессе переезда на KMP. Показано как управлять зависимостями с помощью buildSrc. Полностью на Kotlin, Compose, Coroutines, Room, Lifecycle, Navigation и Hilt.
🐗 github.com/RetroMusicPlayer/RetroMusicPlayer
Руководство как скрафтить музыкальный плеер в системе View с дизайном Materia3. Под капотом продвинутая стилизация, синхронизация текстов песен, анимации, виджеты, плейлисты, поддержка Chromecast и Android Auto.
🐗 github.com/libre-tube/LibreTube
Альтернативный клиент YouTube с кучей настроек. Никакого Compose - UI на activities и fragments.
🐗 github.com/JunkFood02/Seal
Стильный и простой в использовании аудио/видео загрузчик. Есть настройка палитры Material3 из приложения.
Нет лучшего способа преисполниться в андроид-разработке, чем покопаться в чужих исходниках. Всегда полезно посмотреть как пишут код взрослые дяди и утащить себе проверенные методики. Здесь не будет примеров, которые давно не обновлялись и соответственно не запустятся после клонирования.
Полнофункциональное приложение от гугла. Создано с использованием Kotlin, Compose и Material3. Постоянно обновляется и представляет собой агрегатор новостей об андроид-разработке разложенных по топикам. Про организацию модулей в проекте рассказано здесь. Используется рекомендуемая архитектура с UDF, о ней подробнее здесь. Код покрыт unit и ui тестами, производительность мониторится с помощью бенчмарков.
Еще одно приложение от корпорации добра. Справочник для садоводства. Иллюстрирует лучшие практики по переезду с Android View (Material2) на Jetpack Compose (Material3). О миграции рассказано здесь. Код полностью покрыт тестами, есть бенчмарки, показано как работать с ассетами и предварительно заполнять Room.
Приложение для отслеживания сериалов от бывшего разработчика из гугла. В проект тащятся новейшие версии библиотек, сейчас в процессе переезда на KMP. Показано как управлять зависимостями с помощью buildSrc. Полностью на Kotlin, Compose, Coroutines, Room, Lifecycle, Navigation и Hilt.
Руководство как скрафтить музыкальный плеер в системе View с дизайном Materia3. Под капотом продвинутая стилизация, синхронизация текстов песен, анимации, виджеты, плейлисты, поддержка Chromecast и Android Auto.
Альтернативный клиент YouTube с кучей настроек. Никакого Compose - UI на activities и fragments.
Стильный и простой в использовании аудио/видео загрузчик. Есть настройка палитры Material3 из приложения.
Please open Telegram to view this post
VIEW IN TELEGRAM
Неофициальный клиент рутрекера. Сделан по красоте – чистая архитектура, код разложен по core и feature модулям, реализации отделены от интерфейсов.
Продвинутый пикча-эдитор. Покажет, что можно и нельзя делать с изображениями.
Сэмплы от JetBrains для погружения в KMP. Есть, например, приложение для просмотра изображений и приложение для обмена сообщениями. Для UI используется Compose Multiplatform, показано как его встраивать в интерфейс SwiftUI. Работающие аппки для Android, iOS, Desktop и Web.
Вываливает список людей, которые сейчас в космосе. А также положение МКС. Демонстрация множества различных платформ, на которых работает Kotlin Multiplatform. Включает клиенты на SwiftUI (iOS, watchOS, macOS), Compose (Android + Tablets, Wear OS, Desktop, Wasm, iOS) и серверную часть на Ktor. Есть виджеты для iOS и Android. Проект специально сделан минималистичным, чтобы помочь тебе быстрее вкатиться в KMP.
Мультиплатформенное приложение для чтения RSS-лент. Внутри стандартно Kotlin Multiplatform, Coroutines, Compose Multiplatform, Ktor, SQLDelight, Decompose и Kotlin-inject. Нужны JDK 20 и канареечная студия для запуска.
Приложение для продуктивности и управления временем. Юзеры могут планировать задачи и получать отчеты об их выполнении. Мультиплатформа – есть реализации для Android/iOS/Desktop.
Мультиплатформенная версия приложения New York Times на Compose. Позволяет юзеру просматривать статьи. Для Android/Wear/iOS/Desktop/Web.
BeepBeep – платформа для доставки еды и заказа такси, призванная продемонстрировать возможности Kotlin. Включает мобильные приложение для пользователей, приложения для управления рестораном, приложения для водителей, для доставщиков – все это для iOS и Android на Compose Multiplatform. Есть приложение с дашбордами для Mac/Linux/Windows, приложение для поддержки. Есть несколько микросервисов на Kotlin с Ktor для поддержки всего этого. Можешь забацать свой Uber!
Не рекомендуется как ориентир. Но будет полезно посмотреть какой радикальной бывает разработка продукта, когда он претендует на звание лучшего в нише. Анимации, работа с памятью и с видео, минимум внешних зависимостей, все кастомное и самописное, создание ui из кода.
Please open Telegram to view this post
VIEW IN TELEGRAM
Потоптал берег Балтийского моря на косе, название которой не выговорю.
Морской ветер ебошит с такой силой, что уши закладывает. Ничего не слышно кроме шума волн, еще и песком по лицу хлещет. Ощущения прекрасные! Сразу забываешь о своих работах и заботах. Плюс поорать можно. Рекомендую.
Морской ветер ебошит с такой силой, что уши закладывает. Ничего не слышно кроме шума волн, еще и песком по лицу хлещет. Ощущения прекрасные! Сразу забываешь о своих работах и заботах. Плюс поорать можно. Рекомендую.