Если бы ваше мобильное приложение удалили с Appstore, то поменяли бы стэк?
Anonymous Poll
20%
Да, ушел бы в back-end
2%
Да, ушел бы в front-end
2%
Да, ушел бы в менеджера
2%
Да, ушел бы в другое
1%
Да, я так и сделал
20%
Нет. Ушел бы из компании
39%
Нет. Продолжал бы сидеть пока не восстановят в AppStore
14%
Другое
Советы по участию в телеграм конкурсе
Я не буду участвовать в текущем конкурсе, но приготовил советы, которые на мой взгляд помогут вам и помогли бы мне улучшить прошлый результат. В прошлом году уже писал немного о советах:
1. Начните прямо сейчас. Если вы собрались участвовать, то возьмите отпуск и не тяните. Прошлый раз мы делали это все после работы и спустя почти неделю. За упущенное время мы могли бы сделать в разы лучше
2. Никто не оценивает ваш код. Как вы могли бы заметить по коду, то в этом конкурсе никто не оценивает ваши паттерны, сложности алгоритмов, нейминги, архитектуры и тп. Мы, по корпоративной иннерции, думали это важно. Но нет. Забудьте опыт бигтехов и корпораций, тут он может даже вам навредить.
3. Важна рабочая фича. Ваша задача сделать максимально плавное и пиксель-перфектно. Вы делаете продукт для клиентов, а не для инженеров. Ваша работа должна быть 100% одинакова и подходить под описанные критерии. Не выдумывайте свои.
4. Приоритизируйте. Одна из критических ошибок, которые я допустил — я два дня долбился со сложной анимацией, хотя не сделал другие вещи, которые гораздо проще. Опишите что вам важно и что легче всего сделать. Правильно оцените свои ресурсы и не закапывайтесь в детали, которые навредят общей картине
В общем, я хочу сказать что опыт в конкурсе меня сильно пробустил клиенто-ориентированной разработке, работе с команде, лидировании и даже менеджменте. Обязательно его советую
Я не буду участвовать в текущем конкурсе, но приготовил советы, которые на мой взгляд помогут вам и помогли бы мне улучшить прошлый результат. В прошлом году уже писал немного о советах:
1. Начните прямо сейчас. Если вы собрались участвовать, то возьмите отпуск и не тяните. Прошлый раз мы делали это все после работы и спустя почти неделю. За упущенное время мы могли бы сделать в разы лучше
2. Никто не оценивает ваш код. Как вы могли бы заметить по коду, то в этом конкурсе никто не оценивает ваши паттерны, сложности алгоритмов, нейминги, архитектуры и тп. Мы, по корпоративной иннерции, думали это важно. Но нет. Забудьте опыт бигтехов и корпораций, тут он может даже вам навредить.
3. Важна рабочая фича. Ваша задача сделать максимально плавное и пиксель-перфектно. Вы делаете продукт для клиентов, а не для инженеров. Ваша работа должна быть 100% одинакова и подходить под описанные критерии. Не выдумывайте свои.
4. Приоритизируйте. Одна из критических ошибок, которые я допустил — я два дня долбился со сложной анимацией, хотя не сделал другие вещи, которые гораздо проще. Опишите что вам важно и что легче всего сделать. Правильно оцените свои ресурсы и не закапывайтесь в детали, которые навредят общей картине
В общем, я хочу сказать что опыт в конкурсе меня сильно пробустил клиенто-ориентированной разработке, работе с команде, лидировании и даже менеджменте. Обязательно его советую
Telegram
AvitoTech
Лев Бондаренко, наш iOS-разработчик из кластера Trust&Safety, по совместительству автор канала iOS makes me cry, недавно участвовал в Telegram Call UI Contest. Не просто участвовал, а занял там призовое место.
Мы встретились со Львом и задали ему вопросы.…
Мы встретились со Львом и задали ему вопросы.…
Еще один ролик на ютуб. Внезапно через час я дропаю в публичный доступ.
На этот раз его проведет разработчик из яндекса, где покажет как примерно проходят собесы.
Пройти собес и работать в яндексе считается престижем. Ведь для этого нужны настоящие скиллы, а не фальшивые. А также эта компания отличный тренажер для FAANG компаний, где многие разрабы легко устраиваются в гугл и apple.
А если хотите провести/пройти — пишите мне в лс @lvbond
Please open Telegram to view this post
VIEW IN TELEGRAM
YouTube
Мок-собеседование iOS | Yandex
Платформенное собеседование в стиле яндекса. Собесы в эту компанию отличаются своей сложностью и многие разработчики мечтают попасть в одну из лучших компаний мира.
В этом мок-собесе разработчик из яндекса показывает что может ожидать на типичном iOS собесе…
В этом мок-собесе разработчик из яндекса показывает что может ожидать на типичном iOS собесе…
iOS Makes Me Hate pinned «📺 Мок-собес по платформе от разработчика из яндекса Еще один ролик на ютуб. Внезапно через час я дропаю в публичный доступ. На этот раз его проведет разработчик из яндекса, где покажет как примерно проходят собесы. Пройти собес и работать в яндексе считается…»
Спецоперации по оптимизации
Тревожные слухи ходят по интернету. Сначала пишут о массовых сокращениях в ABBY, потом в VK, потом про WB. Никто не называет это сокращениями, а снова завуалировано прячется под «оптимизацией».
Не важно как это называют, важно что происходит. Происходит очередная перестановка правил и чистка. Где это повлечет за собой очередные ужесточения входа или поиска работы.
Накрутка опыта уже не работает — все начали просить выгрузки с госуслуг. Удаленки из других стран доступны только исключительным специалистам. А офисы снова становятся обязательными. Гайки крутятся везде.
Это будет грубо, но из своего окружения я не слышал, чтобы уволили кого-то сильного или полезного. Чаще сокращают тех, кто не приносит нужной пользы или не подходит компании. Кандидаты на увольнение обычно первые из всем известной стаи. Бизнес понял, что есть куча людей, кому платит слишком много за их качество труда.
Бизнес становится требовательным. Теперь он не дает повышение за хороший код, а требует лояльность и заботу об общем рабочем месте, стремлению к результату. Наняли бы вы в ресторан официанта, кто клал болт на гостей? Ну за дверью стоят сотни сильных разрабов.
Мне кажется, что бизнес ориентированность, осознанное программирование, эффективное управление ресурсами это базовые вещи, что всегда в цене независимо от времени и цикла.
Тревожные слухи ходят по интернету. Сначала пишут о массовых сокращениях в ABBY, потом в VK, потом про WB. Никто не называет это сокращениями, а снова завуалировано прячется под «оптимизацией».
Не важно как это называют, важно что происходит. Происходит очередная перестановка правил и чистка. Где это повлечет за собой очередные ужесточения входа или поиска работы.
Накрутка опыта уже не работает — все начали просить выгрузки с госуслуг. Удаленки из других стран доступны только исключительным специалистам. А офисы снова становятся обязательными. Гайки крутятся везде.
Это будет грубо, но из своего окружения я не слышал, чтобы уволили кого-то сильного или полезного. Чаще сокращают тех, кто не приносит нужной пользы или не подходит компании. Кандидаты на увольнение обычно первые из всем известной стаи. Бизнес понял, что есть куча людей, кому платит слишком много за их качество труда.
Бизнес становится требовательным. Теперь он не дает повышение за хороший код, а требует лояльность и заботу об общем рабочем месте, стремлению к результату. Наняли бы вы в ресторан официанта, кто клал болт на гостей? Ну за дверью стоят сотни сильных разрабов.
Мне кажется, что бизнес ориентированность, осознанное программирование, эффективное управление ресурсами это базовые вещи, что всегда в цене независимо от времени и цикла.
Forwarded from КиберТопор
Telegram разрабатывает замену YouTube — команда мессенджера объявила конкурс на создание нового видеоплеера с поддержкой HLS-стриминга.
Известно, что разработка будет функционировать внутри самого Telegram, без посредника в виде стороннего браузера, а также сможет автоматически подстраивать качество ролика под скорость интернета.
Сначала новинку выкатят на iOS, а потом и на Android с десктопом, ждем.
🕹КиберТопор — Подписаться
Известно, что разработка будет функционировать внутри самого Telegram, без посредника в виде стороннего браузера, а также сможет автоматически подстраивать качество ролика под скорость интернета.
Сначала новинку выкатят на iOS, а потом и на Android с десктопом, ждем.
🕹КиберТопор — Подписаться
SwiftUI Best Architecture
Потихоньку я наконец-то переключаюсь в современные стандарты разработки SwiftUI и Swift Concurrency и хочу поднимать темы, которые мало кто понимал: от перфоманса и масштабирования архитектур, до решения классических задач в стиле нетворк клиентов и рефреш токенов. Короче, конвертить весь мой опыт под стэк и брать самые нестандартные кейсы.
Делаю пет-проект для себя и бросаю себе вызовы. Я уже выбирал архитектуру MVI+SwiftUI, но а сейчас хочу посмотреть на что-то рыночное. То, что популярно в сообществах.
Нашел очередной срач в редите. Если вкратце, комьюнити разделилось на два лагеря:
- одни говорят что MVVM архитектура подходит только для маленьких апок
- другие говорят, что MV идеально организует код и избегает лишних абстракций в больших
Делитесь какими архитектурами пользуетесь вы
Потихоньку я наконец-то переключаюсь в современные стандарты разработки SwiftUI и Swift Concurrency и хочу поднимать темы, которые мало кто понимал: от перфоманса и масштабирования архитектур, до решения классических задач в стиле нетворк клиентов и рефреш токенов. Короче, конвертить весь мой опыт под стэк и брать самые нестандартные кейсы.
Делаю пет-проект для себя и бросаю себе вызовы. Я уже выбирал архитектуру MVI+SwiftUI, но а сейчас хочу посмотреть на что-то рыночное. То, что популярно в сообществах.
Нашел очередной срач в редите. Если вкратце, комьюнити разделилось на два лагеря:
- одни говорят что MVVM архитектура подходит только для маленьких апок
- другие говорят, что MV идеально организует код и избегает лишних абстракций в больших
Делитесь какими архитектурами пользуетесь вы
Reddit
From the SwiftUI community on Reddit
Explore this post and more from the SwiftUI community
В одном из прошлых постов про запахи мы поговорили про необоснованную сложность. Сейчас поговорим об её производной.
Цикломатическая сложность, или когнитивная сложность, — это отдельная метрика оценки нашего кода. Она есть в каждом языке и даже по умолчанию включена в нашем линтере. Ну а также я как-то давно делился книжкой от Sonar, где они круто разложили по полочкам. Книгу советую, кста.
Давайте проще. Отбрасывая все математические приколы, цикломатическая сложность — это метрика сложности кода, которая коррелирует с вероятностью появления ошибок. А значит и напрямую с качеством нашего кода.
Чтобы уменьшить сложность нашего кода нужно разбивать функций в более мелкие и управляемые блоки.
Интересные ресурсы:
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
Программисты больше не нужны
Вчера в нашем чате сеньор разраб из гугла рассказывал как проводил собес сеньора из apple и как тот максимально провалил собес по SwiftUI и UIKit. Аккуратно под это событие вышел подкаст с принципал инженером из Apple, который дает комменты про Google.
Вкратце:
🟣 гугл делает кучу ненужных продуктов, поэтому многие разрабы делают много ненужного
🟣 все компании нанимают разрабов, которые умеют переучиваться.
🟣 Не важно, на каких языках ты пишешь, но важно, что если не хочешь учить новые языки — ты никому не нужен
🟣 Гугл не нанимает программистов. Гугл нанимает умников, которые умеют программировать.
🟣 Нельзя выучить литкод. Задача на интервью через литкод понять как ты умеешь решать пазлы
🟣 Гугл не нанимает узких специалистов
Вчера в нашем чате сеньор разраб из гугла рассказывал как проводил собес сеньора из apple и как тот максимально провалил собес по SwiftUI и UIKit. Аккуратно под это событие вышел подкаст с принципал инженером из Apple, который дает комменты про Google.
Вкратце:
Please open Telegram to view this post
VIEW IN TELEGRAM
YouTube
Секреты бигтеха от Principal Engineer в Apple. Максим Страхов | Team Lead Talks Ep.38
Попадая в бигтех, некоторые люди теряются, потому что не понимают, что от них ожидают в этих компаниях. Это происходит даже с лучшими инженерами. Наш гость — Максим Страхов работает в Apple на должности Principal Engineer. Максим объясняет людям особенности…
Приступаю к углубленному анализу Swift Concurrency. В этой статье мы вкратце познакомимся с Actors и порешаем классические задачи.
В чате мы уже расширили формат "задач дня". Добавили на рефакторинг простых блоков кода с помощью Swift Concurrency. В будущем разберем больше задач и разных решений.
Ну а сейчас я потихоньку и тезисно формулирую статьи в базе знаний, но больше фокусируюсь на практике. В этой статье разобрал несколько примеров:
Дальше будет больше задач, где разберем как сделать дебаунсеры и тротлы, рефреш токены и другие рабочие примеры
Please open Telegram to view this post
VIEW IN TELEGRAM
Coding Interview University
Крутейший материал для подготовки к кодинг-интервью. Судя по описанию изначально автор делал для себя список полезных тем для развития скиллов по алгоритмам, а потом это выросло в огромную базу знаний, которая помогла ему получить оффер в Амазон.
Это многомесячный план обучения, чтобы пройти подготовку в крупные FAANG компании. По заверениям автора это полноценная замена университета, но в отличии от инфоцыганщины он сразу предупреждает что нужно время, усидтчивость и терпение.
Крутейший материал для подготовки к кодинг-интервью. Судя по описанию изначально автор делал для себя список полезных тем для развития скиллов по алгоритмам, а потом это выросло в огромную базу знаний, которая помогла ему получить оффер в Амазон.
Это многомесячный план обучения, чтобы пройти подготовку в крупные FAANG компании. По заверениям автора это полноценная замена университета, но в отличии от инфоцыганщины он сразу предупреждает что нужно время, усидтчивость и терпение.
GitHub
GitHub - jwasham/coding-interview-university: A complete computer science study plan to become a software engineer.
A complete computer science study plan to become a software engineer. - jwasham/coding-interview-university
1 17 2
Записали новое видео-воркшоп про Tuist. Модуляризация — это сложная и популярная вещь. При правильной готовки она может сильно сэкономить ресурсы, повлиять не только на скорость проекта, но и на качество кода. А также сэкономить ресурсы на переиспользование кодовой базы.
В этом выпуске ведущий iOS инженер рассказал как переводил проекты на туист и с чем столкнулся.
Детально пробежались по:
Вышло плотно и может быть когда-нибудь сделаем вторую часть.
Please open Telegram to view this post
VIEW IN TELEGRAM
Как находить решения в алгоритмах
Частая проблема новичков, которые только начинают практиковать решение алгосов, — это зубрежка. Я даже кекнул с того самого сообщества накрутчиков, которые устроили забастовку алгособесам и решили зазабурить все решения... Видимо надеясь, что таким образом хакнут алгособесы...
Но без десятки и сотни часов практики это не получится. Сейчас я провожу только алгоритмические собесы. Оцениваю не только иосеров, но и всех остальных. Секция алгоритмов не привязана к конкретному языку. На ней не оценивают синтаксис, знание библиотек. На ней оценивают как кандидат мыслит, какие идеи он генерирует, как часто ошибается и какие корнер-кейсы может найти.
Я уже много раз говорил, что уже 7 из 10 инженеров могут дать рабочее решение. Где только рабочее не будет главным. Важно эффективное.
Условно, есть задача написать функцию, которая принимает массив отсортированных чисел и нужно отдать такой же отсортированный массив квадратов этих чисел. Все просто, можно пройти линейно и просто умножить каждое число на себя. Но это решение не подойдет. Потому что вы не подумали о краевом кейсе, когда могут быть отрицательные числа. Приходит в голову другое решение: умножить каждое число на себя и отсортировать. Но это решение тоже не очень, так как нужно уложиться в сложность O(n), а сортировака O(nlogn). И таких деталей множество. Нужно их все учесть желательно без подсказок.
В нашем чате недавно спрашивали у сильных программистов "Как вы эффективно решаете задачи?". На что они ответили "Все приходит с практикой и к каждой задачи нужно просто подобрать нужную структуру данных и алгоритм, не выдумывая ничего нового".
Вот как раз такую статью я и нашел.
Частая проблема новичков, которые только начинают практиковать решение алгосов, — это зубрежка. Я даже кекнул с того самого сообщества накрутчиков, которые устроили забастовку алгособесам и решили зазабурить все решения... Видимо надеясь, что таким образом хакнут алгособесы...
Но без десятки и сотни часов практики это не получится. Сейчас я провожу только алгоритмические собесы. Оцениваю не только иосеров, но и всех остальных. Секция алгоритмов не привязана к конкретному языку. На ней не оценивают синтаксис, знание библиотек. На ней оценивают как кандидат мыслит, какие идеи он генерирует, как часто ошибается и какие корнер-кейсы может найти.
Я уже много раз говорил, что уже 7 из 10 инженеров могут дать рабочее решение. Где только рабочее не будет главным. Важно эффективное.
Условно, есть задача написать функцию, которая принимает массив отсортированных чисел и нужно отдать такой же отсортированный массив квадратов этих чисел. Все просто, можно пройти линейно и просто умножить каждое число на себя. Но это решение не подойдет. Потому что вы не подумали о краевом кейсе, когда могут быть отрицательные числа. Приходит в голову другое решение: умножить каждое число на себя и отсортировать. Но это решение тоже не очень, так как нужно уложиться в сложность O(n), а сортировака O(nlogn). И таких деталей множество. Нужно их все учесть желательно без подсказок.
В нашем чате недавно спрашивали у сильных программистов "Как вы эффективно решаете задачи?". На что они ответили "Все приходит с практикой и к каждой задачи нужно просто подобрать нужную структуру данных и алгоритм, не выдумывая ничего нового".
Вот как раз такую статью я и нашел.
Topcoder
How To Find a Solution
Discuss this article in the forums.
Introduction
Straight-forward problems that don’t require a special tech
Introduction
Straight-forward problems that don’t require a special tech
«Нас заменит не ИИ, а люди, кто эффективней им пользуется»
Эту фразу сказал директор Яндекса. Она емкая и предельно точная.
Уже неделю учусь активно промтить и использовать ИИ для повседневных задач. Не только в работе, но и дома, обучении.
Задаю себе вопрос почему же долго оттягивал знакомство. Задаю модели роли и обогащаю деталями, запрашиваю советы.
Удивляюсь, насколько глубоко и стремительно этот инструмент вошел в повседневную жизнь.
Огромное заблуждение, что чатгпт выдает одинаковый ответ всем. Все зависит от рук, навыков, слов и знаний оператора, который ведет диалог с машиной.
Я знаю владельцев бизнеса, кто с помощью ии тестирует успешные гипотезы. Знаю художников, кто улучшает свои картины. Знаю программистов, кто избавляется от рутины.
Стоит ли бояться ИИ? Нет. Стоит ли бояться людей? Да.
Расскажите, какие курсы по промтингу вы уже прошли или собираетесь.
Эту фразу сказал директор Яндекса. Она емкая и предельно точная.
Уже неделю учусь активно промтить и использовать ИИ для повседневных задач. Не только в работе, но и дома, обучении.
Задаю себе вопрос почему же долго оттягивал знакомство. Задаю модели роли и обогащаю деталями, запрашиваю советы.
Удивляюсь, насколько глубоко и стремительно этот инструмент вошел в повседневную жизнь.
Огромное заблуждение, что чатгпт выдает одинаковый ответ всем. Все зависит от рук, навыков, слов и знаний оператора, который ведет диалог с машиной.
Я знаю владельцев бизнеса, кто с помощью ии тестирует успешные гипотезы. Знаю художников, кто улучшает свои картины. Знаю программистов, кто избавляется от рутины.
Стоит ли бояться ИИ? Нет. Стоит ли бояться людей? Да.
Расскажите, какие курсы по промтингу вы уже прошли или собираетесь.
Telegram
Подкаст Свободный слот
Нас заменит не ИИ, а коллеги, которые научились с ним лучше работать
— Андрей Себрант, директор по стратегическому маркетингу Яндекса, профессор ИТМО и гость 9 выпуска нашего подкаста «Свободный слот».
🎤Обсудили ИИ со всех сторон:
– как мы используем ИИ…
— Андрей Себрант, директор по стратегическому маркетингу Яндекса, профессор ИТМО и гость 9 выпуска нашего подкаста «Свободный слот».
🎤Обсудили ИИ со всех сторон:
– как мы используем ИИ…
Список полезных инструментов для индивидуального плана развития
Я фанат развития. Обожаю рпг, стратегии и не понимаю игры без таких механик. Возможно, я унаследовал эти черты от семьи учителей, где ежедневные упражнения считаются необходимостью. Возможно, наша ит-среда требует постоянных изменений. Хотя может быть я сюда и пришел за этим.
В IT без плана развития сложно. Просто бездумно развиваться исходя из требований собесов — самоубийственная миссия. Собесы часто оторваны от реальности и могут завести не туда или ввести в заблуждение. Поэтому важно выстроить карту с учетом движения рынка. А также компании, в которой ты работаешь, и её места на рынке.
Развитие это долгий путь. Где нужно много сил, времени и дисциплины. У меня скоро день рождения и каждый год я основательно меняю свой роадмап развития, который веду еще с 2013 года. Ставлю годовые цели, выбираю ветки куда расти.
В этом году хочу улучшить свой процесс и настроить его максимально ответственно. Сделать полноценный шаблон. Поэтому изучил много разных книг и статей, поговорил с коллегами.
Собрал, на мой взгляд, самые полезные инструменты для составления ИПР:
🟣 Windrose Avito. Отличная матрица с детальным описанием открытых грейдов и их обязанностей. Что что, а лучше Авито пока никто не придумал похожие матрицы, успешно их внедрил и применяет. А уж тем более не открыл их публично.
🟣 Шаблон ИПР от Qiwi. Еще один инструмент от руководителя групп разработки Авито с детальными советами. Как минимум я лично убедился в эффективности этого инструмента, где множество разрабов выросло в своих навыках.
🟣 Книга "The Software Engineer's Guidebook". Очень подробный сборник универсальных советов для бигтехов и стартапов.
Ну а вы тоже делитесь интересными ресурсами.
Я фанат развития. Обожаю рпг, стратегии и не понимаю игры без таких механик. Возможно, я унаследовал эти черты от семьи учителей, где ежедневные упражнения считаются необходимостью. Возможно, наша ит-среда требует постоянных изменений. Хотя может быть я сюда и пришел за этим.
В IT без плана развития сложно. Просто бездумно развиваться исходя из требований собесов — самоубийственная миссия. Собесы часто оторваны от реальности и могут завести не туда или ввести в заблуждение. Поэтому важно выстроить карту с учетом движения рынка. А также компании, в которой ты работаешь, и её места на рынке.
Развитие это долгий путь. Где нужно много сил, времени и дисциплины. У меня скоро день рождения и каждый год я основательно меняю свой роадмап развития, который веду еще с 2013 года. Ставлю годовые цели, выбираю ветки куда расти.
В этом году хочу улучшить свой процесс и настроить его максимально ответственно. Сделать полноценный шаблон. Поэтому изучил много разных книг и статей, поговорил с коллегами.
Собрал, на мой взгляд, самые полезные инструменты для составления ИПР:
Ну а вы тоже делитесь интересными ресурсами.
Please open Telegram to view this post
VIEW IN TELEGRAM
Google Docs
Avito Public Windrose Template
This media is not supported in your browser
VIEW IN TELEGRAM
Вообще забавно что самый смышленный банк оказался ВТБ.
Их браузеру Луна уже пару лет. И когда через него пытаетесь войти в лк банка, то запускается нативный код
Гении обхода санкций. Тут прям целое искусство
Их браузеру Луна уже пару лет. И когда через него пытаетесь войти в лк банка, то запускается нативный код
Гении обхода санкций. Тут прям целое искусство
Debounce — очень частая задача везде. От собеса, до реальной практики. Недавно помогал одной компании делать тестовое и в нем ожидал, что кандидат применит дебаунсер.
Концепция простая. Каждый раз вызывая какой-то код дебаунсер ограничивает вызов функции за определенный период. Это очень важно в поисковиках или оплатах, где приходится заботиться об этом.
В этой статье я сделал реализацию на почти всех популярных вариациях:
Please open Telegram to view this post
VIEW IN TELEGRAM
Все чаще слышу от бизнеса, как многие разработчики отказываются принимать офферы из-за BDUI. Где объем задач на нем > 80%. Кого-то даже бизнес просит сделать рекламные доклады как крут BDUI.
Пришли бы вы на проект, где только бы пришлось работать с BDUI?
Пришли бы вы на проект, где только бы пришлось работать с BDUI?
Anonymous Poll
15%
Да, мне ок
20%
Да, но за прайс выше рынка
6%
Да, был опыт, все ок
18%
Нет, опыта нет. Не хочу
7%
Нет, опыт был. Не понравился
10%
Нет, когда-нибудь потом
25%
Да кто ваш такой этот BDUI?
Please open Telegram to view this post
VIEW IN TELEGRAM