Start Application dependencies before main Applciation is started

with {:ok, pid} <- Supervisor.start_link(children, opts) do
  {:ok, things} = MyDependency.list_things()
  {:ok, pid}
end

You need to start the supervisor (and therefore its children) before you can expect the children to run.