В нашем клубе есть джентельмен, который замутил стартап на генерации картинок с помощью AI
Зацените, что у него получается
Зацените, что у него получается
🔥3
Forwarded from Алексей Гладков
Чет там такие люди со радист. И возникла идея публичить то о чем говорят топы в мобильной разработке кружочками в телеге. Интересно?
Anonymous Poll
81%
Буду смотреть
19%
Не буду смотреть
Продолжаем серию статей про работу руководителя в IT
Сегодня поговорим про онбординг
Процесс, на самом деле, довольно очевидный и понятный поэтому мясного контента не будет, но будет ряд полезных фишечек как сделать онбординг приятным и более эффективным
Онбординг в IT
Сегодня поговорим про онбординг
Процесс, на самом деле, довольно очевидный и понятный поэтому мясного контента не будет, но будет ряд полезных фишечек как сделать онбординг приятным и более эффективным
Онбординг в IT
👍8
Кстати у всех же есть LinkedIn, почему мы до сих пор незаконнектились?
https://www.linkedin.com/in/ermolnik/
Добавлятесь, скидывайте в комменты свои аккаунты
https://www.linkedin.com/in/ermolnik/
Добавлятесь, скидывайте в комменты свои аккаунты
❤6🤮5🤔2😐1
Собрал для вас видосики, которые доступны в паблике, где я что-то рассказываю)
1. Интервью со мной
2. UDF с Jetpack Compose
3. Эффективная коммуникация и встречи 1-1
4. Архитектура Android приложений в растущих командах
5. Android UI Components
6. Многопоточность в Android
7. Базы данных в Android
8. Hackaton Android Academy
9. Подготовка к интервью, вопросы по платформе Android
10. Подготовка к интервью вопросы по языку
11. Interview about compose multiplatform
1. Интервью со мной
2. UDF с Jetpack Compose
3. Эффективная коммуникация и встречи 1-1
4. Архитектура Android приложений в растущих командах
5. Android UI Components
6. Многопоточность в Android
7. Базы данных в Android
8. Hackaton Android Academy
9. Подготовка к интервью, вопросы по платформе Android
10. Подготовка к интервью вопросы по языку
11. Interview about compose multiplatform
YouTube
Интервью с разработчиком: Сергей Ермолаев — Head of Mobile Development в Сбере
Поехали! 🚀
🔥 Подробнее о нашем курсе «iOS-разработчик» на нашем сайте:
https://swiftbook.org/
Присоединяйтесь к нам в соцсетях. Туториалы, статьи, анонсы мероприятий и последние новости из сферы мобильной разработки:
VK: https://vk.com/swiftbook
Facebook:…
🔥 Подробнее о нашем курсе «iOS-разработчик» на нашем сайте:
https://swiftbook.org/
Присоединяйтесь к нам в соцсетях. Туториалы, статьи, анонсы мероприятий и последние новости из сферы мобильной разработки:
VK: https://vk.com/swiftbook
Facebook:…
👍22🔥1
Хорошая статейка про эффективный менеджмент :)
Многие вещи на первый взгляд кажутся очевидным, но на практике являются контринтуитивными и новички часто ошибаются :)
https://habr.com/ru/articles/761736/
Многие вещи на первый взгляд кажутся очевидным, но на практике являются контринтуитивными и новички часто ошибаются :)
https://habr.com/ru/articles/761736/
Хабр
От «эффективного менеджмента персонала» к бережливому управлению людьми. Часть 1: разбираем ошибки
Каждый из нас сталкивался с тем, что такое "эффективный менеджер": кто в гонке за сиюминутной и порой даже мнимой выгодой для компании принимает решения, которые приводят к потерям. Возможно, вы даже...
❤5👍1
Все вы знаете, что я не очень в решении алгоритмов и самому мне ни разу не удавалось заставить себя их решать. Мои друзья из авито решили создать канал, где они разбирают этот тип задач и это отличная возможность прокачаться и уже наконец пройти собес в компанию твоей мечты :)
👍6
Forwarded from Algorithmics: хакаем алгоритмические собесы (Denis Kolpakov)
Валидация скобочной последовательности (3 вида скобок)
Нельзя обойти стороной одну из самых мейнстримных задач на собеседованиях — валидация скобочной последовательности. Тот читатель, кто время от времени ходит по собесдованиям и имеет десяток-два продйенных алгоритмических секции, почти со стопроцентной вероятностью сталкивался с ней. Она настолько популярна, что давно перешла из разряда средне-сложных в разряд легких и, скорее всего, в известных компаниях, практикующих эту секцию, если и попадется вам, то в самом начале собеседования, как «разминочная».
Но, все же, разобрать ее просто необходимо. Эта задача имеет каноническое оптимальное решение через стек, которое от вас будет ждать любой интервьер (хотя, безусловно, это не единственно возможный подход).
Сложность: 🟢 Легкая
ℹ️ Описание
Дана строка, состоящий только из скобок «(», «)», «{», «}», «[» и «]». Напишите функцию, определяющую, является ли строка правильной скобочной последовательностью.
⚠️ Ограничения
🔹Длина строки от 1 до 10000 символов
🔹Строка состоит только из символов «(», «)», «{», «}», «[» и «]».
1️⃣ Пример
Входящие данные: "()"
Ответ: true
Объяснение: все открывающие скобки имеют соотвествующую закрывающую скобку, открывающие и закрывающие скобки расположены в правильном порядке, в строке нет закрывающих скобок без предварительно открывающей пары.
2️⃣ Пример
Входящие данные: "()[]{}"
Ответ: true
Объяснение: все открывающие скобки имеют соотвествующую закрывающую скобку, открывающие и закрывающие скобки расположены в правильном порядке, в строке нет закрывающих скобок без предварительно открывающей пары.
3️⃣ Пример
Входящие данные: "(]"
Ответ: false
Объяснение: открывающая и закрывающая скобки относятся к разным типам скобок
✅ Решение
Для решения задачи мы воспользуемся структурой данных стек (можно реализовать через обычный массив). Будем идти по строчке посимвольно.
🔘 Если символ — одна из открывающих скобок, кладем ее в стек.
🔘 Если символ — одна из закрывающих скобок, пытаемся извлечь верхний элемент из стека:
⏺ если в стеке нет эементов, значит последовательность невалидна и мы столкнулись с закрывающей скобкой для которой нет открывающей;
⏺ если верхний элемент — это открывающая скобка другого типа, значит последовательность невалидна и мы столкнулись с кейсом неверной пары (например "(]");
⏺ если верхний элемент — это открывающая скобка нужного типа, то просто идем дальше.
🔘 Если после итерации по всем симолам строки в стеке остались какие-либо элементы, значит последовательность невалидна (есть открывающие скобки, для которых нет открывающей пары). В противном случае — последовательность валидна.
Решение на GO
Решение на TypeScript
🅾️ Оценка сложности
По времени
Чтобы провалидировать строку, нам достаточно один раз проитерироваться по всем символам, то есть сложность равна O(n),
где n — длина строки.
По памяти
Нам понадобится промежуточный стек, в который в худшем случае мы поместим все символы строки (например, для строки "((((("). То есть сложность по памяти также равна O(n), где n — длина строки.
#strings #stack #easy
Нельзя обойти стороной одну из самых мейнстримных задач на собеседованиях — валидация скобочной последовательности. Тот читатель, кто время от времени ходит по собесдованиям и имеет десяток-два продйенных алгоритмических секции, почти со стопроцентной вероятностью сталкивался с ней. Она настолько популярна, что давно перешла из разряда средне-сложных в разряд легких и, скорее всего, в известных компаниях, практикующих эту секцию, если и попадется вам, то в самом начале собеседования, как «разминочная».
Но, все же, разобрать ее просто необходимо. Эта задача имеет каноническое оптимальное решение через стек, которое от вас будет ждать любой интервьер (хотя, безусловно, это не единственно возможный подход).
Сложность: 🟢 Легкая
ℹ️ Описание
Дана строка, состоящий только из скобок «(», «)», «{», «}», «[» и «]». Напишите функцию, определяющую, является ли строка правильной скобочной последовательностью.
⚠️ Ограничения
🔹Длина строки от 1 до 10000 символов
🔹Строка состоит только из символов «(», «)», «{», «}», «[» и «]».
1️⃣ Пример
Входящие данные: "()"
Ответ: true
Объяснение: все открывающие скобки имеют соотвествующую закрывающую скобку, открывающие и закрывающие скобки расположены в правильном порядке, в строке нет закрывающих скобок без предварительно открывающей пары.
2️⃣ Пример
Входящие данные: "()[]{}"
Ответ: true
Объяснение: все открывающие скобки имеют соотвествующую закрывающую скобку, открывающие и закрывающие скобки расположены в правильном порядке, в строке нет закрывающих скобок без предварительно открывающей пары.
3️⃣ Пример
Входящие данные: "(]"
Ответ: false
Объяснение: открывающая и закрывающая скобки относятся к разным типам скобок
✅ Решение
Для решения задачи мы воспользуемся структурой данных стек (можно реализовать через обычный массив). Будем идти по строчке посимвольно.
🔘 Если символ — одна из открывающих скобок, кладем ее в стек.
🔘 Если символ — одна из закрывающих скобок, пытаемся извлечь верхний элемент из стека:
⏺ если в стеке нет эементов, значит последовательность невалидна и мы столкнулись с закрывающей скобкой для которой нет открывающей;
⏺ если верхний элемент — это открывающая скобка другого типа, значит последовательность невалидна и мы столкнулись с кейсом неверной пары (например "(]");
⏺ если верхний элемент — это открывающая скобка нужного типа, то просто идем дальше.
🔘 Если после итерации по всем симолам строки в стеке остались какие-либо элементы, значит последовательность невалидна (есть открывающие скобки, для которых нет открывающей пары). В противном случае — последовательность валидна.
Решение на GO
Решение на TypeScript
🅾️ Оценка сложности
По времени
Чтобы провалидировать строку, нам достаточно один раз проитерироваться по всем символам, то есть сложность равна O(n),
где n — длина строки.
По памяти
Нам понадобится промежуточный стек, в который в худшем случае мы поместим все символы строки (например, для строки "((((("). То есть сложность по памяти также равна O(n), где n — длина строки.
#strings #stack #easy
👍7
Лично мое мнение — кроссплатформа все еще хорошее решение только для проверки гипотез
На средних и больших проектах (500к+ строк исходного кода) издержки на поддержание всего этого в рабочем состоянии больше чем издержки на написание кода на 2 платформы
На средних и больших проектах (500к+ строк исходного кода) издержки на поддержание всего этого в рабочем состоянии больше чем издержки на написание кода на 2 платформы
👍9
Forwarded from iOS Makes Me Hate (Lev Bondarenko)
ну я тоже выскажусь по кроссплатформам:
1. У них если и будет успех, то в очень узких кейсах. Максимум 10% кода в проекте.
2. Как не странно до сих пор сложно доказать продуктовую ценность. Ну вот вы потыкали КММ, РН, флаттер и что? А как доказать, что фичу быстрее сделали или поддержали? Сам не раз слышал требования от бизнеса про четкие метрики, но так и не нашел даже в интернетах.
3. Кроссплатформа очень хрупкая на совместимости с версиями операционных систем, языков, сред разработки. До сих пор никто не подсчитал сколько уходит времени на очередные адаптации к версиям.
Мой вердикт, кроссплатформа это и хорошо, но только в очень узких кейсах с жииииирной бизнес-логикой
1. У них если и будет успех, то в очень узких кейсах. Максимум 10% кода в проекте.
2. Как не странно до сих пор сложно доказать продуктовую ценность. Ну вот вы потыкали КММ, РН, флаттер и что? А как доказать, что фичу быстрее сделали или поддержали? Сам не раз слышал требования от бизнеса про четкие метрики, но так и не нашел даже в интернетах.
3. Кроссплатформа очень хрупкая на совместимости с версиями операционных систем, языков, сред разработки. До сих пор никто не подсчитал сколько уходит времени на очередные адаптации к версиям.
Мой вердикт, кроссплатформа это и хорошо, но только в очень узких кейсах с жииииирной бизнес-логикой
👍4😁1
Всем привет, мне снова было скучно и я написал бота в телеге с игрой по типу Contexto
Цель игры -- программа загадывает слово, пользователь пытается угадать, программа говорит на сколько это слово близко к загадонному
Ссылка на чат, где можно попробовать поиграть -- @ermolnikWords
Ссылка на бота, которого можно добавить в свою группу и играть с друзьями -- @ermolnikWordsBot
Как играть?
Для запуска бота нужно ввести команду /start
Для того чтобы ввести слово, нужно через / его написать. Например /привет
Для того чтобы посмотреть список лидеров /leaderboard
Присоединяйтесь к группе бетта-тестеров 🌚
Цель игры -- программа загадывает слово, пользователь пытается угадать, программа говорит на сколько это слово близко к загадонному
Ссылка на чат, где можно попробовать поиграть -- @ermolnikWords
Ссылка на бота, которого можно добавить в свою группу и играть с друзьями -- @ermolnikWordsBot
Как играть?
Для запуска бота нужно ввести команду /start
Для того чтобы ввести слово, нужно через / его написать. Например /привет
Для того чтобы посмотреть список лидеров /leaderboard
Присоединяйтесь к группе бетта-тестеров 🌚
👍6
ermolnik — GDE, Digital Nomad, mobile team lead
Всем привет, мне снова было скучно и я написал бота в телеге с игрой по типу Contexto Цель игры -- программа загадывает слово, пользователь пытается угадать, программа говорит на сколько это слово близко к загадонному Ссылка на чат, где можно попробовать…
Наконец разобрался как все это упаковать в докер и развернуть на vds
Вроде все работает, теперь должно быть 24/7)
Вроде все работает, теперь должно быть 24/7)
👍3
Чувак из клуба 700 в телевизоре