American style hierarchy, old school software
Pros
The products are at least doing some good in the world Probably a stable job regardless of your skill level
Cons
Teams that do not feel like teams - no lunches together, no chatting, barely talking enough to share necessary work information. Draconian management Bad offices, loud machinery noises in an open office setup. No creature comforts like armchairs or snacks or anything you may expect from elsewhere. Managers placed directly with their teams so that they can constantly supervise you. Forced office work, despite zero information sharing going on at the office, only on Teams. Bad software engineering practices. Code reviews are cursory at best, just another box to be ticked. If you want to have a large impact on the products as a software developer/engineer, you will not. You have to be a "Software Architect" to have any say in the structure of projects or any technical decisions. At least one, sometimes more, software architects per project, leading to extremely complex codebases for relatively simple end products. Totally over-engineered. Nobody has a clue about how to integrate software into medical testing. Every time a new medical certification/testing process begins, the software team management is totally confused for the first month or two, so the software teams are left standing around confused about what they're supposed to do. Middle management is rife in such a large company. So many management steps that seem to just get in the way and mix things up. Work/life balance seems fine if you're a contractor, but the rest of the employees are encouraged to work weekends.