Freelancing vs Full time job for Java developers