Существуют ли в настоящее время какие-либо современные стандартизированные тесты способностей для разработки программного обеспечения? [закрыто]

10

Фон

Я работающий инженер-программист, который находится в процессе поиска нового контракта на следующий год или около того. В своем поиске я переношу несколько абсурдных технических интервью, как указано в этом популярном вопросе, который я задал ранее сегодня .

Даже если бы вопросы, которые мне задавали, не всегда были абсурдными, я бы все равно устал отвечать на них многократно по различным контрактным возможностям.

Таким образом, это заставило меня задуматься о том, что проведение стандартизированного экзамена, который могли бы сдать работающие специалисты по программному обеспечению, обеспечило бы общую оценочную карту, на которую могли бы дать интервьюеры вместо абсурдных технических вопросов на собеседовании (т. Е. Издевательства над ботаниками).

Вопрос

Существует ли стандартизированный тест на пригодность для разработки программного обеспечения (SEAT ??), доступный для работающих специалистов?

Если такого экзамена нет, какие вопросы или темы следует обсудить?

Дополнительная мысль

Пожалуйста, имейте в виду, если вы предлагаете вопрос или тему, чтобы сосредоточиться на вопросах или темах, которые будут иметь отношение к современной практике развития и реалистичным потребностям в рабочей силе, поскольку это станет точкой стандартного теста на способности. Другими словами, нет вопросов клоуна прохождения .

Мэтт Кашатт
источник
Хороший вопрос, но, к сожалению, кажется, что нет способа избежать некомпетентного технического интервью. Наихудшими являются те, что проводятся рекрутерами без опыта программирования. У меня были такие, которые были ужасно плохими. Я дал, как мне показалось, адекватный ответ на некоторые вопросы, на которые ему сказали, что это совершенно неправильно, потому что оно не соответствует консервативному определению, которое они откуда-то получили.
Antonio2011a

Ответы:

7

Посмотрите на Codility .

Это онлайн-тест программирования, который поддерживает несколько разных языков. Вопросы хорошо определены, и не слишком сложны, хотя они требуют некоторого обдумывания, а также хороших (оборонительных) методов программирования - вам нужно не только написать правильное рабочее решение, но они будут проверять такие вещи, как краевые условия и целочисленное переполнение ,

Я понятия не имею, насколько хорошо оценивается самосертификация, но два последних заявления о приеме на работу использовали этот сайт как часть процесса отбора.

сапсан
источник
2
Аккуратный сайт! Вопросы на самом деле довольно сложные. Я только наполовину решил ее, и несколько экстремальных тестов не прошли тесты производительности, хотя они никогда не выходили и говорили, что мой код будет проверен на производительность.
maple_shaft
3

Тесты на пригодность предназначены для измерения чьей-то врожденной способности к данному предмету, а не того, сколько вы уже знаете о предмете. Я не думаю, что это то, что вы ищете. Вместо этого вам, кажется, нужен стандартный способ продемонстрировать то, что вы знаете, чтобы вам не приходилось терпеть технические вопросы на собеседовании (или, по крайней мере, избежать глупых).

Хорошие новости: есть много способов продемонстрировать то, что вы знаете. Инструменты в вашем распоряжении включают в себя:

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

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

  • Письмо: если вы написали какие-либо статьи, блог, книгу или статью в журнале, попробуйте представить это перед собеседованием, чтобы у интервьюеров была возможность прочитать его.

  • Степень или сертификация: это примерно столько, сколько вы можете получить на стандартном экзамене.

Короче говоря, ваша цель - предоставить как можно больше доказательств того, что у вас есть знания, которые ищет интервьюер.

Плохие новости: несмотря ни на что, вы, вероятно, всегда будете сталкиваться с надуманным техническим вопросом или двумя, когда будете брать интервью для работы. Даже если вы действительно удивите их своим опытом и сможете продемонстрировать, что вы именно тот парень, которого они ищут, они все равно зададут несколько вопросов о структурах данных или о чем-то еще. У компании нет недостатка - человек, которого они ищут, должен быть в состоянии ответить на эти вопросы во сне, и, очевидно, есть много людей, которые не могут . Кроме того, некоторые организации имеют строгие процедуры приема на работу, которые требуют, чтобы они задавали одинаковые вопросы каждому кандидату; интервьюеры не могут решить, что вы знаете свои вещи, и они могут просто пропустить технические вопросы.

Калеб
источник
Калеб - Я ценю ваш комментарий, и у меня есть все пули, которые вы упомянули. Кроме того, вопросы, упомянутые в указанной вами ссылке, или общие проблемы со структурой данных в качестве боковой панели для более крупного интервью, подойдут. Лично меня тошнит от того, что я, как обезглавленный цыпленок, бегаю по нескольким различным «техническим осмотрам», чтобы задавать вопросы, которые не имеют отношения к работе. И снова, я только после контрактной работы, поэтому есть много итераций этого процесса «технологического отбора». Я просто считаю, что стандартизированный тест может этого избежать.
Мэтт Кашатт
2

