Полное описане тестового задания в файле back-end_developer_test_task.pdf
Необходимо реализовать серверную часть сервиса для предоставления торговому терминалу текущих котировок и исторических данных для построения графиков.
Основные функции сервиса:
- Получать текущие котировки по инструментам с сервера котировок;
- Из полученных котировок обновлять и хранить историю для построения графиков «японские свечи» для всех периодов;
- Реализовывать возможность получения истории для построения графика frontendчастью;
- Реализовывать возможность получения текущих котировок для построения таблицы и обновления последней точки на графике.
Для выполнения этой задачи я изучил фреймворк CodeIgniter - простой и удобный при работе с контроллерами и представлениями, но для нормального ORM и моделей нужно прикручивать что-то еще, например, Doctrine
Все четыре пункта бек-енда реализованы. Здесь нет реализации фронтенд части с построением графиков. Также можно улучшать в сторону кеша апи и запросов в БД, виртуальный хост апача или конфиг nginx в разделе установки, но это требует неприлично много времени для тестового задания.
Что было написано именно мной (чтобы не шерстить весь фреймворк в поисках моего кода):
- модели application/models/
- контроллеры application/controllers/
- демон application/daemons/
- пара файлов об установке install/
- CLI режим cli.php