How to recruit PhD students when industry pays so much more?
The person who wants to go into industry is a different sort of person than one who wants a PhD. That isn't a universal, as some people want to do one to enable or enhance the other, but it is pretty generally true. You are likely a pretty good example yourself, so look at how you differ from those among your peers who chose as you did or otherwise.
Therefore, think of the possible pool of candidates as bifurcated and try to appeal to those characteristics that are more likely to appeal to those in the desired half (well, less than half, probably).
Future professors are likely more interested in ideas and personal growth and less interested in money. Both may want to do something to improve the world, of course, but in different ways. The potential PhD is more interested in deeper issues and longer term results than the general public. Future professors, especially, are obsessed with ideas and their development.
Another positive aspect of the professorate and the desire for a PhD is the ability, in the large, to control your own schedule. You work all the time, of course, but you get to decide when to work and (mostly) what to work on.
The people you probably are not going to attract are those with heavy life responsibilities already, and who really need that paycheck. On a more positive note, they are also more likely to want to do something now, rather than to work toward more distant goals.
If you actually have access to some of the people you want to attract, then introduce them to interesting parts of your research and those of colleagues. Take them to an advanced class that you teach in some esoteric subject - maybe even one for which you are the premier source in the world. That is very cool. If you have research labs and advise advanced students, take them to a lab and ask them to contribute - ideas if nothing else. Introduce them to your advisees and assistants. Show them how wonderful it is to work with other smart people on important problems.
When you speak to groups, emphasize the excitement of developing new ideas and how a new PhD is, at that moment, the world's foremost authority on some (perhaps small) thing.
Finally, convince them that they will never be bored and that if they work with you, you will never waste their time. Then live up to that promise yourself, of course.
Remember that a PhD is intended to be a training position, not a job. Unfortunately, too many supervisors see PhD students as workers rather than as trainees in education. To get excellent PhD students, you need to convince undergrads that they personally will benefit from the training you will provide (rather than just that they will have the 'opportunity' to do lots of work for you). You cannot compete on money, and it is unlikely you can compete on non-monetary benefits either (what university offers free food, free transport, free gym, high-quality office space...?). But perhaps you can compete on the training you can offer.
In your context, this either means:
- Find bright students who are not computer scientists and offer to train them to be computer scientists. For example, take on a talented biologist, sociologist or physicist who is motivated to learn your field.
- Design a cutting edge project that will push the limits of the field. Such a project will put the student in a position to apply for competitive faculty positions, a higher level entry to a company or to start their own company perhaps.
Of course, this all depends on the amount of effort you are willing to put in yourself. If you just want an assistant or someone who wont get in the way whilst you work on your own things, then you will need to accept a lower standard of student.
I am in the process of getting postdoc job in bioengineering field. Industry jobs are definitely an option here, so I have to consider why exactly I want to work in academia. I can share few reasons, hopefully it will help you understand the process from PhD student's perspective.
Why PhDs in engineering are willing to work for 5ish years at about 50% of industry wage rate?
- Lucrative project that will get them a faculty position. You can't get a "University Professor" title and your own lab in industry (vanity+independence)
- Good project that will build diverse skillset. In the industry job you will be pigeonholed into limited skillset. In academia you can learn hardware, software, wetware (molecular bio) all on the same project. Some people like that flexibility of learning
- Interesting project. My postdoc project will be either unique and advanced method (2x-10x current popular method) or another unique bio/translational project. Even if I don't make it in academia and quit, I will be able to say "I worked on this craaazy project" at parties. In software industry you are either prohibited from talking about work or work on some silly boring stuff like new billing system.
- You can potentially negotiate more independence. In academia work is abundant and good people are rare, hence good student will be able to ask for more independent project.
- Big name university that will potentially land you higher-paying industry job. Imagine working as software postdoc at Stanford versus NoName Uni. In Palo Alto the density of people is incredible, hence more potential to land very good software job (Google), especially if you as as PI know right people.
- Some medium-skilled people would probably appreciate laziness of academic job and lack of competition. I am not sure if that is good or bad for you.