por experiência própria, estou colocando código no arquivo de serviço como padrão de serviço.
então em meu aplicativo rails eu tenho algo como:
app
models
services
some_super_cool_task.rb
que pode ser executado a partir da tarefa rake, sidekiq worker ou direclty no aplicativo (ação do controlador, etc.).
O melhor desta abordagem é que você pode testar esse código.
A tarefa de ancinho não é testável