Noncompete agreements can be necessary when you need to engage an entity that could compete against you. For instance, if you have invented a new software application and you need to engage a software development firm to code it for you, you may want to engage them under a noncompete agreement so that they do not develop their own design-around and produce a competitive product. The same holds for any other product where you need to engage outside services to assist you in the development or production process