Так, ребятки. Мы тут вздумали провести вебинар на тему Как управлять техдолгом. Поделимся собственным опытом выплаты технической ипотеки и расскажем как устраивать диверсии на проекте будучи рядовым гребцом и не обладая необходимыми полномочиями. Ждем всех желающих и нежелающих в эту субботу 4 марта в 11 часов по московскому времени.
Записываться тут -> https://howto.stringconcat.com/technical_debt
Напишите в комментарии что бы вам хотелось услышать, а мы постараемся ответить на вебинаре
Записываться тут -> https://howto.stringconcat.com/technical_debt
Напишите в комментарии что бы вам хотелось услышать, а мы постараемся ответить на вебинаре
🔥10👍4⚡2💩1
Quick Tip: Как сделать так, чтобы менеджер сам брал тех. долг в итерацию https://www.youtube.com/watch?v=XHWTHeIDDr0
YouTube
Как заставить менеджера брать тех. долг в итерацию
Вебинар по управлению тех. долгу 4 марта в 11 Утра. Запись здесь: https://howto.stringconcat.ru/technical_debt?utm_source=youtube&utm_medium=cpc&utm_campaign=tech_debt&utm_content=1
🆒4
https://www.youtube.com/live/LsE-DRP4sKI? го, мы создали!
YouTube
Как управлять техническим долгом
StringСoncat школа: https://howto.stringconcat.com/
Tg канал: https://news.1rj.ru/str/stringconcat
Что такое технический долг и всегда ли он плох.
Какие виды технического долга бывают.
Как продать тех. долг менеджеру
Как вовлечь команду в фикс тех. долга.
Как предотвратить…
Tg канал: https://news.1rj.ru/str/stringconcat
Что такое технический долг и всегда ли он плох.
Какие виды технического долга бывают.
Как продать тех. долг менеджеру
Как вовлечь команду в фикс тех. долга.
Как предотвратить…
🔥9🎉2
Практический курс
Разработка Enterprise-приложений без боли и сожалений
На конференциях все рассказывают об успехах и высоких нагрузках. Но в реальности архитектура не предусматривает изменений, требования меняются каждый спринт, а разработчики тушат пожары по аджайлу. Продукт превращается в рыхлую кучу легаси, которое невозможно поддерживать и нельзя переписать, а каждый релиз добавляет седых волос.
- Наш курс поможет вам это исправить!
Пример лекции: youtube.com/watch?v=JDO81HrTGpg
Курс не учит очередной хайповой технологии, а раскрывает универсальные принципы и современные подходы лидеров отрасли: как заложить крепкий фундамент проекта, выстроить эффективные процессы и выжить в постоянно меняющихся условиях.
Мы отвечаем на три фундаментальных вопроса:
1. Как разработать продукт, за который не стыдно?
2. Как поддерживать и развивать проект, не жертвуя сном и здоровьем?
3. Как перестать выгорать и начать жить?
Начать бесплатно: howto.stringconcat.com/enterprise?utm_source=telegram&utm_medium=cpc&utm_campaign=km&utm_content=zakrep
Разработка Enterprise-приложений без боли и сожалений
На конференциях все рассказывают об успехах и высоких нагрузках. Но в реальности архитектура не предусматривает изменений, требования меняются каждый спринт, а разработчики тушат пожары по аджайлу. Продукт превращается в рыхлую кучу легаси, которое невозможно поддерживать и нельзя переписать, а каждый релиз добавляет седых волос.
- Наш курс поможет вам это исправить!
Пример лекции: youtube.com/watch?v=JDO81HrTGpg
Курс не учит очередной хайповой технологии, а раскрывает универсальные принципы и современные подходы лидеров отрасли: как заложить крепкий фундамент проекта, выстроить эффективные процессы и выжить в постоянно меняющихся условиях.
Мы отвечаем на три фундаментальных вопроса:
1. Как разработать продукт, за который не стыдно?
2. Как поддерживать и развивать проект, не жертвуя сном и здоровьем?
3. Как перестать выгорать и начать жить?
Начать бесплатно: howto.stringconcat.com/enterprise?utm_source=telegram&utm_medium=cpc&utm_campaign=km&utm_content=zakrep
YouTube
Слоеная архитектура, пример лекции
Авторский курс для опытных разработчиков и тех кто считает себя причастным к архитектуре Enterprise-приложений на Java и Kotlin без боли и сожалений.
https://howto.stringconcat.ru/
Что такое слоеная архитектура, зачем нужна, какие плюсы и минусы
0:00 Что…
https://howto.stringconcat.ru/
Что такое слоеная архитектура, зачем нужна, какие плюсы и минусы
0:00 Что…
👍4
StringConcat - разработка без боли и сожалений pinned «Практический курс Разработка Enterprise-приложений без боли и сожалений На конференциях все рассказывают об успехах и высоких нагрузках. Но в реальности архитектура не предусматривает изменений, требования меняются каждый спринт, а разработчики тушат пожары…»
Открываем номинаицию самый waterfall’ный проект года!
Мы только-только планируем как реализовывать проект для клиента длиной в год, в котором будет задействовано около 30 разработчиков.
Клиент заверяет что он самый agile’ный и самый гибкий. Но, конечно же просит предоставить оценку в часах на год вперед. Но кого этим уже удивишь? 😅
Но он смог! Перед релизом нужно пройти сканирование кода на уязвимости. И клиент просит сказать сколько строк кода нужно будет сканировать в конце проекта.
То есть он спрашивает “а сколько строк кода будет в проекте через год”.
Пишим ответ, помножая количество кода, производимого программистом за день на 30*247. Обсуждаем есть ли метрики, указывающие а сколько линий кода программист обычно удаляет. Стоит ли ставить KPI на количество срок в день? А отчитываться на утренних стендах сколько ты вчера накодил и сколько планируешь накодить сегодня. Надеемся клиент оценит юмор :)
Как вам такой кандидат на звание самого ватерфольного?
Буду рад почитать в комментариях подобные примеры с вашей работы!
Мы только-только планируем как реализовывать проект для клиента длиной в год, в котором будет задействовано около 30 разработчиков.
Клиент заверяет что он самый agile’ный и самый гибкий. Но, конечно же просит предоставить оценку в часах на год вперед. Но кого этим уже удивишь? 😅
Но он смог! Перед релизом нужно пройти сканирование кода на уязвимости. И клиент просит сказать сколько строк кода нужно будет сканировать в конце проекта.
То есть он спрашивает “а сколько строк кода будет в проекте через год”.
Пишим ответ, помножая количество кода, производимого программистом за день на 30*247. Обсуждаем есть ли метрики, указывающие а сколько линий кода программист обычно удаляет. Стоит ли ставить KPI на количество срок в день? А отчитываться на утренних стендах сколько ты вчера накодил и сколько планируешь накодить сегодня. Надеемся клиент оценит юмор :)
Как вам такой кандидат на звание самого ватерфольного?
Буду рад почитать в комментариях подобные примеры с вашей работы!
😁11🤡8🔥5👍3😱1
Парочку интересных статей с vc о том что такое GPT и как оно устроено. Для тех, кто ничего в этом не понимает (вроде нас) показалось интересными. Никогда бы не подумали, что Т9 — это далекий предок GPT. Во дела…
Начало
Продолжение
Забирайте в закладки!
Начало
Продолжение
Забирайте в закладки!
vc.ru
Как работает ChatGPT: объясняем на простом русском эволюцию языковых моделей начиная от T9 — ChatGPT на vc.ru
В последнее время нам почти каждый день рассказывают в новостях, как языковые нейросетки уже вот-вот совершенно точно оставят лично вас без работы. При этом мало кто понимает – а как вообще нейросети вроде ChatGPT работают внутри? Так вот, устраивайтесь поудобнее:…
❤10
Не успели мы с вами закончить переживать про то что ChatGPT отнимет наше любимое формошлепство, как новая напасть.
Все мы используем шифрование с открытым ключом: вот эти ваши HTTPS, секретные чатики в телеграмме и дикпик-фотки в iCloud.
Многие знают, что квантовый компьютер будет способен это все расшифровать за вменяемое время.
Вот здесь Веретасиум подробно разбирает:
⁃ Как работает квантовый компьютер
⁃ Как он будет помогать расшифровывать сообщения, закодированные открытым ключом
⁃ Почему это угрожает данным, которые мы передаем уже сегодня
⁃ И наконец, каким будет будущее криптографии, когда квантовые компьютеры станут реальностью.
Спойлер.Мы все не умрем, и уже сейчас ведутся работы над шифрами, которые будет взломать квантовому компьютеру так же сложно как и обычному. Но сегодняшнюю переписку взломать будет все так же просто 🙂
Приятного просмотра под кофеек!
https://www.youtube.com/watch?v=f5slLeCz7p8
Все мы используем шифрование с открытым ключом: вот эти ваши HTTPS, секретные чатики в телеграмме и дикпик-фотки в iCloud.
Многие знают, что квантовый компьютер будет способен это все расшифровать за вменяемое время.
Вот здесь Веретасиум подробно разбирает:
⁃ Как работает квантовый компьютер
⁃ Как он будет помогать расшифровывать сообщения, закодированные открытым ключом
⁃ Почему это угрожает данным, которые мы передаем уже сегодня
⁃ И наконец, каким будет будущее криптографии, когда квантовые компьютеры станут реальностью.
Спойлер.
https://www.youtube.com/watch?v=f5slLeCz7p8
YouTube
Квантовые компьютеры УЖЕ ломают интернет [Veritasium]
Поддержать проект можно по ссылкам:
Если вы в России: https://boosty.to/vertdider
Если вы не в России: https://www.patreon.com/VertDider
Специалисты считают, что уже в пределах пятнадцати лет для квантового компьютера не составит труда расшифровать наши…
Если вы в России: https://boosty.to/vertdider
Если вы не в России: https://www.patreon.com/VertDider
Специалисты считают, что уже в пределах пятнадцати лет для квантового компьютера не составит труда расшифровать наши…
👍5❤3🔥2
С удивлением обнаружил что многие команды до сих пор оценивают задачи в часах. А потом в эти оценки не вписываются, перерабатывают и выгорают. Виной тому тот факт что 1 идеальный час != одному реальному.
Пришлось записать видео с изложением своей позиции. https://youtu.be/uLp-Ht_cRk8
А вы когда-нибудь попадали в оценку, используя часы?
Пришлось записать видео с изложением своей позиции. https://youtu.be/uLp-Ht_cRk8
А вы когда-нибудь попадали в оценку, используя часы?
YouTube
Никогда не оценивай проект в часах. Story Points лучше
Никогда нельзя оценивать проект в часах. Это ведет к переработкам, выгоранию и говнокоду. Story Points лучше!
Подписывайся на
📧 Телеграмм-канал: https://news.1rj.ru/str/stringconcat
☝ Поваренная книга дядюшки боба: Как готовить Clean Architecture:
🎓 Курс : https…
Подписывайся на
📧 Телеграмм-канал: https://news.1rj.ru/str/stringconcat
☝ Поваренная книга дядюшки боба: Как готовить Clean Architecture:
🎓 Курс : https…
❤8👍4
Как можно раздуть стоимость проекта на 1.5 пользователя? Об AWS, девопсе, контейнерах и микросервисах
Помню когда только начиналась эра devops и докеров, то контейнеризация преподносилась как тулза, которая, среди прочего, экономит ресурсы. Вот, мол, есть у вас машина, то есть пул ресурсов, а контейнеры его между собой поделят.
Потом пришел Kubernetis, и эта идея стала мегапопулярной. Я думаю многие из вас набирали EC2 инстансы и разворачивали на них кластеры. Очень удобно. К примеру, набрал три EC2 инстанса по 16ГБ и 4CPU, и твои 10 микросервисав кубернетис по ним раскатал равномерно. И отказоустойчивость вам, и доступность, и еще и экономия ресурсов за счет шаринга.
Потом AWS сказал, а зачем вам вообще парится с этими EC2 инстансами, которые являются виртуальный машиной по-сути. Мы вам дадим Fargate. Вы нам просто говорите сколько каждому контейнеру(ок, ПОДу) нужно. А дальше мы уж сами разместим их как нужно. Казалось бы, действительно хорошо. У нас на один уровень инфраструктуры стало меньше. Разработчики рады, девопсы пьют пиво. Но заметили ли вы, что мы уже ушли от идеи шаринга ресурсов? Теперь мы каждому контейнеру(хорошо, хорошо ПОДу) выделяем фиксированные ресурсы. И если у вас контейнер потребляет по пол ложки CPU в час, AWS не забудет билить вас за весь CPU.
И вот, изначальная, очень хорошая идея экономии куда-то испарилась.
Теперь вспомним как начинается любой проект: Tech lead становится к доске и рисует микросервисы будущего проекта. Надо по-больше, чтобы в резюме хорошо смотрелось. Да и заказчик, зачастую приходит с запросом навалить ему микросервисов по-больше, ибо модно. И еще не забыть про отказоустойчивость и доступность.
И в итоге, приложение, которым будет пользоваться 35 человек 8ч часов будет крутиться на AWS за 10К USD в месяц.
Это реальный кейс. 35 пользователей и 10k USD в месяц. И никого это не смущает.
Вот и ролик в тему вам под кофеек: https://www.youtube.com/watch?v=nqa_Uyz1pBE
Помню когда только начиналась эра devops и докеров, то контейнеризация преподносилась как тулза, которая, среди прочего, экономит ресурсы. Вот, мол, есть у вас машина, то есть пул ресурсов, а контейнеры его между собой поделят.
Потом пришел Kubernetis, и эта идея стала мегапопулярной. Я думаю многие из вас набирали EC2 инстансы и разворачивали на них кластеры. Очень удобно. К примеру, набрал три EC2 инстанса по 16ГБ и 4CPU, и твои 10 микросервисав кубернетис по ним раскатал равномерно. И отказоустойчивость вам, и доступность, и еще и экономия ресурсов за счет шаринга.
Потом AWS сказал, а зачем вам вообще парится с этими EC2 инстансами, которые являются виртуальный машиной по-сути. Мы вам дадим Fargate. Вы нам просто говорите сколько каждому контейнеру(ок, ПОДу) нужно. А дальше мы уж сами разместим их как нужно. Казалось бы, действительно хорошо. У нас на один уровень инфраструктуры стало меньше. Разработчики рады, девопсы пьют пиво. Но заметили ли вы, что мы уже ушли от идеи шаринга ресурсов? Теперь мы каждому контейнеру(хорошо, хорошо ПОДу) выделяем фиксированные ресурсы. И если у вас контейнер потребляет по пол ложки CPU в час, AWS не забудет билить вас за весь CPU.
И вот, изначальная, очень хорошая идея экономии куда-то испарилась.
Теперь вспомним как начинается любой проект: Tech lead становится к доске и рисует микросервисы будущего проекта. Надо по-больше, чтобы в резюме хорошо смотрелось. Да и заказчик, зачастую приходит с запросом навалить ему микросервисов по-больше, ибо модно. И еще не забыть про отказоустойчивость и доступность.
И в итоге, приложение, которым будет пользоваться 35 человек 8ч часов будет крутиться на AWS за 10К USD в месяц.
Это реальный кейс. 35 пользователей и 10k USD в месяц. И никого это не смущает.
Вот и ролик в тему вам под кофеек: https://www.youtube.com/watch?v=nqa_Uyz1pBE
YouTube
Interview with a Boomer CTO
Interview with a Boomer CTO in 2023
Interview with a Boomer CTO in 2023 with Azuros Cloudapi - aired on © The CTO.
Programmer humor
SDLC humor
Requirements engineering
Systems Requirements
User acceptance testing
Cloud services
Programming jokes
tech humor…
Interview with a Boomer CTO in 2023 with Azuros Cloudapi - aired on © The CTO.
Programmer humor
SDLC humor
Requirements engineering
Systems Requirements
User acceptance testing
Cloud services
Programming jokes
tech humor…
😁10💩3😢2🐳2👍1
Я считаю что layered architecture — худшее что может случиться с проектом.
Появляется спонтанно, не несет никакой упорядоченности, и в конечно итоге скатывается в big ball of mud. Всегда.
Не сдержался, записался видео на тему https://youtu.be/lvUK92gYrn8
С радостью обсужу в комментариях 😉
Появляется спонтанно, не несет никакой упорядоченности, и в конечно итоге скатывается в big ball of mud. Всегда.
Не сдержался, записался видео на тему https://youtu.be/lvUK92gYrn8
С радостью обсужу в комментариях 😉
YouTube
Layered Architecture похоронит твой проект. 3 Недостатка
☝ Поваренная книга дядюшки боба: Как готовить Clean Architecture:
🎓 Курс : https://howto.stringconcat.ru/cleanarchitecture?utm_source=youtube&utm_content=3_fatal_faults_of_LA
🎓 Разработка Приложений без Боли и Сожалений:
https://howto.stringconcat.ru/…
🎓 Курс : https://howto.stringconcat.ru/cleanarchitecture?utm_source=youtube&utm_content=3_fatal_faults_of_LA
🎓 Разработка Приложений без Боли и Сожалений:
https://howto.stringconcat.ru/…
👍15
Разобрали проблемы Layered Architecture, теперь поговорим о чем-то позитивном. Например о Clean Architecture и как она решает проблемы, созданые Layered Architecture https://www.youtube.com/watch?v=A37crsbFYeo
YouTube
Clean Architecture. Простое объяснение за 10 минут
☝ Поваренная книга дядюшки боба: Как готовить Clean Architecture:
🎓 Курс : https://howto.stringconcat.ru/cleanarchitecture?utm_source=youtube&utm_content=CA_Explained
🎓 Разработка Приложений без Боли и Сожалений:
https://howto.stringconcat.ru/enterpri…
🎓 Курс : https://howto.stringconcat.ru/cleanarchitecture?utm_source=youtube&utm_content=CA_Explained
🎓 Разработка Приложений без Боли и Сожалений:
https://howto.stringconcat.ru/enterpri…
🔥13👍3
Почему Hexagonal Architecture лучше Layered Architecture, почему с ней проекты реже превращаются в big ball of mud? Потому что она точнее описывает правила и оставляет меньше возможностей для различной интерпретации. Вот скажите разработчикам “используем Layered architecture” и один сделает зависимости из домена на слой доступа к данным, а другой наоборот. Один решит что можно и пропустить слой домена и вызвать из API сразу Repository, чтобы сохранить несколько тактов процессора. А другой решит что так нельзя. И каждый из них по-своему прав. Слоненка она такая…
👎3🔥3
Давайте попробуем составить нашу собственную статистику по использованию архитектур
Final Results
51%
Использую Clean Architecture\Hexagonal Architecture. Полет нормальный
5%
Использую Clean Architecture\Hexagonal Architecture. Проект првращается в Big Ball of Mud
17%
Использую Layered Architecture. Полет нормальный
39%
Использую Layered Architecture. Проект првращается в Big Ball of Mud
5%
Использую другую архитектуру. Напишу в комментарии какую
❤9
StringConcat - разработка без боли и сожалений
Давайте попробуем составить нашу собственную статистику по использованию архитектур
Остановили голосование, результаты должны быть видны всем (если нет, то напишите в комментах), теперь давайте разбираться. Выглядит так, будто слоеная действительно больше склонна к скатыванию в известно что.
Но самый интересный пункт — скатывание самой ЧА в ком грязи. Расскажите, пожалуйста, в комментариях, что конкретно произошло, желательно указав технологию, ибо некоторые технологии прямо таки провоцируют.
Очень интересно. А мы попытаемся разобраться в причинах.
Но самый интересный пункт — скатывание самой ЧА в ком грязи. Расскажите, пожалуйста, в комментариях, что конкретно произошло, желательно указав технологию, ибо некоторые технологии прямо таки провоцируют.
Очень интересно. А мы попытаемся разобраться в причинах.
Я решил подвести итоги по опросу:
70% Layered Architecture превращается в Big Ball of Mud
и только 9% Clean Architecture.
Поделился своими выводами вот здесь https://youtu.be/zl-wsU_Frd4
70% Layered Architecture превращается в Big Ball of Mud
и только 9% Clean Architecture.
Поделился своими выводами вот здесь https://youtu.be/zl-wsU_Frd4
🔥12😁1
Господа, продолжение цикла про Clean Architecture. На этот раз рассматриваем на примере. И без кода! https://youtu.be/W6jCUNb3yPg
YouTube
Clean Architecture на примере. Доступно и без кода
☝ Поваренная книга дядюшки боба: Как готовить Clean Architecture:
🎓 Курс : https://howto.stringconcat.ru/cleanarchitecture?utm_source=youtube&utm_medium=video&utm_campaign=CA
🎓 Разработка Приложений без Боли и Сожалений:
https://howto.stringconcat.ru/…
🎓 Курс : https://howto.stringconcat.ru/cleanarchitecture?utm_source=youtube&utm_medium=video&utm_campaign=CA
🎓 Разработка Приложений без Боли и Сожалений:
https://howto.stringconcat.ru/…
❤🔥14❤2
Реальная история как я ходил на собеседование.
Позвали меня в финтех-стартап местный в Сингапуре пособеседоваться на Principal Engineer. HR говорит все будет easy, приди, вы там с инженером поговорите по-душам о ваших любимых программистах штучках и все. Никакого верчения деревьев на время.
Прихожу:
- Привет
- Привет
- (и с порога) Что ты можешь сказать о коллекциях в Java?
Тут мне показалось что хорошего диалога не выйдет. Ну, оказалось что не казалось
- Ну говорю, чего там у нас Collection, который вроде как Iteratable, и Map в стороне сиротливо стоит. Ну и вот от коллекшена унаследованы, List, Set, Queue и что там еще
- а еще там Стек есть.
- Круто, да.
- Ну ок, а расскажи как HashSet работает
⁃ Я говорю черт его знает, надо будет — посмотрю исходники. Но название намекает на то что внутрях то используется HashMap. Вот ключ явно Хеш, а значение… хим, может сам объект, может Список а может еще что
⁃ Знаешь, а там вот дерево используется
⁃ Круто. Рад за них
⁃ Как реализована SyncronizedHashMap?
⁃ Ну говорю, в жизни не видел, так как она вроде устарела еще до моего рождения, но намекает что наверное ацессоры синхронизированы.
⁃ Мммм, ну там не сам аццессор синхронизирован, а бакет внутри мапы.
⁃ Круто, расскажи мне еще про бакеты 🙂
И вот так мы беседовали час. Ну думаю, либо я сейчас уйду и меня будут считать полным идиотом, или я все таки попробую перевернуть эту ситуацию. И говорю:
- То есть, у вас в проекте используется вся эта асинхронщина каждый день?
⁃ Нет, какой там.
⁃ Ну то есть планируете использовать в будущем
⁃ Ну может быть когда-нибудь, но до этого далеко
⁃ Хорошо, а какие у вас сейчас проблемы?
⁃ Ну у нас нет ни тестов, ни архитектуры. А как оно работает мы сами не до конца понимаем (я вот не шучу сейчас).
⁃ То есть мы с тобой потратили час времени на то, чтоб говорить о вещах, которые совершенно не релевантны проекту, но зато не поговорили действительно о том что вам нужно, и на что у меня даже есть бесплатный курс?
Молчание было мне ответом….
Мне очень хотелось сказать: Вот тут мое мнение, что нужно спрашивать на собеседованиях. Если не согласен — напиши комментарий. И лайкнуть не забудь.
Но меня же мама с папой учили что грубить людям нельзя, поэтому я, видимо остался без нового подписчика 🙂
Позвали меня в финтех-стартап местный в Сингапуре пособеседоваться на Principal Engineer. HR говорит все будет easy, приди, вы там с инженером поговорите по-душам о ваших любимых программистах штучках и все. Никакого верчения деревьев на время.
Прихожу:
- Привет
- Привет
- (и с порога) Что ты можешь сказать о коллекциях в Java?
Тут мне показалось что хорошего диалога не выйдет. Ну, оказалось что не казалось
- Ну говорю, чего там у нас Collection, который вроде как Iteratable, и Map в стороне сиротливо стоит. Ну и вот от коллекшена унаследованы, List, Set, Queue и что там еще
- а еще там Стек есть.
- Круто, да.
- Ну ок, а расскажи как HashSet работает
⁃ Я говорю черт его знает, надо будет — посмотрю исходники. Но название намекает на то что внутрях то используется HashMap. Вот ключ явно Хеш, а значение… хим, может сам объект, может Список а может еще что
⁃ Знаешь, а там вот дерево используется
⁃ Круто. Рад за них
⁃ Как реализована SyncronizedHashMap?
⁃ Ну говорю, в жизни не видел, так как она вроде устарела еще до моего рождения, но намекает что наверное ацессоры синхронизированы.
⁃ Мммм, ну там не сам аццессор синхронизирован, а бакет внутри мапы.
⁃ Круто, расскажи мне еще про бакеты 🙂
И вот так мы беседовали час. Ну думаю, либо я сейчас уйду и меня будут считать полным идиотом, или я все таки попробую перевернуть эту ситуацию. И говорю:
- То есть, у вас в проекте используется вся эта асинхронщина каждый день?
⁃ Нет, какой там.
⁃ Ну то есть планируете использовать в будущем
⁃ Ну может быть когда-нибудь, но до этого далеко
⁃ Хорошо, а какие у вас сейчас проблемы?
⁃ Ну у нас нет ни тестов, ни архитектуры. А как оно работает мы сами не до конца понимаем (я вот не шучу сейчас).
⁃ То есть мы с тобой потратили час времени на то, чтоб говорить о вещах, которые совершенно не релевантны проекту, но зато не поговорили действительно о том что вам нужно, и на что у меня даже есть бесплатный курс?
Молчание было мне ответом….
Мне очень хотелось сказать: Вот тут мое мнение, что нужно спрашивать на собеседованиях. Если не согласен — напиши комментарий. И лайкнуть не забудь.
Но меня же мама с папой учили что грубить людям нельзя, поэтому я, видимо остался без нового подписчика 🙂
YouTube
Никогда не собеседуй как Google!
☝ Как перестать выгорать и стать крутым архитектором или тимлидом? узнай так: Бесплатная пробная лекция из моего курса Разработка Enterprise-приложений на Java и Kotlin без боли и сожалений ждет тебя здесь
🎓 Курс: https://howto.stringconcat.ru/?utm_sour…
🎓 Курс: https://howto.stringconcat.ru/?utm_sour…
👍23😁8🔥5
Стоит ли спрашивать тонкости реализации всяких фреймворков и core языка на собеседованиях?
Final Results
28%
Конечно! Основы знать обязаны
64%
Нет. Для этого есть документация
8%
Напишу в коментариях что именно надо
На контрасте. Еще одно собеседование из моей жизни
Опять собеседуюсь на Principle Software Engineer (Lead Team Lead’ов) в один финансовый стартап.
Этап технического собеседования. И мне предлагают вот какую задачу:
Наше приложение принимает много транзакций о покупках пользователей от разных источников. Кто-то отсылает в режиме реального времени, кто-то засылает батчами до 10к транзакции за раз.
Мы уже сделали этот функционал, и хотели бы посмотреть как ты спроектируешь его.
Мы с ними интересно пообщались: я узнал у них реальные не функциональные требования, предложил решения их болей из моего опыта. И мы вместе нарисовали диаграмму to-be системы.
Очевидно что ребята знали как делать эту штуку лучше меня, они долго обсуждали как именно ее сделать и сделали. Но эта задача им позволила узнать
- насколько им комфортно со мной обсуждать задачу
- насколько глубоко я могу проработать проблему
- беру ли в расчет нефункциональные требования; и какие; и как они реализовывются “во плоти”
- как мы будем это все тестировать
- насколько удобно это будет разрабатывать на локали.
- А вот какой в конечном итоге получилось решения мне кажется их не сильно волновало. Но, кстати, получилось почти как у них.
Вот на мой взгляд это пример очень хорошего подхода к собеседованиям!
Не важно кого вы собеседуете: архитектура и программиста, будете вы кодить вместе или будете рисовать диаграммы:
Просто возьмите типичную и интересную задачу, которую вы реализовали и попросите кандидата ее реализовать. Обсуждайте ее так, как бы вы ее обсуждали с членом своей команды.
И вы узнаете как кандидат справляется с практическими задачами, а не с абстрактными кручениями деревьев в голове (если конечно кручение деревьев — не типичная задача в вашей компании). А так же как он организует свою работу: как относится к тестам, думает ли о том как будет проект деплоится, или его “работа” заканчивается написанием кода.
Кстати, как вам подход? Напишите в комментариях какие ваши любимые подходы к собеседованию и почему. Обсудим!
Опять собеседуюсь на Principle Software Engineer (Lead Team Lead’ов) в один финансовый стартап.
Этап технического собеседования. И мне предлагают вот какую задачу:
Наше приложение принимает много транзакций о покупках пользователей от разных источников. Кто-то отсылает в режиме реального времени, кто-то засылает батчами до 10к транзакции за раз.
Мы уже сделали этот функционал, и хотели бы посмотреть как ты спроектируешь его.
Мы с ними интересно пообщались: я узнал у них реальные не функциональные требования, предложил решения их болей из моего опыта. И мы вместе нарисовали диаграмму to-be системы.
Очевидно что ребята знали как делать эту штуку лучше меня, они долго обсуждали как именно ее сделать и сделали. Но эта задача им позволила узнать
- насколько им комфортно со мной обсуждать задачу
- насколько глубоко я могу проработать проблему
- беру ли в расчет нефункциональные требования; и какие; и как они реализовывются “во плоти”
- как мы будем это все тестировать
- насколько удобно это будет разрабатывать на локали.
- А вот какой в конечном итоге получилось решения мне кажется их не сильно волновало. Но, кстати, получилось почти как у них.
Вот на мой взгляд это пример очень хорошего подхода к собеседованиям!
Не важно кого вы собеседуете: архитектура и программиста, будете вы кодить вместе или будете рисовать диаграммы:
Просто возьмите типичную и интересную задачу, которую вы реализовали и попросите кандидата ее реализовать. Обсуждайте ее так, как бы вы ее обсуждали с членом своей команды.
И вы узнаете как кандидат справляется с практическими задачами, а не с абстрактными кручениями деревьев в голове (если конечно кручение деревьев — не типичная задача в вашей компании). А так же как он организует свою работу: как относится к тестам, думает ли о том как будет проект деплоится, или его “работа” заканчивается написанием кода.
Кстати, как вам подход? Напишите в комментариях какие ваши любимые подходы к собеседованию и почему. Обсудим!
❤🔥29👍25💯7🔥5🤔1
Амазон Prime Video сократил стоимость инфраструктуры на 90% перейдя с микросервисов на монолит.
Сразу оговорюсь, не весь Amazon Prime, а конкретное подразделение, следящие за качеством видеопотока на наших с вами ноутбуках, мобильниках, и где мы там еще смотрим видео.
Сейчас на пальцах объясню что произошло:
У них есть задача: нарезать стриминговое видео на кадры, а дальше скармливать эти кадры различным анализаторам дефектов:
- первый анализирует задержки видео потока,
- другой ищет рассинхронизацию видео и аудио
- третий ищет ошибки декодирования видео
- и т.д.
И они очень логично решили, что один сервис будет нарезать видео на кадры, складывать их в Amazon S3 (файлохранилище), а толпа других (анализаторы) будет из S3 читать скриншоты и искать дефекты.
Плюшки подхода:
- они могут масштабировать сервисы независимо друг от друга
- использовать amazon Lambda
- они легко могут добавлять новые анализаторы и старые ничего об этом не узнают.
И тут все очень логично. Я не могу их обвинить в злоупотреблении микросервисами. Ей богу, я бы сам так же сделал!
Но потом они уперлись в потолок бюджета и поняли, что у них уходит большая часть денег и времени
- на оркестрацию этой распределенной системы
- на обмен файлами между микросервисами через Amazon S3.
В итоге:
Они решили что обмен данными внутри процесса будет намного дешевле и слепили эти микросервисы в монолит, попутно выпилив S3, так как скриншот передается теперь просто в памяти.
А как же масштабирование? Они говорят что просто масштабируют один и тот же сервис, регулируя параметрами за что именно конкретный инстанс отвечает.
Вот так… 90% экономия на инфраструктуре. Впечатляет!
Расскажите в комментариях, что вы сами думаете о микросервисной архитектуре, приходилось ли вам видеть проект написанный на микросервсиах ради микросервисов?
Пруф: https://www.primevideotech.com/video-streaming/scaling-up-the-prime-video-audio-video-monitoring-service-and-reducing-costs-by-90
Сразу оговорюсь, не весь Amazon Prime, а конкретное подразделение, следящие за качеством видеопотока на наших с вами ноутбуках, мобильниках, и где мы там еще смотрим видео.
Сейчас на пальцах объясню что произошло:
У них есть задача: нарезать стриминговое видео на кадры, а дальше скармливать эти кадры различным анализаторам дефектов:
- первый анализирует задержки видео потока,
- другой ищет рассинхронизацию видео и аудио
- третий ищет ошибки декодирования видео
- и т.д.
И они очень логично решили, что один сервис будет нарезать видео на кадры, складывать их в Amazon S3 (файлохранилище), а толпа других (анализаторы) будет из S3 читать скриншоты и искать дефекты.
Плюшки подхода:
- они могут масштабировать сервисы независимо друг от друга
- использовать amazon Lambda
- они легко могут добавлять новые анализаторы и старые ничего об этом не узнают.
И тут все очень логично. Я не могу их обвинить в злоупотреблении микросервисами. Ей богу, я бы сам так же сделал!
Но потом они уперлись в потолок бюджета и поняли, что у них уходит большая часть денег и времени
- на оркестрацию этой распределенной системы
- на обмен файлами между микросервисами через Amazon S3.
В итоге:
Они решили что обмен данными внутри процесса будет намного дешевле и слепили эти микросервисы в монолит, попутно выпилив S3, так как скриншот передается теперь просто в памяти.
А как же масштабирование? Они говорят что просто масштабируют один и тот же сервис, регулируя параметрами за что именно конкретный инстанс отвечает.
Вот так… 90% экономия на инфраструктуре. Впечатляет!
Расскажите в комментариях, что вы сами думаете о микросервисной архитектуре, приходилось ли вам видеть проект написанный на микросервсиах ради микросервисов?
Пруф: https://www.primevideotech.com/video-streaming/scaling-up-the-prime-video-audio-video-monitoring-service-and-reducing-costs-by-90
About Amazon
Entertainment
We create and provide access to world-class entertainment through Amazon Originals, Prime Video, Audible, Amazon Games, Twitch, Amazon Music, Prime Gaming, and more. Amazon’s digital entertainment products enable customers to access the latest apps and games…
👍20😁12👏4❤2🥴1