тестовое задание в фирму X - развод??
От: Diaver Россия  
Дата: 25.08.10 13:25
Оценка: 6 (3) +1 :))
Итак история следующая.
На мое резюме выложенное на hh.ru откликнулась одна компания (пока называть ее не буду).
Телефонный разговор начался с обсуждения чем меня не устраивает текущая работа и тд.
Девушка рассказала какая у них хорошая фирма и на удивление начали разговор о з/п.
Разговор был ну удивление длительным для первого разговора. Под конец разговора она мне предложила выполнить тестовое задание, девушка уточнила что должно занять не более 5 часов. Я согласился.

Само ТЗ:
Тестовое задание для PHP-программиста

Необходимо разработать модуль для работы с SMS-биллингами.

Модуль должен состоять из 3х частей:
1.Скрипт, принимающий запросы от SMS-агрегатора (формат запроса описан ниже), генерирующий и отправляющий в ответ пароль (который будет отослан пользователю)
2.Простой админский интерфейс просмотра истории сгенерированных паролей (должно выводится последние 100 паролей)
3.Заглушка премиум-зоны (для доступа в котрую пароли и генерируются)


Требования:
PHP5 + Mysql
В БД должны сохранятся все данные, полученные от агрегатора
Механизм отправки паролей должен быть отказоустойчивым (на случай отказа БД)
Пароль генерируется на 1 день, в случае, когда для данного номера телефона уже есть пароль - новый пароль не генерируется, а увеличивается срок действия старого
Отправляемый пароль должен быть буквенно-цифровым и не должен содержать букв, которые могут быть восприняты с ошибкой (например О и 0)
Ваш код должен быть простым и читаемым
Выбор парадигмы программирования остается за вами, однако вы должны суметь объяснить почему вы выбрали тот или иной подход
Срок разработки - не более 5 часов
Вы должны выложить модуль на какой-нибудь хостинг и прислать нам в архиве код + схему БД


Формат запроса к биллинговому скрипту:
http://www.yoursite.ru/dir/script.php?pref=hitfm&txt=Передайте+Привет+Мне!
&tid=1234-aasvs-3345.1332&cn=ru&op=beeline&phone=79031234567&sn=8385

pref - Ключевое слово (префикс) в латинице
txt - Текст сообщения после ключевого слова.
tid - Уникальный код транзакции (transaction id)
cn - Двухбуквенный код страны
op - Оператор связи
phone - Номер телефона абонента (Только цифры, без знака «плюс» в начале)
sn - Короткий номер, на который было отправлено SMS-сообщение


Собственно ТЗ явно не на 5 часов, с моим более чем 3-х летним опытом это заняло намного больше времени ( делал почти до 4-х часов ночи ). Выкладывать на хостинг я не стал, просто отправил архив.
Получился довольно приятная система. Результатом я остался доволен.

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


Отмазка про "неправильная структура БД" — полный бред ибо использовалась только одна простейшая табличка.

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

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

Кто что думает по этому поводу?
Re: тестовое задание в фирму X - развод??
От: Tom Россия http://www.RSDN.ru
Дата: 25.08.10 13:29
Оценка: +1
D>Отмазка про "неправильная структура БД" — полный бред ибо использовалась только одна простейшая табличка.
Может в этом и проблема? Что за таблица — опиши.

D>Кто что думает по этому поводу?

Нечего делать какие либо тестовые задания вообще, и тем более когда они смахивают на реальное ТЗ
Народная мудрось
всем все никому ничего(с).
Re[2]: тестовое задание в фирму X - развод??
От: Diaver Россия  
Дата: 25.08.10 13:32
Оценка:
Здравствуйте, Tom, Вы писали:

D>>Отмазка про "неправильная структура БД" — полный бред ибо использовалась только одна простейшая табличка.

Tom>Может в этом и проблема? Что за таблица — опиши.

