Приложение для решения задач по программированию, и как распараллелить это все

Пишу для диплома веб приложение, аналог leetCode. У меня уже работает основной функционал, но уже на финише я понял, что работает нормально это только для одного пользователя, а если зайдет несколько начнутся проблемы. Суть в том, что введенная пользователем программа сохраняется, компилиться и выполняется, но если несколько человек будут решать одну задачу, они будут пересохранять код друг друга и ничего не добьются. Мне сказали что можно изолировать эти задачи через Докер, но я им никогда не пользовался. Скажите, возможно ли это и как это реализуется