There's a popular misconception in a lot of startup technology entrepeneurs in thinking that the IP (the code, the idea, even the list of customers) is what is of value or what makes the product.
What makes a customer buy your product over someone else's product is not that your product is unique, or can't be copied, or that they can't find the solution somewhere else...
It is that your product solves the problem in a way that is easy to use and most importantly: pleasant to use.
Basically, people want a product that implements a solution to a problem they have in the most painless way possible.
Hence, if you think about it, it is not your code or the idea of what your product does what is valuable. It is the execution of that idea.
Even so, I understand your concern of people simply reproducing your code and basically not paying you for it.
How do you plan on distributing your code? If you distribute your product's software as an executable or as code already flashed into your hardware board PCB or whatever the likelihood someone will take the time to decompile your code into something meaningful is minimal.
So to make a long story short: if you don't distribute the source code, the chances of someone copying your code is minimal because the effort of reverse-engineering your code is quite surely much more than simply writing the software from scratch for themselves.
So my advice to you is: develop your product without worrying about copy-cats. If you offer superior support, ease of use, and a general great user experience it is THIS what will give you the market edge. Remember, your software is not your product. It is a component of your product. And your product is not what gives your company value. Your solutions as a whole provide value for the customer, and the people you hire are what create value for your company.
Let me know if you'd like to chat more about this, I have oodles and oodles of real-life examples to tell you about!