Getting accepted into a top level CS program.
yummyfajitas: Having gotten through this process for a Ph.D., albeit in a different field (Math), I'll answer this as best I can. My answers relate to getting a Ph.D.1. Don't wait. Opportunity costs are low right now (bad economy) and waiting hurts your chances. If you wait at least 5 years, you are > 27 when you start grad school. You graduate at age 32. That's over the hill. Many grad schools will flatly reject you for this reason.2. Publications might help, if they are solid technical works in peer reviewed journals. Industry experience could also help IF it's hardcore R&D work. Academics care relatively little about open source, unless you did something truly awesome (e.g., FFTW).3. Yes. R&D type jobs are the only jobs that won't hurt you when applying to grad school.4. GvR could probably get into a good grad school. Below that will probably not help very much.However, many places will give you a masters if you pay tuition. Don't expect to jump from the masters to Ph.D. track, however.