Workflow scheduling takes more than 30 seconds

Would help to see your JSON history
tctl wf show -w <wfid> -r <runid> --of myhistory.json

However I have noticed that in many occasions…

Does this typically happen when your workers are experiencing high load or just randomly? Do you have SDK metrics set up and can look at workflow task latencies (see here for more info).