Interview with CS PhD Alumni Series: Dongcheng Li PhD’23
After years of diligent hard work, many PhD graduates go on to accept jobs at top companies, research facilities, government positions, and tenure-track positions at various Universities and other forms of academia. According to the most recent Census Bureau figures done in 2018, fewer than a 35 percent of United States residents have a bachelor’s degree. Fewer than 13 percent have a master’s degree and just over 3.5 percent have completed a doctoral degree. Simply stated, by earning a doctoral degree you’ll be joining a group of highly knowledgeable people in a specific field. You’ll have the opportunity to achieve goals in your chosen field that may not be available to others. And whether you choose to be an author; an educator; or an innovator adding knowledge, training, and research to your field; you will be considered an expert. With the following interview series, we hope to engage students who want to learn more about the PhD program by learning about those who have gone through it. We recently spoke to Dongcheng Li, a recent 2023 PhD graduate. Below is our conversation.
Can you tell me a little bit about yourself?
I was born in Wuhan, China. I finished high school at the Academy of the Pacific in Honolulu, Hawaii, in 2012 and went to the University of Illinois Springfield, Illinois. I received a Bachelor of Science in Computer Science from the University of Illinois Springfield in 2016. I then went to the University of Texas at Dallas in 2017 and started my graduate study in software engineering. I then received my Ph.D. in software engineering in August 2023. My research interests include software testing, software quality assurance, program repair, software fault localization, software defect prediction, software vulnerability detection, and evolutionary computation.
What was your primary area of research? What type of research were you doing while you were obtaining your PhD?
My primary area of research during my PhD was in Software Engineering, with a specific focus on Software Testing and Repair Automation.
Please explain your thesis in layman’s terms.
My dissertation addressed challenges such as low repair capability and patch overfitting in test-suite-based automated program repair by proposing novel methods to improve test suite adequacy, patch search space, algorithm search efficiency, and so on.
What inspired you to pursue a PhD?
Many of my family members hold PhDs and are successful in their fields, which were my key inspirations.
Why did you choose to pursue your PhD at UT Dallas?
UT Dallas appealed to me due to its highly regarded Software Engineering PhD program.
What made you decide to choose what you were studying?
As a graduate student, my struggle to fix unfamiliar code while working as a quality assurance engineer on a cross-platform project drove me to focus my PhD on automating software testing and repair across multiple programming languages and domains.
Describe your experience studying at UT Dallas.
My experience at UT Dallas was marked by a demanding academic program, supportive faculty, enriching research opportunities, and intellectually stimulating peers and colleagues.
Do you have any advice for future students seeking to obtain a PhD at the UT Dallas Computer Science Department?
Forge a strong relationship with your supervisor, stay organized, prioritize tasks, stay committed to your research topic, take advantage of available resources, and maintain a balanced lifestyle.
What type of obstacles did you overcome while obtaining your PhD?
The obstacles that I encountered included identifying a suitable research topic, balancing coursework with research, handling setbacks in research, and maintaining a work-life balance.
What would you say if you could go back in time to talk to yourself during the first year of your PhD?
I might advise my past self to be patient, open to new ideas, and remember that it’s a marathon, not a sprint.
What projects did you take part in while studying at UT Dallas?
One of the main projects I was involved in was Automatic Test Generation and Program Repair of Solidity Smart Contracts.
Where are you currently working, and how did your PhD help you get your current job? What was the job search like?
I will start working as an Assistant Professor at California State Polytechnic University in Humboldt starting August 15th. The job required a PhD in software engineering, which I obtained.
What type of work do you currently do? Have you kept up with your research?
My role at my new job includes but not limited to conducting research within key areas of Software Engineering, developing, and delivering a curriculum in the expansive fields of Computer Sciences and Software Engineering, securing research funding and disseminating my research findings through respected academic journals and conferences.