Designing Tools to Enhance Best Practices in Research Software Engineering
\textbf{Background:} Research software engineers (RSEs) develop software to advance research across disciplines. However, RSEs rarely adopt the best software engineering practices—activities to enhance the development and maintenance of software. This can lead to negative consequences, such as increased development effort and inaccurate study results. \textbf{Method:} We conducted two participatory design workshops with RSEs to understand development challenges and explore possible design affordances to overcome those challenges. \textbf{Results:} Our findings reveal that RSEs struggle in various aspects of programming, such as debugging and understanding codebases, and face unique challenges, including selecting programming languages that best suit their needs and adopting developers’ mental models. Our findings also reveal that RSEs desire novel tools that support research development tasks—prioritizing code translation, code understanding, and communication—leveraging the power of large language models (LLMs). \textbf{Conclusion:} Our paper offers valuable insights and future research directions for designing tools to assist RSEs in adopting beneficial software engineering practices.