How to approach PhD studies in computer science (CS) in Germany

There are nowadays many guides for how to pursue a PhD in Germany, such as this one for TU Clausthal. While they tell you the ‘‘road’’ to PhD studies in Germany, by their focus on including all the steps around the organization of successful PhD studies, they don't provide a good picture on how you should approach PhD studies in Germany. In particular, the way to approach PhD studies in Germany is by looking for suitable funding, and then the rest just follows the funding. That makes a huge difference to how you apply compared to elsewhere, such as the US. This page was written to help those who are currently M.Sc. students and are interested in pursuing a PhD to get to know “how the rabbit runs” when coming from abroad and wanting to start PhD studies in Germany (in CS).

Main take-home points

  1. Everything follows the funding.

  2. The vast majority of PhD students are employed as “scientific assistants” (“Wissenschaftlicher Mitarbeiter”) while pursuing a PhD (estimated to at least 90% of the foreign PhD students in CS), with the majority on “third-party funding” (estimated to more than 85% of them in CS), so if you wish to pursue a PhD in Germany, you are searching for a scientific assistant position (most likely in the context of a funded project) that is suitable for doing a PhD while holding that position.

  3. Hence you want to first snatch a suitable “scientific assistant” position and then later after starting working on that position register for the actual PhD studies under the holder of the funding who pays you (normally the head of the respective research group).

  4. If you search for “PhD Studies Germany” or the like in Google, the information that you will get is mostly about the registration process as a PhD student. But since everything follows the funding, none of that matters before you snatched a suitable position.

  5. To understand all the information that you are reading about PhD studies in Germany, keep in mind that PhD students are not considered to be students in Germany's research landscape. It is not a coincidence that the German words for PhD students (“Doktorandinnen” in the female version and “Doktoranden” in the male version) do not contain “student” in them.

Why are these take-home points important?

These points above are important because they completely change the way one needs to approach PhD studies. Here are some reasons:

  1. A scientific assistant performs research, teaching, and a modest amount of administration under the supervision of a research group leader, most often a professor. Hence, the scientific assistant provides services that help towards achieving the overall aims of the research group.

  2. It is then the role of the group leader to ensure that you, the (hopefully) future scientific assistant, performs is suitable for later writing a PhD thesis about it and obtaining a PhD (in case you obtain good results)!

  3. The research that you perform needs to fit to the overall research aim of the research group. This will allow the research group to write future funding proposals supported by your results. The accepted proposals then fund the next bunch of scientific employees (or yourself if you happen to stay long enough).

  4. You can expect that over the years while holding such a position, a good amount of your time will be spent on research that can later be part of your PhD thesis. This will normally be the majority of your time. But you can't say “no” to things that your research group is responsible for, such as fulfilling the obligations from third-party funded projects, serving in committees, helping with teaching, representing your university at trade fairs, and so on. This is because the money from which the scientific employees are paid comes with these obligations. You can't expect to get paid for your PhD studies while not fulfilling the obligations that the research group needed to accept for getting the money.

  5. In case of the disruptions of the work of a member of the research group (maternity/paternity/parental leave, illness of long duration, etc.), the other members will need to take over some additional obligations. Everyone will need to do their part. A “no” is not an acceptable answer here.

  6. The reasons why the term “PhD Student” is disliked by a good number of research group heads in Germany is that it gives the impression of being taught. However, a scientific employee provides work for the research group and is not taught by somebody. If skills or knowledge is missing, there is the expectation that it will be acquired by the employee in a self-dependent way (e.g., by learning it from scientific books). The scientific advisor will typically help to a reasonable extent, but there is the expectation that the scientific employee takes the lead. It is also expected to share the acquired knowledge with the rest of the research group so that it becomes an expertise of the whole research group afterwards. This way of operation necessitates leaving the self-understanding of being a student behind, and considering yourself a “grown up” in your field of expertise who is now ready to make meaningful contributions to the state of the art….as needed for getting the results for your PhD thesis.

Note that even if you are funding yourself through scholarships while doing a PhD (which is rare case in Germany), knowing about what a scientific employee position is about is still helpful, as you will become a member of a research group that operates in the way needed to have scientific employees. Also scholarships eventually expire, and you want to be employable as a scientific employee after the scholarship ended.

So how will research groups make sure that their PhD students can still work effectively towards your PhD?

