We are looking to create a program structure within the system. We have programs with efforts underneath them, some of the efforts are not project level work, meaning they don't require the work of a project. I see there's an other work investment and would like to use that for the non-project work, but it is my understanding that you can not send resource requisitions for this work, that you can only allocate resources, is this correct? If so, who does the allocating and how do they request the resources from the resource managers?
How do others out there setup this non project work in the system?
Other Work is not intended for the purpose you described. it has both more overhead associated with setting up each instance for this kind of activity, and less functionality. Most organizations set up a support project with a name that incorporates the program name (so you can have one per program and have it roll up into the program), and with a name like <program name> Support Project. The small efforts that you describe are set as tasks on the support project. This lets you track against them, and easily add others as the needs arise. This structure will also allow you to use requisitions for the resources (or requests if you are using the Modern UX).
Other Work is generally used for administrative non-project activities like tracking PTO, Non-project meetings,Training and similar work.