PhD in Software Engineering¶
I am currently recruiting PhD candidates in my areas of interest in the field of Software Engineering. If you have strong object-oriented design and development skills and you would like to join a world-class research group, please read on.
Who will I be working with?¶
You will be working with an international world-class team of academics, post-doctoral researchers and PhD students. Our research group has a strong track record of collaboration with industry and we are leading the development of one of the most widely-adopted open-source model-based software engineering platforms, Epsilon, which is used in organisations and companies such as NASA, BAE Systems, IBM, Thales and Siemens.
Top-10 for Computer Science in the UK
In the last national research assessment (REF 2021), the Department of Computer Science ranked joint 9th (among 90 CS departments in the country) for the quality of our research.
Where will I be located?¶
Our research group is located in a modern, purpose-built building in the city of York, one of the most historic, picturesque and safe cities in the United Kingdom. I am also happy to consider applications for PhD by distance learning.
Britain's Best Place to Live
In 2018, York was named Britain's 'best place to live' in the Sunday Times list for its "perfect mix of heritage and hi-tech", described as a "mini-metropolis with cool cafes, destination restaurants, innovative companies - plus the fastest internet in Britain".
How can I apply for a PhD?¶
You can apply for a PhD through the University's online system. Please note that the most important part of your application will be your research proposal, where you are expected to explain the topic you wish to investigate in your PhD. A typical research proposal is 2-4 pages long (this is not a hard page limit).
Writing a research proposal¶
There is a lot of good advice on the web on how to write a good research proposal, including:
- Discussion on Ph.D. thesis proposals in Computing Science - H. C. Lauer, Newcastle University
- Writing a research proposal for applying for a Ph.D. in Computer Science - Hayo Thielecke, University of Birmingham
- Writing a Good PhD Research Proposal - FindAPhD.com
Common issues in research proposals I have received over the last few years include:
Lack of hypothesis/evaluation plan: Some proposals suggest developing a piece of software or a methodology without explaining the problem it is meant to solve or presenting a convincing evaluation plan. In your proposal you should try to clearly answer the following questions.
- Which specific problem will the proposed software/methodology solve?
- Why is this problem important? Has it been identified as a problem by other researchers?
- Is there any previous work on solving this problem in the literature? If so, what are its limitations that you wish to address in this work?
- Once you have developed the software/methodology you are proposing, how will you evaluate that it actually solves the problem it targets?
- What resources are required for your evaluation? (e.g. if you are planning to develop a methodology that needs to be evaluated by software practitioners, how are you going to get hold of them?)
Too broad/narrow: While a PhD is all about doing novel research and choosing your own path, you should keep in mind that it is a 3/4-year undertaking and that a non-negligible proportion of this time will be spent on reviewing literature, writing reports, papers etc. As such, an ambition to e.g. "simplify the development of cloud-based applications" is obviously unrealistic if you are referring to every possible type of cloud-based application. Of course on the flip side there are proposals with very limited ambition (e.g. a trivial extension of the applicant's BSc/MSc thesis).
Before you start writing your proposal, it is usually a good idea to contact me first so that we can discuss whether the topic you have in mind is in line with my research interests. If you don't have a specific topic in mind, I am happy to suggest projects that are aligned with my current research. In your introductory e-mail, please:
- state whether you have a specific research topic (or a broader area of interest) in mind
- attach copies of your CV and transcripts
- state why you have selected me as a potential supervisor for your PhD (e.g. have you read some of my papers that have inspired you? do you have a specific interest in one of my areas of expertise?)
- briefly explain how you plan to fund your PhD studies (i.e. are you applying for / have you already secured a scholarship? do you require funding from the University of York?).
- If you require funding from the University of York please let me know which of the available scholarship(s) you are eligible for.
What is the typical duration of a PhD in the group?¶
The typical duration of a PhD is 3-4 years. Being in a world-leading position in the field of model-driven engineering means that we will be able to help you select a cutting-edge topic for your PhD project so that you can engage in productive and fruitful research from the first year of the programme. In fact, many of our PhD students start publishing novel results from as early as the second year of their project.
What about scholarships?¶
Please have a look at this page for information regarding available University scholarships/funding. If you are unsure about your eligibility for a specific scholarship or about the level of support it provides (e.g. tuition fees only, fees and stipend) please contact the University's PGR administration team. When additional scholarships are available (e.g. from funded research projects in which I am an investigator), I announce them on this page.
Looking for a PhD in Machine Learning?¶
Over the last few years I have received a fair number of applications from students who wish to undertake a PhD in Machine Learning (ML). While I am not an expert in this field and I do not consider myself qualified to supervise a PhD in this area, I have some insights and advice to offer to prospective PhD candidates.
Machine learning systems can require vast volumes of training data and substantial computing resources to train and evaluate. If you are considering undertaking a PhD in this area, you should ask yourself (and your prospective supervisor) whether you can realistically expect to have access to suitable training data and to sufficient computing resources for the problem at hand. Optimistically assuming that the supervisor or the University has access to such data/resources, or that you can secure these through nebulous "industrial collaborators", is likely to lead to disappointment later in your PhD.
You should also be aware of the fact that Computer Science research is more fashion-driven than you might imagine: around 2010 the flavour of the day was Cloud Computing, in 2015 it was Big Data, and currently it is AI/Machine Learning. This unending shift of tides can make it tempting for researchers to periodically spice up largely unrelated research with the flavour of the day to make it more attractive to prospective students and funders. As such, if you decide to apply for a PhD in a fashionable topic, such as ML, I would strongly recommend choosing a supervisor who has a strong track record of publishing in relevant conferences and journals.