A chat server, a streaming migration and a very long memory for failure: inside the consultancy turning Erlang’s telecom inheritance into working software.