The software developers working on your core product should typically be different from the engineers that build interfaces - Integration Engineer.
Why is that?
The danger of having your core software development team build interfaces is that they can end up hard coding details of interface implementations within your core product.
This quickly becomes a problem to maintain.