I will not repeat what everyone else has already said, but I can add one thing.
You need to 'warm up' your IP address. You need to send a lot of non-spam email. MTAs will A/B test it: mark some as spam, mark others as not spam. Then they see if they get user spam reports or non-junk reports. They don't know you. The more you send (successfully, if everything is marked as spam by receivers it won't work), the more they start trusting you.
SparkPost allows the use of dedicated IPs and it has a warm up time. They tell everything about it in [0].
[0] https://support.sparkpost.com/customer/portal/articles/19722...