I will share the advantages of both. You can choose whatever way you can work.

1. Outsource SEO

Advantages:
- You save time
- Your SEO provider will take care of most of the support activity required for SEO. For eg., content writing, design and development changes
- You need not to be up to date with SEO

Disadvantages:
- There might be some difficulties to your SEO provider to understand your business model or your industry
- Finding right SEO provider is a hectic task.
- If your SEO do some grey/black hat SEO you may see good result in short-term and a negative impact on your SEO in the long term

2. Doing SEO for yourselfAdvantages:
- Since you have a good understanding of your business and potential customers, it will be easy for you to sketch an SEO Plan
- There won't be any black hat/grey hat SEO
- You will be upto date with the SEO concepts

Disadvantages:
- SEO would require more focus and efforts compared to other works
- You need to search for support with respect to content writing, design and/or development updates