There are many reasons for why this combination of holding a scientific employee position while pursuing a PhD works out quite well in practice despite the necessity of scientific assistants to help with research, teaching, and administration:

  1. Third-party funded projects actually enrich the PhD experience if the PhD research topic and the third-party funded projects for which research is performed as part of the duties of the scientific employee are well in line. They allow you to get in contact with other researchers in the project and work together with them.

  2. A good research group head will try her/his best to bring the research project topics and the PhD topics of the scientific employees in the research group in line. A good advisor will also make sure that in the absence of major disruptions, more than 50% of the overall working time in a year can be spent on research overall (don't expect this to be the case for the individual weeks, though).

  3. Many of the things that you do apart from research while holding a scientific employee position gives you valuable experience as well. Having done teaching shows proficiency as a communicator. Having served in committees makes a great addition to a CV.

  4. A good research group head will try his/her best to balance non-research obligations between the group members.

  5. Since the scientific employee positions are treated as employment, they come with a salary (plus benefits), which is way better than any scholarship. Also, a full time scientific employee position (for holders of a M.Sc. degree, TV-L E13) currently (January 2023) pays better than an average starting salary in industry for a computer scientist. This is very good for a position in which a lot of the work you perform leads to a higher qualification level (namely, a PhD) in case of good results.

  6. Many universities offer some courses on professional development, and in a reasonable extent, these can be taken during working times.

So how to approach finding a suitable position to fund you while you are working towards a PhD?

  1. Forget about semester dates and the like. None of that matters for the funding, and the rest follows the funding.

  2. In case you know that there are openings in a research group or you want to see if if a research group you are interested in has any, contact the professor of that research group. However, observe the hints in the next section that apply. Understand that they will get many of these mails, most of which will be deleted right away, which is why you really want to take these hints into account - because following them demonstrates that the time reading your e-mail will be worth it.

  3. In any case, search for suitable openings for a scientific employee positions. These are the ones to be filled now or very soon, and hence your chances to get one are typically an order of magnitude better than when looking for scholarships of “cold-calling” research group heads. You want to focus on third-party funded positions if not speaking German, because the non-third party funds for scientific employees available to a research group come with obligations in teaching, and teaching is often at least partially in German - so giving these positions to non-German speakers is quite risky and hence rarely done.

  4. Suitable openings can often be found in subject-specific mailings lists, so sign up for these, and look at the past  3 months of their history for offers that are still valid. An example for such a mailing list is the TYPES Forum for the case of formal methods.

  5. If you apply for an open scientific employee position, make sure to signal in your application that you know what you are up to. It should not scream “I just want to do research towards my own PhD here and will do nothing else”.

So how to write a successful application?

First, Keep in mind that the primary selection criterion of the research group head to whom your are applying to is reducing risk. The money used for hiring comes with obligations, and you need to make clear that you will certainly fulfill these obligations. To show that hiring you is not a risk, in particular do the following:

  1. Show that you know what a scientific employee position is. Don't make it look like that you only want to do your PhD and be paid for this. If the scientific employee position comes with the possibility to do a PhD while holding it (normally the case), do mention your interest in doing that while holding the position, though.

  2. Make clear which scientific qualifications you have for work in the respective research group. Examples are:

    1. B.Sc. or M.Sc. thesis topics on related topics,

    2. concrete courses of relevance you took,

    3. projects that you did,

    4. software of scientific relevance to the topic that you developed or helped developing,

    5. perhaps books that you read on related topics,

    6. internships at relevant companies that you did,

    7. blog articles that you wrote on related topics,

    8. sub-topics of lectures relevant for the research group that you enjoyed and did well in in exams,

    9. relevant teaching activites that you did in the past

    10. etc.

  3. If you can't list any such scientific qualification for the working direction of the concrete research group in your application, think about what demonstratable expertise you have that enables you to do research on what the research group is working on, and include that. Obviously, by misinterpreting the research group focus and listing irrelevant information, you will make your application weaker. But if none of that is in your application, you are sending the message that you don't have the experience to even know what the research group is doing, disqualifying you even more. Even tiny bits of experience show that at least you know what you are up to.

  4. In any case, if you can't list any relevant experience, then your application will be very weak. This is because you can't expect to be taught on the basics of a field of research that the research group works on because PhD students are not considered to be students but “grown ups” in the German research landscape, and are expected to make meaningful contributions to the state of art pretty much right away. And for scientific employee positions, this is even more relevant, because you are expected to provide services for the success of the research group. If you really want to apply for a position anyway, for some positions you may get an interview anyway if you can provide evidence that you can master a new topic by just reading a text book on the topic. Did you ever do that? Write it then in your cover letter.

  5. If you have other qualifications, list them somewhere as well. But don't make it look like that you consider these your primary qualifications. An application for a programmer position looks entirely different to an application for a scientific employee position, as programming is only incidental to CS research. Submitting an application geared towards a programmer position will send the “I am a high risk candidate because I don't even know what this position is about” signal.

  6. Include transcripts for your degrees with grades. They will serve as initial documentation of proficiency in subjects relevant for the research of the research group. This is important because PhD students are not considered to be students any more, so they will not be taught and there is the general expectation that they bring most of the subject-specific knowledge with them when they are hired. Degree certificates are nice, but insufficient. Include them if they show that you graduated with distinction, though. If you haven't finished your Master's degree yet, include an official transcript showing the course/grade combinations that you have obtained already.

  7. Include a cover letter that explains why you think that you, the research group, and the concrete position are a nice match. Highlight relevant experience and the information on which you build your estimate that the fit is nice. If possible, show that you looked into a couple of research papers by including information about their work. Example: “I have noticed that your research group is one of the few addressing the problem of reticulating splines. For instance, I saw that in your CVR 2012 paper, you considered the abstract version of that problem, and in your CVR 2014 paper, you showed how to concretize this approach. I know the problem of recticulating splines from my embedded systems lecture during undergrad studies, and find it interesting that you work into a direction that was characterized as computationally difficult by my lecturer in 2016.

  8. Also provide information about your research interests. It is fine if this is broad, such as “As a student, I enjoyed both automata theory and infinite games. Since your research group has a line of research papers on this topic (e.g., CAV 2017, ATVA 2021) and the offered position is on infinite games as well, I would welcome the opportunity to discuss your research project further”. Including concrete paper references shows that you really thought about whether the research group is right for you, so that the time spent looking at your application further is not wasted by the research group head.

  9. Do, by all means, avoid statements that can also be made without looking at what the research group actually does, such as “I had a look at your research focus and it fits mine very well”. Such sentences have been seen 100000 times by research group heads and will immediately disqualify your application.

  10. Do not include a concrete research proposal. This makes little sense in Germany (for positions in the scope of third-party funded projects even more). You will start your research work with obligations from the respective project or work in a direction contributing to the overall goal of research group. So unless your research proposal fits the research group you are applying to very well, leave it out and just back up your stated research interests in what the research group does by concrete facts, such as your experience on the topic from past lectures or a thesis.

  11. There is no need for a statement of purpose and the like. It suffices if relevant information is in the cover letter. Presenting the relevant information in a condensed textual form is also the role of the cover letter. These letters are customary in Germany. You want to include one if you don't want to look like a high risk candidate (which not only means the risk of actually hiring you, but also the risk of the reader wasting her/his time by looking at the application).

  12. In your application documents and/or mail:

    1. Use a professionally looking e-mail address. Avoid “”, while “” is fine if Jack Johnson is your name. Your university e-mail address or the mail address provided by a professional association are even a little bit better.

    2. Configure your e-mail program to use your actual full name in the sender field and sign the mail with exactly the full name given in the sender field of the mail.

    3. Start the mail with a formal opening, such as “Dear Professor Jackson,”

    4. If you use HTML e-mails, format them nicely. No color changes (black and dark gray are not the same, by the way). Choose a uniform font and a uniform font size in the e-mail.

    5. In the e-mail, mention your research interest (e.g., “recticulating splines”) in the first three sentences and also note what makes you think that the research group is interested in that too. Normally, the research group should have a couple of publications on the topic that you can mention or have the interests listed explicitly on their website. Back up your research interests with facts (e.g., having written a thesis in the area, having given a seminar talk, having attended a lecture, etc.).

Of course, you are free to ignore any of this advice. According to German standards, there however appears to be no professional way of providing feedback to the applicant that the application was tossed out quickly because it contained too many red flags. This is also a part of the reason for why many out-of-the-blue applications will just be deleted without a reply by research group heads. So if you don't follow this advice because doing so is a lot of work….well, then you will never get to know that this is why you didn't snatch a scientific assistant position suitable for getting a PhD while holding it.

Important information about the process of getting hired and employment as a scientific employee

  1. Research group heads in Germany cannot make formal offers for a job (at least at public universities). There are multiple steps of document checking before a working contract can be issued, and all of these steps are not under the control of the research group head. This includes, for instance, checking that your police record is clean and formally checking if your degree certificate is valid and accepted here. All of these checks are only done once the hiring process is started. Hence, the best possible offer that a research group can make to a candidate is to start the hiring process for the candidate. The circumstances of the position will be written on the hiring process starting document which the future scientific employee will be expected to sign as well, so getting a copy of that is the closest thing to a formal offer letter that one can get in the German system.

  2. A crucial point are always starting dates for scientific employee positions. If a research group head makes an informal offer (see the point above), this is under the assumption that the starting date is not too far into the future (typical are 3 months). While there is often a bit of room for negotiations here, keep in mind that research groups are restricted by what they can offer in this regard. That is because the money for hiring scientific assistants comes with obligations, and they may start before you actually start. So obligations often pile up already before you can start. This means that if you first agree on a starting date with the research group head and then later wish to postpone the starting date, this will cause problems. Also, with a starting date too far into the future, some formal administrative requirements may not be satisfied any more, and then you cannot be hired.

  3. All offers to start the hiring process made by research group heads become invalid if they receive previously unknown information that show that you are unsuitable for the job. This can for instance be if after making the offer the head finds out that part of the M.Sc. thesis is plagiarized, that your visa for Germany is denied, that the good grade you got in a subject on a transcript conflicts with actual quite poor knowledge in that subject, etc.

  4. Job advertisements will often not contain concrete salary ranges, because in the public service, these are not under the control of the research group head, so it looks a bit fishy to publish them. It is also unclear what happens legally when the salary range given in the advertisement is not the correct one, so central HR departments of the university normally don't want them included. There is however a German web page with an unofficial calculator - Here, you will choose “E 13” as “Entgeltgruppe” for a scientific employee position requiring the holder to have a Master's degree. The rest depends on your personal circumstances (relevant job experience). Some positions are offered part time - fill in a lower value for “Arbeitszeit” than 100% then. These positions have lower pay (obviously), but have added flexibility (because obviously you can do pretty much whatever you want whenever you do not perform services for the university/research group). The page will also provide an expected net salary, but keep in mind that the precise final pay depends on so many things in Germany that nobody will give you a definitive answer. Also, the public employment salary is regularly renegotiated, so information becomes outdated quickly. So the information on the page only provides a non-legally binding guideline, but the factors affecting it are outside of the control of the hiring university, so they can't try to cheat you into a lower salary or the like. If you pick “Steuerklasse I”, you will normally get a lower bound on the net salary if you are not married (again, with exceptions here and there - for instance, in the state of Hessen, you have to use the “TV-H” instead of “TV-L” calculator with slightly different numbers; in Saarland and Bremen, you have to pay a low mandatory contribution towards some services available to all employees in the respective state; etc.). Keep in mind that the difference between gross and net salary includes health insurance contributions in Germany. Whether your children and spouse are covered by health insurance as well…is complicated. A research group head will not be able to tell, especially because for the legal status that most professors have, everything is different, and hence a professor's knowledge of how exactly the financial circumstances for scientific employees are becomes outdated after while.

  5. When agreeing on a mode of working with the research group, keep in mind that external influences may require a change of plans. For instance, if you agree on being physically present at the university for only 2 days a week with the research group head and working remotely for the other three days, what may happen is that the university puts a new rule in place allowing only 2 days of remote work per week, and then you will be expected to adapt.

  6. Now given that that the mode of operation in a research group is not guaranteed and concrete salaries are also not part of the informal offer made by the research group head, how can a foreign candidate for a scientific employee position know that the position will work out for them, both personally and financially? The key to understanding that this is reality not a problem is to notice that the things outside of the control of the research group are done within processes with employee representation. For instance, the salary is negotiated regularly by a union representing the employees of the public service as a whole, and that becomes binding for the university. Similar, rules for remote working are dictated by legal requirements and by decisions done together with employee representatives of the university. Finally, laws regarding academic employment are made in democratic processes affecting the whole country or state and thus it cannot happen that just you will get worse working conditions. At public universities, research group heads cannot overwrite central decisions. Note that these nuances are extremely difficult to bring across when interviewing candidates for positions, so it's quite common that as a candidate you will be just be told the current state of affairs when asking for the working conditions under the understanding that in case of a change of external circumstances things may need to change.


  1. The 90%/85% percent figures above are estimations by the author of this document and not scientifically validated. They may be too high when also including research groups that are in a mode of operation unsuitable for foreign PhD students (e.g., running for a few years without third party funding until the research group head retires). However, the author of this document estimates that when restricting attention to those research groups suitable for non-German speaking M.Sc degree holders, the 90% figure should be more on the conservative side, and so is the 85% number when considering those positions for which non-German speaking M.Sc. degree would be considered. And these are the percentages relevant for the reader of this document.

  2. International candidates may sometimes find it surprising that some open positions will rather be left open than hiring them. After all, somebody doing a little bit of work should be better than somebody not doing any work, right? Unfortunately, this is not the case in research. Even with knowledge on the area of research of a research group, a new scientific employee or PhD student needs guidance (which takes time) and will discuss their work with other members of the research group (which takes time, too). If the candidate is not actually interested in the area of work by the research group, he/she is likely to either (a) move to a different research group, (b) drop out, or (c) perform research unrelated to the aims of the research group. All three cases are worse than nothing for the research group! The money spent for the scientific assistant comes with obligations, which are not fulfilled in any of these three cases. Furthermore, time on advising that could also be spend on the research group aims is spent in all three cases, and in case (c), the research cannot be used for writing grant proposals later. So hiring an unfitting scientific assistant can easily lead to a negative net productivity, which a research group will need to avoid! These initial time investment in advising is however greatly invested if it enables the candidate to then contribute to the aims of the research group a bit later, and that this will happen is the main thing that research group heads will look for in applications. The tips for how to write a successful application above are derived from this necessity.