1. A method of managing data comprising: in a memory system having an interface for receiving data from a host, at least one memory die having a plurality of layers, each of the plurality of layers having a different bit-per-cell data capacity, and a controller in communication with the interface and the at least one die, the controller: receiving requests to program data from a host; determining which of a plurality of predetermined programming cycles, comprising sets of a host data write programming operation and maintenance programming operations in at least one of the plurality of layers, to implement to program a fixed amount of host data associated with the received requests and result in freeing an amount of memory capacity for a subsequent host data write; calculating a programming interleave ratio for interleaving any maintenance programming operations and host data write programming operations for the fixed amount of host data in each of the plurality of memory layers based on the determined programming cycle; and after determining the programming cycle and the programming interleave ratio, executing the host data write programming operation and any maintenance program operations in the determined programming cycle according to the calculated programming interleave ratio.