Возможно, это роль сертификатов и степеней. Если вам нужен стандартизированный тест на чье-то знакомство с конкретным языком программирования, вы можете найти людей, имеющих сертификат определенного языка. Если вам нужен стандартизированный тест по общим знаниям в области информатики, ищите кого-то, кто имеет степень по информатике.

Проблема, конечно, в том, что мы все знаем, что такого рода учетные данные далеки от совершенства. Людям слишком легко сдать сертификационный экзамен после того, как темы экзамена будут завершены, фактически ничего не изучая или не имея возможности применить полученные знания. Довольно большая часть солидных разработчиков не собирается проходить процесс сертификации. И попытка получить сертификат на все, что ищет работодатель (языки, процессы разработки и методологии и т. Д.), Будет довольно обременительной. Степени информатики также ошибочны - есть люди, которые заканчивают свою степень, даже не успев научиться писать полезный код, и есть люди, которые учатся писать отличный код, специализируясь на чем-то другом.

Учитывая, что стандартизированные подходы показали себя недостаточными в реальном мире, крайне маловероятно, что стандартизированный экзамен будет лучше. Это почти наверняка закончится тем, что получится так же, как существующие сертификационные экзамены. Люди готовились к экзамену или получали доступ к вопросам из «мозговых свалок». Существующие разработчики не выбегут на экзамен. А работодатели не захотят сильно полагаться на результаты экзамена. Поэтому они все еще хотят задавать технические вопросы в интервью.

Помимо этого, хорошее техническое интервью (очевидно, что есть плохие интервьюеры и плохие вопросы, как и плохие разработчики) также должно быть посвящено оценке того, как подход кандидата будет соответствовать текущей команде. Хорошее собеседование должно оценивать коммуникативные навыки кандидата и его мягкие навыки так же, как и его технические навыки. Меня гораздо больше интересует кандидат, который задает хорошие вопросы, чтобы уточнить требования, и который хорошо объясняет их мыслительный процесс, даже если они не сразу придумали лучший алгоритм по сравнению с кем-то, кто придумал отличный алгоритм, но не может объясните их ответ эффективно или обсудите компромиссы эффективно.

Джастин Кейв
источник
Спасибо Джастину Кейву, ваши очки были хорошо приняты - особенно последний абзац, с которым я полностью согласен. Дело в том, что в тех «технических» интервью, которые были для меня плохим опытом, кажется, что интервьюер всегда попадал в категорию отсутствия тех мягких навыков, о которых вы говорите, и часто было трудно понять слова, которые они говорили ( не говоря уже о том, что они просили).
Мэтт Кашатт
Я считаю себя превосходным в тех мягких навыках, о которых вы упомянули, плюс я твердый программист и доказал, что на протяжении многих лет мне кажется прискорбным, что эти хранители ворот стоят между мной и моим следующим контрактом. Я думаю, что стандартизированный подход может решить эту проблему.
Мэтт Кашатт
@MatthewPatrickCashatt - Но в то же время, не хотите ли вы знать, что у вас будут проблемы с общением с командой во время собеседования, прежде чем приступить к работе? Если вы не можете понять, о чем они спрашивают, даже если вина полностью на них, вы не сможете успешно работать с ними.
Джастин Кейв
Я думаю, что мы говорим о двух разных контекстах (моя вина). Видите ли, я имею дело с несколькими рекрутинговыми агентствами, которые стоят между мной и, скажем, получают 6-месячный контракт в Amazon или Microsoft. У меня нет выбора, кроме как пройти через эти агентства, но я не буду работать с людьми, нанятыми ими. Итак, неизменно я сталкиваюсь с сотрудником агентства, у которого на столе стоит стопка книг по C #, Java, C ++ или алгоритмам, мы идем в конференц-зал, и они продолжают задавать мне вопросы, которые дают понять, что у них нет. не был в рабочей силе некоторое время.
Мэтт Кашатт
@ MatthewPatrickCashatt - Ну, несомненно, есть плохие интервьюеры. Но если они некомпетентны, маловероятно, что они будут использовать результаты хорошего стандартизированного теста, даже если он существует по тем же причинам, по которым они просто не требуют степени и соответствующих сертификатов сегодня.
Джастин Кейв
0

Тест на знание языка для программистов / аналитиков дает возможность объективно оценить потенциал кандидата на работу для понимания и применения аргументации, логики, компьютерной математики и процедурных правил. LPAT не проверяет кандидата на определенном компьютерном языке. См. Http://www.aprtestingservices.com/business/lpat/

Джоэл В.
источник