The answer is circumstantial; there is no set time frame for when you'll have the experience necessary to work remotely. It could be one year, it could be three years- it all just depends. Though I'd strongly discourage a fresh graduate from picking up a remote job. It is highly unlikely you have the experience or knowledge necessary to be completely, or even mostly, autonomous. This will result in you consistently bugging coworkers, not getting projects done on time, and you finding yourself burned out in your first job. Working under pressure can be a hell of a thing and such pressure is likely to be hammering on you while working alone and facing those first waves of "programmer doubt". Except in this case, instead of when you were stressing about the bad grade you'd get from a project you knew wasn't going to be turned in on time, you now get to stress about getting fired with bills creeping in because you're learning for the first time that you don't know as much about programming as your university made you think you did. Trust me- nothing alleviates that stress more, or sets you up on a faster track to success, than a senior coworker knowing exactly what you're going through, taking you under his/her wing, and showing you the ropes. When you're working remotely, this face-to-face gained sympathy is not likely to occur. To put it curtly, I think you'll be missing out on several vital opportunities for early financial, technical, professional, and social growth.