Собеседование на позицию Middle Unity Developer, C#. | Мок интервью

preview_player
Показать описание
Собеседование на позицию Middle Unity Developer. Открой для себя ключевые вопросы, которые часто задают на интервью, и научись формулировать убедительные и профессиональные ответы. Мы охватим различные аспекты, включая технические знания, разработку игр, управление проектами и лучшие практики программирования. Это видео станет твоим незаменимым гидом для подготовки к собеседованию, поможет тебе выделиться среди претендентов и продемонстрировать свою квалификацию как Middle Unity Developer.
============================================================
============================================================
============================================================
============================================================
0:00 Вступление. План собеседования
0:55 Информация о компании
2:25 Расскажите о себе, о своем опыте как разработчике
3:45 Почему решили уйти с предыдущего места работы?
4:45 Как вы подняли revenue на 50%?
7:02 Какие кастомные плагины в юнити вы использовали?
9:06 Есть ли опыт работы с Zenject?
11:07 Есть ли опыт использования Firebase?
11:55 Что такое архитектура MVP?
12:40 В чем разница между MVP и MVC
12:52 Есть ли опыт в использовании CI/CD окружения?
13:35 Назовите принципы ООП
13:57 Как вы понимаете принцип инкапсуляции?
14:27 Что такое полиморфизм?
14:57 Является ли использование интерфейсов примером инкапсуляции?
15:20 Что такое интерфейс?
17:11 Назовите 5 принципов SOLID
17:42 Какой принцип SOLID вы чаще всего нарушаете?
18:23 Назовите методы базового класса Object
18:50 Чем List отличается от массива?
20:20 Как называются запросы, фишка языка С# для обращения к листу?
21:53 Какие простые типы данных вы знаете?
23:15 Какие типы коллекций вы знаете?
24:00 Когда нужно использовать словарь, а когда лист?
24:30 Какое ключевое отличие листа от словаря?
25:03 Какие существуют шаблоны проектирования?
26:33 В чем разница между классом и структурой?
27:32 Задача с подвохом на Value type
28:42 Что такое корутина в Unity?
29:20 В чем разница между Async и Корутиной
30:57 Жизненный цикл Monobehaviour
31:54 Зачем используют 2 системы Canvas на 1 сцене?
33:45 Что такое drawcalls и как уменьшить их количество вызовов?
35:33 Какие плохие практики кода вы видели?
36:45 Какой 3D объект Unity съедает меньше всего GPU
37:45 Поделитесь опытом рекламной интеграции
39:32 Расскажите про ваш самый большой провал
41:23 Как вы определяете время на задачу?
41:50 Что вы будете делать если дадут 2 задачи с высоким приоритетом?
42:29 Как вы получали фидбек о своей работе?
43:13 Ваши ожидания по зарплате?
43:34 Вопросы собеседника к интервьюеру
47:08 Итоги
============================================================
#ЮрийСулима #Unity #csharp #GameDev #Айти #Разработка #IT #программирование #собеседование
Рекомендации по теме
Комментарии
Автор

0:00 Вступление. План собеседования
0:55 Информация о компании
2:25 Расскажите о себе, о своем опыте как разработчике
3:45 Почему решили уйти с предыдущего места работы?
4:45 Как вы подняли revenue на 50%?
7:02 Какие кастомные плагины в юнити вы использовали?
9:06 Есть ли опыт работы с Zenject?
11:07 Есть ли опыт использования Firebase?
11:55 Что такое архитектура MVP?
12:40 В чем разница между MVP и MVC
12:52 Есть ли опыт в использовании CI/CD окружения?
13:35 Назовите принципы ООП
13:57 Как вы понимаете принцип инкапсуляции?
14:27 Что такое полиморфизм?
14:57 Является ли использование интерфейсов примером инкапсуляции?
15:20 Что такое интерфейс?
17:11 Назовите 5 принципов SOLID
17:42 Какой принцип SOLID вы чаще всего нарушаете?
18:23 Назовите методы базового класса Object
18:50 Чем List отличается от массива?
20:20 Как называются запросы, фишка языка С# для обращения к листу?
21:53 Какие простые типы данных вы знаете?
23:15 Какие типы коллекций вы знаете?
24:00 Когда нужно использовать словарь, а когда лист?
24:30 Какое ключевое отличие листа от словаря?
25:03 Какие существуют шаблоны проектирования?
26:33 В чем разница между классом и структурой?
27:32 Задача с подвохом на Value type
28:42 Что такое корутина в Unity?
29:20 В чем разница между Async и Корутиной
30:57 Жизненный цикл Monobehaviour
31:54 Зачем используют 2 системы Canvas на 1 сцене?
33:45 Что такое drawcalls и как уменьшить их количество вызовов?
35:33 Какие плохие практики кода вы видели?
36:45 Какой 3D объект Unity съедает меньше всего GPU
37:45 Поделитесь опытом рекламной интеграции
39:32 Расскажите про ваш самый большой провал
41:23 Как вы определяете время на задачу?
41:50 Что вы будете делать если дадут 2 задачи с высоким приоритетом?
42:29 Как вы получали фидбек о своей работе?
43:13 Ваши ожидания по зарплате?
43:34 Вопросы собеседника к интервьюеру
47:08 Итоги

sulimannxx
Автор

Около года разрабатываю в юнити, и практически на все вопросы смог ответить, даже иногда информативнее, чем надо)

Хотя по коммерческому опыту на джуна то не факт, что возьмут)

