There are too many Experts who have given answers. But as a new one in a startup, I will give you just one simple suggestion. Don't take my words "suggestion" as another meaning. I am suggesting to you because I have faced too many problems in my career.
First one is you should hire a developer. Don't give your project to outsourcing. Because if you will hire someone you can exchange ideas on what you want and what they have to do. If in mid-project you want to change directions or make updates you can. But in the case of outsourcing, it will bother all of you.
If you hire a developer, he should never feel that its startup.
The main point you should remember that if you don't have programming knowledge, never let him feel. Tell him/her that you are master in programming. Otherwise its damn sure he/she will cheat you. They will tell you 7 days for 3 days work. I am a victim of such things.
And at last best of luck (it always works with hard work).
Definitely, you need to have a person who understands and knows programming as a team member and then you can outsource developers for your project.
First up, congrats on your new venture!
In my view, the best strategy that works is that you have a tech member like a CTO that's internal to you and under him, you can build an outsourced team. This way you still have some level of control as opposed to completely be dependent on the outsourced developers.
Feel free to reach out should you have more questions, thanks!
It is better to outsource development work and concentrate on core business development. Once your business establishes, you can hire developers, this is because development work will require team of developers. If you are not able to utilize development team, it becomes liability.