Software Engineering Research
Since I want to pursue graduate research in computer science, it became clear that I should start participating in CS research as an undergrad. I joined the Programming Languages and Software Engineering lab under Professor Mike Ernst to research and develop software tools, working to find better solutions to code merging. In an industry driven by collaboration, people are constantly writing and combining source code together. While current algorithms work for simple cases, they fail at more complex mergers, creating ugly “merge conflicts” that developers waste time resolving.
My previous research experience in surgical automation tools proved invaluable—the interdisciplinary problem-solving skills and research methodologies I had developed enabled me to quickly pick up this new project and become a contributing member of the team. This exemplifies my learning philosophy of applying knowledge practically; each research context builds upon the last, broadening my perspective and deepening my competencies.
Starting in spring 2024 and continuing through summer, I worked to evaluate the performance of various merge algorithms, seeking to understand where they fail and how we can improve them. Our work culminated in a paper, Evaluation of version control merge tools, published in ASE 2024. In October, I traveled to Sacramento to present our findings alongside the lead Ph.D. student. My past conference experience at SfN greatly helped my confidence and ability to take advantage of networking opportunities—demonstrating how each experience becomes a building block in my broader educational architecture. Importantly, this conference experience also helped me identify that software engineering wasn’t a field I was as interested in pursuing compared to computer graphics, guiding my future research direction.
The paper details can be found on Professor Ernst’s website