Hello,
I have many years of experience with databases including Postgres, MongoDB, MySQL. I've managed fairly large instances (hundreds of GBs and billions of rows) including standalone instances and sharded clusters with MongoDB. I'm also an experienced Linux user and Python developer.
How large is the dataset you are working with and what data does it hold? If your MongoDB working set does not fit into memory the performance can drop significantly. I would start with data / index analysis and OS monitoring (disk IO, CPU usage).
Best wishes,
iticus