- Inventory management systems
- Employee records systems
- Health care records systems
- Etc.
Most of this work is about:
- Managing legacy tools and systems, much of which is diving into some complex mess for a few days to change one line of code
- Managing odd-ball one-off use-cases. If the customer has coupon code X, and is in Minnesota, do Y. If an employee was laid off on the last day in February in a leap year, do Z. Etc. These glum on and make spaghetti, and a lot of coding is just about getting stuff like this done.
- Long, boring meetings
- Documentation and, if you're lucky, test infrastructure
- ... and so on.
Technical performance matters a lot less than a whole bunch of other skills, and in most cases, hiring criteria are often "has a pulse." Most such systems use an "enterprise" stack (e.g. Java+Oracle or Microsoft tools).
I’ve worked on teams where there was a hood ornament manager and the real manager, usually carrying a Tech Lead semi-title.
Interestingly enough I’ve seen both be effective, but it’s a hell of a lot easier in the former case.