Если программист хороший и нашел хорошую работу, то теоретически он может хорошо зарабатывать. Если плохой и всё плохо, то теоретически он может плохо зарабатывать или не зарабатывать вообще. Соответственно, посредственный программист-фрилансер будет в среднем теоретически зарабатывать посредственно.