могли бы просто спросить про слабую типизацию/приведение типов/етс
Итак, вначале говорил с HR "за жизнь" - кто я, чем занимаюсь, какие цели, также за контору - кто они, что делают, почему берут сотрудников.
Дальше пришли два бэка и тимлид. Один бэк практик, второй теоретик. Тимлид общие вопросы задавала, а вот бэк теоретик подзаебал. Ощущение было что он полученные в ВУЗе знания пытался хоть куда-нибудь засунуть ))
Помимо прочего выдали ТЗ минут на 10, которое я сделал за пару минут. Его сложность как таблица умножения для пятиклассника - так сказать "отсев" тех кто "не туда" зашел.
Выглядело оно так (1 в 1 не помню, передаю суть):
1. Выполнится ли каждая строчка кода. Объясните почему:
$x = 1;
if ($x == '1')
echo 'e';
if ((int) $x == true)
echo 'b';
if ((bool) $x === true)
echo 'a';
if ($x === true)
echo 'd';
2. Что получится в результате выполнения кода:
class A {
private $var;
}
class B extends A {
public $var;
}
$aTest = new A;
$bTest = new B;
echo $aTest->var;
echo $bTest->var;
3. Что-то там тоже про выполнение:
class A {
static function foo() {
return 'foo1';
}
static function test1() {
return self::foo();
}
static function test2() {
return static::foo();
}
}
class B extends A {
static function foo() {
return 'foo2';
}
}
echo A::test1();
echo B::test2();
Далее теоретик загрузил разными понятиями типа SOLID, DDD, DRY и т.д. пытаясь понять что я о них знаю и как понимаю. Сказал что я силен в теории, зато на практике по факту могу многое.
Также за DI спрашивал
(к слову это:)
public __constructor(MyClass $a) {
$this->a = $a;
}
И за это всё поболтали. Бэк практик спросил лишь сталкивался ли я с GraphQL и, получив ответ что прочел что это, а так заглянуть в доку на пару часов, успокоился.
С тимлидом поговорили за железо: у них "из коробки" i5, 16 Гб RAM, SSD и два монитора.
Зарплата вся "белая". Переработок нет (максимум 1 раз в год, сказали, бывает, и всё оплачивают).
Спросили почему ухожу.
Далее, под конец собеседования, скинули ТЗ.