I see there are good posts already, so if you answer some of those open questions I'm sure that would get some better-targeted responses for you.
In general though, like anything else, you need to go where your customers are. Developers and decision makers are probably going to be two different groups so make sure to get your messages nailed down for both. With developers, you need to look in places like Hacker News, Product Hunt, Reddit(MANY subreddits for devs!), Slashdot, meetups, dev conferences, etc. For decision makers, that's probably something like a mix of LinkedIn, conferences, SEO/SEM, and phone calls.
Regarding the 'when' of your question, you approach people when you have something of value that solves a problem they have.
If you're still in the weeds on building something, you probably want to get some early customers in pain that will work with you to build the MVP. Those early voices will convert to be customers (and recruit their friends) if you really do solve a problem for them.
If you're "done" with the MVP and are just starting to look for customers, you did that a little out of sequence but it's likely not fatal. Just hustle to get your message out to the right groups. A good strategy might include showing what you have and asking for feedback on it, rather than trying to sell outright. If your product scratches an itch, people will want to know how they can use it... and if not, you'll have good feedback for the next iteration.
Regardless, the MVP has to be useful and well-built, though... It can't be crap. That doesn't mean that it has to have everything from your final vision right now, but you can't put buggy, beta code out there and expect people to see a diamond in the rough. If you think of it in terms of a cake, it's easy to grasp - your MVP is a slice of cake, so you have the various layers including the delicious frosting on the top. Far too often people ship a MVP that's just a layer of cake and wonder why nobody wants it.