Часто при собеседовании програмиста на проектные работы мной даётся небольшое практическое задание, которое он может выполнять с использованием любых инструментов, какие он знает. Люблю простые и ёмкие вопросы. Вот пример такого задания на bash.
Имеется участок кода на bash с определением функции, работающей с переменными.
#!/bin/bash
set -e
#
# <Описание c параметрами>
#
function get_stats ()
{
local CURL_COMMAND_URL="${VAR_ROOT_URL}api/jobs?return_timeout=${VAR_TIMEOUT_SECONDS}&fields=description"
local CURL_RESULT="$(curl --silent -k "${CURL_COMMAND_URL}")"
# <обработка ошибок 1>
local JOB_RECORDS="$(echo "${CURL_RESULT}" | jq --raw-output --compact-output ".records[]")"
# <обработка ошибок 2>
while IFS= read -r VAR_JOB_OBJECT; do
# формирование отчёта ...
done <<< "${JOB_RECORDS}"
}
Требуется дополнить недостающие части, помеченные угловыми скобками, а также отметить, что хотелось бы улучшить в этом коде.
Так и происходит набор специалистов, например, на проектные работы.