Меня попросили пройти технический тест / оценку для работы в качестве младшего разработчика, в основном с использованием C ++. Это мой первый тест / оценка, и он длится 2 часа.
Мой C ++ немного ржавый, так как я недавно делал проекты на PHP.
Это британская компания, однако я предполагаю, что техническое тестирование кандидатов везде будет одинаковым.
Чего мне ожидать в одном из этих тестов?
c++
interview
junior-programmer
bearbread
источник
источник
Ответы:
Это C ++, так что вы можете ожидать чего угодно, я имею в виду ДЕЙСТВИТЕЛЬНО все.
Обычно это включает в себя вопросы с подвохом и вопросы о полиморфизме.
Но может быть и что-то простое.
Будьте готовы ответить на вопрос о чем-то вроде: «почему вы сделаете деструктор виртуальным», что такое «изменчивый», «спроектируйте класс» для какой-то нереалистичной задачи, «реализуйте связанный список», «переверните строку» и т. Д.
источник
mutable
ключевое слово?" в категорию ничего.Если это чистый тест C ++ (то есть не тест Windows / MFC / Managed C ++), потратьте несколько часов или день на эффективный C ++ Скотта Мейера, и у вас все получится. Он не охватывает шаблоны и STL, но если бы они были заинтересованы в этом, они, вероятно, не дали бы вам двухчасовой тест. Прошло несколько лет, но я часто брал интервью у разработчиков C ++. Несмотря на то, что идеи в Effective C ++ являются фундаментальными для программирования на C ++, их знали только около десяти процентов кандидатов.
источник
Ну, это зависит от того, позволят ли вам использовать Google или нет. :П
Обычно я хорошо справляюсь с техническими тестами, если могу использовать инструменты вокруг себя. Когда они хотят, чтобы я закодировал их, я попал в беду. Поэтому лучший совет, который я могу вам дать - это слепой код дома ... Убедитесь, что вы помните тривиальные вещи, которые мы считаем само собой разумеющимся, потому что мы можем легко их проверить, если не помним.
Кроме того, обычно проверяют, какие именно навыки им нужны, поэтому, если вы знаете, над чем будете работать, сконцентрируйтесь на этом.
(Это в моем общем опыте, я не из Великобритании)
источник
Практика кода ката Выберите простой алгоритм (кольцевой буфер, Ханойская башня, бинарный поиск, что угодно) и кодируйте его с нуля. Затем сделайте это снова в следующий раз, и в следующий раз, и в следующий раз, и в следующий раз, и так далее. Посмотрите, как вы можете улучшить их на каждой итерации.
источник
Это правда, что вы можете ожидать чего угодно.
Они сказали, что тест был C ++, но, возможно, это действительно подмножество C C ++, которое они используют в своих тестах (вы будете использовать массивы символов вместо стандартных строк библиотеки). Это будет сложно узнать.
Если это действительно C ++, я бы посоветовал вам ознакомиться с основами:
тогда:
источник
То, что было опубликовано, было великолепным, но я добавлю кое-что и историю! Я бы сказал, попрактиковаться в применении того, что вы знаете в C ++, к проблемам в области разработки программного обеспечения. Здорово, если вы знаете все тонкости C ++, но если вы не можете решить проблему, вы бесполезны для компании. Учитывая, что это должность младшего разработчика, я не думаю, что они ожидают, что вы будете знать все о C ++.
Я прошел свой первый технический тест для моей первой работы на прошлой неделе и был удивлен тем, что нашел. Я ожидал чего-то вроде FizzBuzz или чего-то более грубого (это было для Java, кстати), но я обнаружил, что они дали мне файл и заставили меня разобрать его в новом формате, что и было частью работы. Кроме того, они позволили мне использовать Google и их собственные библиотеки. В итоге вам нужно знать C ++, но если вы хотите знать, на что может быть похож тест, взгляните на область позиции, на которую вы претендуете, и поработайте над реализацией C ++ к чему-то в этой области.
источник
Ты:
При написании кода
Они будут ожидать, что вы будете знать (и использовать):
Вероятно, они будут проверять вас на:
Если вам не повезло, они могут подумать
При выборе нескольких вариантов
Личное интервью
источник
Я получил в моем последнем интервью:
Разница между передачей объекта в функцию по значению / ссылке / указателю и где и почему вы это сделаете.
Поменяйте местами последние 8 битов целого числа, например, RGBA на RGAB.
Что такое RIAA?
Определите шаблон мета-программирования: у вас может возникнуть вопрос с точки зрения «решить эту проблему с TMP ..»
Что означает изменчивое, изменчивое, постоянное и т. Д. И т. Д.? знать все ключевые слова.
множественное наследование .... снова снова и снова.
Многопоточность: потребительские и буферизованные объекты общей памяти.
Еще несколько периферийных вопросов:
Агрегация и составление UML
Шаблоны проектирования: реализация одиночного ... Каковы общие компоненты MVC?
источник