I worked for a company where the following circumstances held:
- sprints were two weeks long
- on each new sprint, the team I was heading was changing in members.
- on each new sprint, the team changed completely codebases (that is, on one sprint, they worked on software Foo using python and Qt, on the next sprint, they had to work on software Bar with Javascript and React, and on the third sprint, they had to work with terraform and node). Developers were mostly junior.
- none of the team members had any knowledge of the code, so planning was pretty much a big game of guesswork as we could not give an effort value to code and goals we knew nothing about.
- During one of the sprints, the team was performing work on two unrelated codebases at the same time. I internally divided the team in two, as their work was completely orthogonal.
- End of sprint were treated as deadlines.
The results were poor, but I am unable to say what of the above elements are expected and I simply could not cope with them due to lack of experience in these circumstances, and which are completely broken and the poor results are the consequence of forces outside my control.
Given the scenario, what is the possible course of action to salvage the situation as much as possible?