I am a PhD candidate in Software Engineering at Carnegie Mellon University and the University of Porto (CMU Portugal dual degree), graduating in August 2026.
Developers naturally think and communicate in sketches, yet software is built purely through text. My research makes sketches a first-class interface to code, across three big ideas:
Running through all three is the question of how to evaluate generated artifacts at scale, from ensemble LLM-as-judge metrics calibrated against human raters (ASE'25) to reference-free scoring of diagrams with no ground truth (AutoSketchEval). See all publications
Open to Research Scientist / Research Engineer roles in AI for software engineering, agents, and reasoning.
") does not match the recommended repository name for your site ("").
", so that your site can be accessed directly at "http://".
However, if the current repository name is intended, you can ignore this message by removing "{% include widgets/debug_repo_name.html %}" in index.html.
",
which does not match the baseurl ("") configured in _config.yml.
baseurl in _config.yml to "".

Luís F. Gomes, Xin Zhou, Vincent Hellendoorn, Jonathan Aldrich, Rui Abreu, David Lo
Preprint — under review 2026
JupyterDraw automatically generates informal diagrams from Jupyter notebooks to help reviewers catch silent flaws (data leakage, improper evaluation) in AI-generated code. A controlled experiment with 26 participants found the visual overview caught +0.50 more flaws per task than a textual one, raising the share of reviews catching both planted flaws from 29% to 67%.
Luís F. Gomes, Xin Zhou, Vincent Hellendoorn, Jonathan Aldrich, Rui Abreu, David Lo
Preprint — under review 2026
JupyterDraw automatically generates informal diagrams from Jupyter notebooks to help reviewers catch silent flaws (data leakage, improper evaluation) in AI-generated code. A controlled experiment with 26 participants found the visual overview caught +0.50 more flaws per task than a textual one, raising the share of reviews catching both planted flaws from 29% to 67%.

Luís F. Gomes, Xin Zhou, David Lo, Rui Abreu
International Conference on AI Foundation Models and Software Engineering (FORGE) 2026
A vision paper introducing Visual Loop, a continuous visual development environment that keeps code and informal sketches in bidirectional synchronization. The prototype connects a code editor with a tablet-based visualization workspace, where freehand sketches are interpreted by multimodal LLMs grounded in static analysis and visual context — turning sketching from passive documentation into an active interface for software evolution.
Luís F. Gomes, Xin Zhou, David Lo, Rui Abreu
International Conference on AI Foundation Models and Software Engineering (FORGE) 2026
A vision paper introducing Visual Loop, a continuous visual development environment that keeps code and informal sketches in bidirectional synchronization. The prototype connects a code editor with a tablet-based visualization workspace, where freehand sketches are interpreted by multimodal LLMs grounded in static analysis and visual context — turning sketching from passive documentation into an active interface for software evolution.

Xin Zhou, Kisub Kim, Ting Zhang, Martin Weyssow, Luís F. Gomes, Guang Yang, Kui Liu, Xin Xia, David Lo
CORE A* International Conference on Automated Software Engineering (ASE) 2025
SE-Jury is an LLM-as-ensemble-judge metric that combines five distinct evaluation strategies to assess the functional correctness of generated software artifacts, with a dynamic team selection mechanism that picks the optimal subset of evaluators — cutting LLM API costs by ~50% while maintaining evaluation accuracy.
Xin Zhou, Kisub Kim, Ting Zhang, Martin Weyssow, Luís F. Gomes, Guang Yang, Kui Liu, Xin Xia, David Lo
CORE A* International Conference on Automated Software Engineering (ASE) 2025
SE-Jury is an LLM-as-ensemble-judge metric that combines five distinct evaluation strategies to assess the functional correctness of generated software artifacts, with a dynamic team selection mechanism that picks the optimal subset of evaluators — cutting LLM API costs by ~50% while maintaining evaluation accuracy.

Luís F. Gomes, Xin Zhou, David Lo, Rui Abreu
arXiv preprint 2025
An agentic LLM system that generates high-level visual documentation from source code, paired with AutoSketchEval — a reference-free evaluation framework (inspired by autoencoder reconstruction) that scores diagram quality with no ground truth, reaching AUC > 0.87 across 1,000 Jupyter notebooks.
Luís F. Gomes, Xin Zhou, David Lo, Rui Abreu
arXiv preprint 2025
An agentic LLM system that generates high-level visual documentation from source code, paired with AutoSketchEval — a reference-free evaluation framework (inspired by autoencoder reconstruction) that scores diagram quality with no ground truth, reaching AUC > 0.87 across 1,000 Jupyter notebooks.

Luís F. Gomes, Jonathan Aldrich, Rui Abreu, Vincent Hellendoorn
CORE A* International Conference on Software Engineering (ICSE) 2025
A VSCode assistant that turns hand-drawn ML workflow sketches into runnable Jupyter notebooks (79% structural accuracy, 49% reduction in coding), with a 19-participant developer study and an automated LLM-as-judge pipeline benchmarking sketch-to-code across GPT-4o, Gemini Pro, and Claude.
Luís F. Gomes, Jonathan Aldrich, Rui Abreu, Vincent Hellendoorn
CORE A* International Conference on Software Engineering (ICSE) 2025
A VSCode assistant that turns hand-drawn ML workflow sketches into runnable Jupyter notebooks (79% structural accuracy, 49% reduction in coding), with a 19-participant developer study and an automated LLM-as-judge pipeline benchmarking sketch-to-code across GPT-4o, Gemini Pro, and Claude.