Вот табличка — куда уж проще.
CREATE TABLE IF NOT EXISTS `requests` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`pref` varchar(10) NOT NULL,
`txt` varchar(125) NOT NULL,
`tid` varchar(30) NOT NULL,
`cn` varchar(2) NOT NULL,
`op` varchar(20) NOT NULL,
`phone` varchar(16) NOT NULL,
`sn` varchar(5) NOT NULL,
`password` varchar(32) NOT NULL,
`created` datetime NOT NULL,
`modified` datetime NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8
Re[3]: тестовое задание в фирму X - развод??
От: MozgC США http://nightcoder.livejournal.com
Дата: 25.08.10 13:42
Оценка:
А почему не использовали TIMESTAMP?
И еще названия колонок имхо слишком короткие, приходится додумывать что они значат.
Re[4]: тестовое задание в фирму X - развод??
От: Diaver Россия  
Дата: 25.08.10 13:50
Оценка:
Здравствуйте, MozgC, Вы писали:

MC>А почему не использовали TIMESTAMP?

MC>И еще названия колонок имхо слишком короткие, приходится додумывать что они значат.
Названия колонок полностью совпадают с параметрами запроса. Можно было и TIMESTAMP, на мой взгляд не принципиально.
Re: тестовое задание в фирму X - развод??
От: wety Россия  
Дата: 25.08.10 13:52
Оценка: +3
Здравствуйте, Diaver, Вы писали:

Уже судя по ТЗ можно было явно определить, что это развод и попытка сделать часть работ из ТЗ забесплатно.
Вышли, пожалуйста, название компании мне в личку.
Re[2]: тестовое задание в фирму X - развод??
От: Diaver Россия  
Дата: 25.08.10 13:59
Оценка:
Здравствуйте, wety, Вы писали:

W>Уже судя по ТЗ можно было явно определить, что это развод и попытка сделать часть работ из ТЗ забесплатно.

W>Вышли, пожалуйста, название компании мне в личку.

Отправил
Re[2]: тестовое задание в фирму X - развод??
От: Diaver Россия  
Дата: 25.08.10 14:01
Оценка: 3 (1) +1
Здравствуйте, wety, Вы писали:

W>Здравствуйте, Diaver, Вы писали:


W>Уже судя по ТЗ можно было явно определить, что это развод и попытка сделать часть работ из ТЗ забесплатно.

W>Вышли, пожалуйста, название компании мне в личку.

Полностью с тобой согласен, это мой первый такой опыт. Нынешнюю работу я нашел только предварительно выполнив тестовое задание, правда оно было на 20 минут работы.
Re: тестовое задание в фирму X - развод??
От: Toetomi Россия  
Дата: 25.08.10 14:11
Оценка:
D>Отмазка про "неправильная структура БД" — полный бред ибо использовалась только одна простейшая табличка.

Все правильно сказали. Зачем в одной таблице хранить повторяющиеся коды операторов, короткие номера и т.д.
Re[2]: тестовое задание в фирму X - развод??
От: Diaver Россия  
Дата: 25.08.10 14:13
Оценка:
Здравствуйте, Toetomi, Вы писали:

D>>Отмазка про "неправильная структура БД" — полный бред ибо использовалась только одна простейшая табличка.


T>Все правильно сказали. Зачем в одной таблице хранить повторяющиеся коды операторов, короткие номера и т.д.


Требования:
PHP5 + Mysql
В БД должны сохранятся все данные, полученные от агрегатора
Re[3]: тестовое задание в фирму X - развод??
От: Diaver Россия  
Дата: 25.08.10 14:17
Оценка:
Здравствуйте, Diaver, Вы писали:

D>Здравствуйте, Toetomi, Вы писали:


D>>>Отмазка про "неправильная структура БД" — полный бред ибо использовалась только одна простейшая табличка.


T>>Все правильно сказали. Зачем в одной таблице хранить повторяющиеся коды операторов, короткие номера и т.д.


D>
D>Требования:
D>PHP5 + Mysql
D>В БД должны сохранятся все данные, полученные от агрегатора
D>


Сорри, не внимательно прочитал.
Справочники можно было создать, честно говоря об этом не подумал, это повод для категоричного отказа?
Re[4]: тестовое задание в фирму X - развод??
От: Toetomi Россия  
Дата: 25.08.10 14:19
Оценка:
D>Сорри, не внимательно прочитал.
D>Справочники можно было создать, честно говоря об этом не подумал, это повод для категоричного отказа?

