Уже много лет я занимаюсь промышленной разработкой на Dyalog APL — сотрудничал с банками, актуарными командами и независимыми квант-десками. Работа с массивами для меня — привычный способ описывать данные, а не редкий навык. Если в расчёте участвуют миллионы записей, вложенные таблицы ставок или ценовая поверхность, требующая переоценки каждые несколько секунд, Dyalog APL даёт возможность уложить всю логику в несколько ёмких строк, которые легко проверить, вместо тяжёлых циклов с трудноуловимыми ошибками. Мой подход прост: меньше строк, меньше багов, быстрые численные алгоритмы.
Чаще всего ко мне обращаются за моделями актуарного резервирования и прогноза денежных потоков, движками оценки опционов методом Монте-Карло, расчётами портфельного риска и VaR, аналитикой временных рядов, а также за переводом старого APL-кода или громоздких таблиц в аккуратные рабочие пространства Dyalog APL. Свободно применяю то, что нужно в реальных задачах: операторы ранга и ведущей оси, key и stencil, dfns и бессловесные цепочки, механизмы isolate и параллельного вычисления на нескольких ядрах, доступ к базам через SQAPL, интеграцию через Conga и dotnet. Когда требуется, стыкую Dyalog APL с Python и нативными библиотеками.
Итог сдаю чистым и с документацией. В комплекте — версионированное рабочее пространство либо набор скриптов, краткое описание каждой функции, тесты с ожидаемыми результатами и разбор, чтобы ваша команда дальше вела код сама. Горячие участки профилирую и оптимизирую, чтобы краткая запись оставалась и самой быстрой. Достался запутанный APL-проект, который боязно трогать? Разберу, объясню и аккуратно перепишу. Пришлите постановку, структуру данных и требования к скорости — верну развёрнутый план с этапами.
Чаще всего ко мне обращаются за моделями актуарного резервирования и прогноза денежных потоков, движками оценки опционов методом Монте-Карло, расчётами портфельного риска и VaR, аналитикой временных рядов, а также за переводом старого APL-кода или громоздких таблиц в аккуратные рабочие пространства Dyalog APL. Свободно применяю то, что нужно в реальных задачах: операторы ранга и ведущей оси, key и stencil, dfns и бессловесные цепочки, механизмы isolate и параллельного вычисления на нескольких ядрах, доступ к базам через SQAPL, интеграцию через Conga и dotnet. Когда требуется, стыкую Dyalog APL с Python и нативными библиотеками.
Итог сдаю чистым и с документацией. В комплекте — версионированное рабочее пространство либо набор скриптов, краткое описание каждой функции, тесты с ожидаемыми результатами и разбор, чтобы ваша команда дальше вела код сама. Горячие участки профилирую и оптимизирую, чтобы краткая запись оставалась и самой быстрой. Достался запутанный APL-проект, который боязно трогать? Разберу, объясню и аккуратно перепишу. Пришлите постановку, структуру данных и требования к скорости — верну развёрнутый план с этапами.