Arendrast
Автор

20:01. Лист создаётся изначально на 0 элементов, если создавать просто через new List<T>();
При первом добавлении произойдет расширение до 4 элементов, потом будет происходить увеличение в два раза.
private void EnsureCapacity(int min)
{
...
int num = this._items.Length == 0 ? 4 : this._items.Length * 2;
...
}

inrage
Автор

Видно, что собес mock. Заметны принятия совсем простых ответов по типу:
11:40
12:45
На реальном собесе попросили бы раскрыть мысль глубже.

Но всё равно полезно. Спасибо за видео!

yummybunny
Автор

Интересное получилось интервью и очень полезное, теперь стало немного яснее к чему готовиться на собесе :) спасибо вам

ДмитрийПоловков
Автор

36:45 Коллайдеры обрабатывает CPU. Проще всего посчитать коллайдер сферы, тк там надо только радиус и центр знать, потом капсулу и потом кубик, но это делает CPU.

Вопрос был зада про GPU, а там все в точности, да наоборот. Чем больше точек на сетке объекта - тем сложнее его отрисовать.
У кубика будет всего 8 точек, меньше только у плейна, а вот у капсулы со сферой будет уже сильно больше вершин и соответственно на их отрисовку у GPU уйдет заметно больше времени.

divizitin
Автор

Есть слабые места у собеседующего:
1. Некорректно противопоставлять DI-фреймворк внедрению зависимостей через конструктор. DI и DI-фреймворк/контейнер это разные вещи.
2. LINQ работает не с List<T>, а с IEnumerable<T>.

a.danilenko
Автор

Полезный видос. Как минимум для того, чтобы понять, что ты не "лох" и знаешь примерное как этот "Мидл"... При этом считая себя джуном :D
Ну и всякие полезные мелочи, которые помогают глубже понять тему есть. Как минимум взгляд на предмет со стороны другого человека, уже полезен.

Есть только пару вопросов:
Первый - Зачем отказываться от Зенжекта, когда он:
а) Экономит время в итоге и упрощает работу с зависимостями на глобальном уровне (даже при самом примитивном его использовании).
б) На то, чтобы его внедрить и изучить уже было потрачено куча человекочасов и подобный отказ наоборот скажется отрицательно на времени, вложении сил и, соответственно, денег, чтобы выпилить то, что уже было сделано и переставить проект на старые рельсы.
Второй - почему, когда инкапсуляцию объясняют сокрытием, таких разрабов не ставят на место? Ибо сокрытие и инкапсуляция, это не одно и тоже. Сокрытие, это, как максимум, треть от всего понятия инкапсуляции.

Lucioa
Автор

Очень во время)

Попробую сам ответить на вопросы из видоса + ещё пересмотрю твой видос с неуверенным чувачком. Да и вообще все видосы посмотрю у тебя)

titanovsky
Автор

Прям в тему!
Завтра собес на позицию middle!
Спасибо за видео))

АртемЗайцев-кщ
Автор

22:00 сурово про байт))
По этому у нынешних разрабов даже самое простенькая индюшатина, жрет ресурсов как ААА проект :D
А потом они говорят, что использовали обычные геймОбджекты, чтобы "добавить производительности", но при этом не замачиваются с типами))) Плюют на байт, создают листы для одного элемента, которые передают в методы "как есть"... и пр.

Lucioa
Автор

инкапсуляция это не сокрытие. сокрытие это следствие выполнения принципов абстракции (к коему относится использование интерфейсов) и принципа инкапсуляции (помещение данных и методов работы на ними в класс).

pymentor.
Автор

Посмотрел интервью 12:00 минут. Странные ощущения сложились об интервьюировании.

- Вы знаете Zenject
- Да, знаю
- Отлично, движемся дальше

Погодите, погодите... А где вопросы про что такое Context'ы, про разные способы способы внедрения зависимостей, про уход от монобехов, что такое MоnoKernel и так далее...

Аналогичное увидел и с MVP паттерном... В общем слишком лайтово как-то...

ardarchic
Автор

Я может чего-то не понимаю, но в заголовке написано "собеседование на мидл разработчика", а где, собственно, вопросы непосредственно по C#? то, что было в интервью - это прям поверхность, 0 углубления. Это точно на мидла?

nyarlukhotep
Автор

Евгений правильно сказал по вопросу о съедании ресурсов графического процессора 3D объектами. Куб меньше памяти съедает, чем сфера, т.к. у него полигонов намного меньше.

KopylovRoman
Автор

вопрос: а почему сфера дешевле чем куб? разве в сфере не больше вертексов и треугольников, куб это же по сути 6 плоскостей просто

Itxifxotxotxotxi
Автор

17:00 зато в интерфейсе можно указывать свойства, которые, вполне себе, заменяют поля...))

Lucioa
Автор

Недавно собес проходил, готовился в основном по коду, а в итоге спрашивали по юнити. По ощущениями ответил слабо, но сказали что человек не тот попался, у них был тот, кто мог и по коду в основном спросить =(
Пока хз что решили, но я буквально за день освежил память по юнити инструментам и понял что ответил еще хуже чем думал

moranyt
Автор

Ничиго себе, так я уже мидл++ всмысле не c++, а типо умный капец

gaymdev
Автор

где такие собеседования на 2500 баксов!?!? ГДЕЕЕЕЕЕЕЕЕЕЕЕЕЕЕ

Virus-tdnc