As part of your application you will write a research proposal a few pages long. I regard this as very important, since it is often the best information about someone's research potential. (A common problem is that people want to do PhDs in software engineering who are excellent software engineers but have no idea of what research is about: this is a recipe for disaster.) It does not have to be long, and what it proposes does not have to be your eventual topic, but it needs to demonstrate that you have the ability to think about a problem, do some investigation into the state of the art, and identify unsolved problems and a possible approach. Unfortunately it is common for research proposals to turn out to be cobbled together from different web pages: the associated applications get rejected!
Applications are managed centrally, see our PhD application page. If you want to work specifically with me, it is a good idea to contact me first, mention on your form that you've done so, and send me a copy of your form and research proposal by email, to ensure that I see the application promptly. Where you have to choose a specific subject to apply under ( this page), to work with me you should choose Laboratory for Foundations of Computer Science, for mainly bureacratic reasons (that's the institute where I sit, although one could make arguments for SE fitting elsewhere).