async backend - split tasks