I am currently seeking (potentially multiple, fully-funded) Ph.D. students interested in programming languages and software engineering research for an NSF-funded project on analysis and transformations for (imperative) Deep Learning (DL) programs. The project—based in the heart of New York City—focuses on enhancing the robustness, increasing run-time performance, and facilitating the long-lived evolution of DL systems, particularly, large, industrial DL systems. For more information on the project, please see the project announcement.
Potential research topics explored during the project may include (static/dynamic) program analysis and transformation (e.g., automated refactoring) and empirical software engineering. Successful candidates will be expected to work on projects that generally yield open-source developer tool research prototypes, plug-ins to popular IDEs, build systems, or static analyzers. Applicants may find additional information on the PI’s web page. They should also apply to the City University of New York (CUNY) Graduate Center (GC) Ph.D. program in Computer Science (deadline January 15) following a discussion with the PI.
Please see below for additional details on applying. Again, the Ph.D. program deadline is January 15.
This form does not serve as a “pre-application” process. Prospective students interested in attending the university should follow the appropriate application process. I cannot inform prospective students of their likelihood of being admitted to the program. Admission decisions are made by a committee and not an individual faculty member. This form should only be used for students interested in working with me that would like to discuss potential projects. Otherwise, prospective students should apply to the program directly. If desired, prospective students may list me as a faculty member they would like to work with.
Topics of Interest
- Static code analysis
- Dynamic code analysis
- Deep Neural Networks
- Program transformation
- Automated refactoring
- Software evolution
- Empirical software engineering
programming languages, software engineering, automated refactoring, static analysis, dynamic analysis, IDEs, developer tools, software evolution, deep learning, imperative programs, hybrid programming paradigms, empirical studies
The Ph.D. studentship is fully-funded. CUNY provides competitive funding packages. Potential applicants may find funding information on the CUNY GC website.
Expected Skills and Qualifications
Successful candidates will have earned either a BS or MSc degree (or equivalent) in Computer Science or a related field. A successful candidate will have a solid practical and theoretical background in the following areas. Note, however, possessing all such skills does not necessarily disqualify applicants:
- AI, Machine Learning, Deep Learning, analytics, and data mining.
- (Object-Oriented) programming languages.
- (Front-end) compilers.
- Data structures.
- Software design patterns.
- Software testing.
- Software engineering tools, e.g., IDEs, build systems, version control.
- Data mining, software repository mining (MSR).
- Empirical software engineering.
Successful candidates may also have the following:
- A strong mathematical logic, statistical, and set-theoretic foundation.
- Industrial experience.
- Software engineering skills.
- High-quality analytical skills.
- Experience in developer tool design and implementation, relational databases, and statistical software (e.g., R, spreadsheets).
Please complete the following form. Please note that partial form submissions can be saved for later completion.
The City University of New York – CUNY’s Graduate Center Ph.D. program in Computer Science information and requirements regarding admission is available here. Note the deadline for Dec 15.The Computer Science program requirements are listed here. Also note that the college program requirements may include a GRE. International students are encouraged to visit this web page for more information regarding international requirements.
"*" indicates required fields