There's disagreement about what exactly makes you a systems programmer, but dealing with the reality that memory is finite is definitely a requirement.
You need mutation or garbage collection (and systems programming is the kind of environment where that's not just "someone else's problem").
Plenty of languages have immutable data without monads or even being statically typed. Clojure is a fine example. And there is also the somewhat popular https://immutable-js.com/ that brings the benefits of immutable data to JavaScript.