Understand, but I am talking about designing the hardware (schematic->board design->have boards made->assemble board/s->flash code, etc) myself which I have done in the past but always had somebody else for the programming portion
Someone who has got many, many years of programming in C, embedded microcontroller experience (real time). Can with a degree of difficulty, tend to cope with what you have just described. Even if they have NOT got expensive test gear (such as emulators, logic analysers etc etc). Possibly even without the manufacturers development boards. Which can be amazingly cheap (like $75), in some cases.
But if someone who has never done (embedded real time C) programming on a microcontroller, with a reasonably complicated task to do/perform.
They will probably find the lack of pre-installed operating system (e.g. Linux), lack of diagnostic capabilities (No emulators etc), a really hard, uphill struggle, even to get it to do something quite simple. Let alone much more complicated things.
Peripherals tend to be difficult and fiddly/annoying to control in software, especially if you are completely inexperienced with them. There is a tendency if you get it wrong, at times, for the unit to just simply completely crash. Giving you no clue whatsoever, as to why, and what has gone wrong.
If you have got lots of time on your hands, and DON'T get frustrated easily, and really, really want to get your hands dirty, then do it.
It's much easier doing stuff like that in teams. Because you can split the work, and readily ask for advice from the many experienced engineers, who are working with you.
If you like. Try it for a few weeks and see how you get on. Without trying it, it can be difficult to put it into perspective, how hard and frustrating it can really be.
Analogy:
If there was someone who knew absolutely nothing about Electronics. Should they read a book on electronics for an hour or so. Then Design a 750 MHz 8 layer PCB, with complicated analogue/Digital circuitry, wave guides and create from scratch a large FPGA VHDL setup files ?
If it is a VERY simple, down to Earth task that your unit does, then things are not that bad.
EDIT: At times, I can be overly pessimistic and too negative. If others chime in with more confidence with this, please take that into account.
Since I'm not really sure exactly what you are trying to do here (overall, project wise), it is difficult to be accurate.
At the moment the project(s), could be anything, from a door bell unit, to a new control module for future space flights.