Это повод назвать структуру БД неправильной.
Re[5]: тестовое задание в фирму X - развод??
От: Diaver Россия  
Дата: 25.08.10 14:22
Оценка: :))
Здравствуйте, Toetomi, Вы писали:

T>Это повод назвать структуру БД неправильной.


Если вывести эти данные в отдельные справочники, то в основной таблице надо все равно хранить id-шники записей из справочника, порождая при более сложные запросы и логику приложения, хотя в целом вы правы, так было бы правильно.
Re: тестовое задание в фирму X - развод??
От: Alexey Neorov Россия  
Дата: 25.08.10 14:41
Оценка:
Здравствуйте, Diaver, Вы писали:

D>Кто что думает по этому поводу?


Ну ты всё правильно подумал, бесплатно написал для них модуль. А к чему придраться для формальной причины отказа они нашли, ты сам это уже понял.
Re[6]: тестовое задание в фирму X - развод??
От: vb-develop  
Дата: 25.08.10 14:41
Оценка: +2
Здравствуйте, Diaver, Вы писали:

D>Здравствуйте, Toetomi, Вы писали:


T>>Это повод назвать структуру БД неправильной.


D>Если вывести эти данные в отдельные справочники, то в основной таблице надо все равно хранить id-шники записей из справочника, порождая при более сложные запросы и логику приложения, хотя в целом вы правы, так было бы правильно.


Такие рассуждения могут говорить об отсутсвии хорошего релевантного опыта разработки.
Re: тестовое задание в фирму X - развод??
От: Vladek Россия Github
Дата: 25.08.10 14:45
Оценка:
Здравствуйте, Diaver, Вы писали:

D>Итак история следующая.

D>На мое резюме выложенное на hh.ru откликнулась одна компания (пока называть ее не буду).

Называй. Если контора на самом деле белая и пушистая, их репутация не пострадает.
Re: тестовое задание в фирму X - развод??
От: __kot2  
Дата: 25.08.10 15:03
Оценка:
да, мне кажется, достаточно красивый развод. уволился наверное чел важный, а нужно было срочно сделать эту систему. отдадут ее студенту и будет он ее дорабатывать и поддерживать еще года два.
стоит назвать контору
Re[7]: тестовое задание в фирму X - развод??
От: Diaver Россия  
Дата: 25.08.10 15:46
Оценка:
Здравствуйте, vb-develop, Вы писали:

VD>Такие рассуждения могут говорить об отсутсвии хорошего релевантного опыта разработки.


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

Контора embria.
Re[2]: тестовое задание в фирму X - развод??
От: Abalak США  
Дата: 25.08.10 15:56
Оценка: 1 (1) +9
Здравствуйте, __kot2, Вы писали:

__>да, мне кажется, достаточно красивый развод. уволился наверное чел важный, а нужно было срочно сделать эту систему.


За 5 часов (даже за 12)? Модуль без интеграции во внутреннюю инфраструктуру? От готового модуля, там процентов 10. Скорее всего начальство хотело тестовое задание, а программерам было лень выдумывать, что-то абстрактное, вот и взяли кусок из проекта и упростили. Я сам категорический противник таких заданий, но на разводку это явно не тянет.

Кстати, по мне это больше программистская страшилка, что недобросовестные конторы пытаются создать работающий код из тестовых заданий, подтверждения которой а ни разу не видел.
... << RSDN@Home 1.2.0 alpha 4 rev. 1476>>
Re[3]: тестовое задание в фирму X - развод??
От: Diaver Россия  
Дата: 25.08.10 16:03
Оценка:
Здравствуйте, Abalak, Вы писали:

A>Здравствуйте, __kot2, Вы писали:


__>>да, мне кажется, достаточно красивый развод. уволился наверное чел важный, а нужно было срочно сделать эту систему.


A>За 5 часов (даже за 12)? Модуль без интеграции во внутреннюю инфраструктуру? От готового модуля, там процентов 10. Скорее всего начальство хотело тестовое задание, а программерам было лень выдумывать, что-то абстрактное, вот и взяли кусок из проекта и упростили. Я сам категорический противник таких заданий, но на разводку это явно не тянет.


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


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