Skip to the content.

Примеры кода

Вопросы для собеседования на позицию разработчика

Имя кандидата на вакансию:

Общие вопросы

Вопрос Оценка
1 Как проверить является ли число чётным?  
2 Что такое хвостовая рекурсия?  
3 Что предпочтительнее, наследование или композиция? Почему?  
4 В чём отличие мьютекса от семафора?  
5 Асинхронность и многопоточность. Какая связь между этими словами?  
6 Какие знаете паттерны проектирования?  
7 Что такое синглтон?  
8 Что из себя представляют индексы в БД?  
9 Какие проблемы решает Dependency Injection? Какие реализации DI вам известны?  

Вопросы по C#

Вопрос Оценка
1 В каких случаях предпочтительнее использовать StringBuilder, а в каких конкатенацию строк?  
2 Плюсы и минусы static переменных  
3 Что такое ORM (Object-Relational Mapping)? Что такое Entity Framework?  
4 Когда лучше использовать HashSet, а когда List? (Для добавления, удаления, Contains)  
5 Чем отличается struct от class?  
6 Для чего предназначено ключевое слово volatile?  
7 Как работает Try-Catch-Finally?  
8 Как работает using?  
9 В чём разница между абстрактным классом и интерфейсом? Что использовать предпочтительнее?  
10 Для чего используются атрибуты в C#? Как добавить собственный атрибут и обработать его?  
11 Какие существуют потокобезопасные коллекции?  
12 В чём отличие IEnumerable от IQueryable?  
13 Каким образом сравнить две строки (string) без учёта регистра?  
14 Как вычислить сумму элементов массива?  

Вопросы про TPL

Вопрос Оценка
1 Любой ли метод, который возвращает Task выполняется асинхронно?  
2 В чём отличие async void в объявлении метода от async Task?  
3 Почему использование асинхронных методов повышает производительность приложений, которые взаимодействуют с системами ввода вывода (диск, сеть и т.п.)?  
4 Каким образом запустить выполнение определённого метода в отдельном потоке?  
5 Каким образом отменить выполнение Task?  

Комплексные вопросы

Вопрос Оценка
1 Каким образом реализовать систему плагинов на C#? Как обезопасить основное приложение от вредоносного влияния плагинов? Как добавить использование языков отличных от C#?  
2 Каким образом решить проблему того, что приложение на C# выполняется медленно? А если потребляет много оперативной памяти?  

Вопросы по JS (TS) (в веб-браузере)

Вопрос Оценка
1 В чём отличие оператора == от === ?  
2 Каким образом отложенно по времени запустить выполнение определённой функции? А как сделать запуск функции периодическим по времени?  
3 Как запустить выполнение функции в новом потоке (Thread)?  
4 Чем отличается var от let?  
5 Что такое промисы (Promise)? В чём его преимущество по сравнению с колбеками?  
6 Можно ли отлаживать typescript или специальные форматы файлов от фреймворков типа vue.js, react.js, angular? Какие инструменты для этого есть?  

Комплексные вопросы

Вопрос Оценка
1 Каким образом реализовать загрузку с сайта файлов с проверкой доступа (через AJAX в SPA)?  
2 Что лучше Single Page Application или Multiple Page Application (with SSR) в плане скорости, объёма трафика?  
3 Каким образом решить проблему низкой производительности и высокого потребления оперативной памяти?  
4 Опишите, что происходит с момента, когда пользователь нажимает на кнопку веб страницы (AJAX), до того, как меняется содержимое страницы?  
5 Каковы перспективы использования Web Assembly?  
6 Как вы относитесь к REST архитектуре? Для чего нужно использовать различные HTTP методы (POST, PUT, DELETE, GET, PATCH) и различные коды HTTP ответов в вашем API?  

Вопросы по рабочему процессу

Вопрос Оценка
1 Вам была поставлена задача. Время её выполнения оценено в 2 дня. Спустя 1 день вы не приблизились к её решению. Каковы ваши действия?  
2 Вам была поставлена задача. Время её выполнения оценено в 1 день. Вы справились за 2 часа. Другие задач на данный момент у вас нет. Каковы ваши действия?  
3 Вам была поставлена задача “Оптимизировать скорость определённого запроса к СУБД”. Ранее вы с этой БД не работали. Каковы ваши действия?  
4 Насколько приемлемым вы считаете скопировать готовый код со stackoverflow для решения задачи?