What should an undergrad CS student know to publish to a conference? I'm a junior looking for insights on intro to academia. My GPA is considered low (~3.2), but I believe I have a reasonable understanding and experience in the field I'd like to study and would like to try to submit a paper to a conference to aim for top-10 CS grad schools and see if I really have research interest and potential.

I'm not sure what I should expect and how to plan for the next 1~2 years. Grad school applications are usually due before the spring semester, so I have roughly ~1.5 years to prepare, right? I noticed that the first deadlines for a lot of conferences in the field are between April~June. Will I have enough time to write one? How long does it usually take to publish a first research paper?

I'm planning on asking professors if I can join a project when the semester starts (or ask for a review when I write one? I'm not sure what the options are). I wasn't planning on going to grad school until recently, so I'm not very familiar with this process, and I'd like to hear what you think.
How long does it usually take to publish a first research paper?


That question depends on a lot of factors. Here are a few of them:


What is the significance of your research?
How much of your research is unique, novel, and relevant?
Will other computer scientists be interested in your findings?
How well can you write? How well can you organize your paper?
Where do you intend to publish?


Some conferences and publications are more competitive than others. (Put another way, some have a lower acceptance rate than others.) Much of that depends on who sponsors the conference or publication.

First, you have to do the research (this is not trivial). Significant findings need to come from that research (this doesn't always happen). You have to write that in a way that will appeal to the community (the community can be rather fickle sometimes). Lastly, you have to find some venue where the work can be presented (it's not always easy to find a good match).

If a paper gets rejected, it could be because:


The research doesn't report anything new or significant
The research doesn't report anything of interest to the community
The paper is poorly written
The paper doesn't cite other related research, leading to a credibility problem
There simply wasn't room for your paper in the publication, or it wasn't a good match for that venue


Getting back to your original question, you might be able to publish in a year, if everything goes very smoothly. However, that's a huge "IF." Even established researchers can spend years getting ready for a publication, only to see it be rejected by a committee. 

Publication can be a long and arduous process, with plenty of opportunities for obstacles, setbacks, and dead ends. It can be very hard to estimate a timetable, particularly for a first-timer going from start to finish.

Your best bet might be to see what's going on at your university, and see if you can get involved with an established, ohgoing research effort. Before you do that, it might be worth doing a self-evaluation first, so that you're prepared to tell a faculty member what you can offer the research team. For example, perhaps you're a crack programmer, and a research project at your institution needs some software written, in order to complete an experiment or simulation. That might be a more realistic way to get started as a researcher.