From experiments to systems: DS lessons for better software engineering
Speaker
Jaunė Malūkaitė
I am a happy software engineer (AI/ML) at CommonAI CIC based in Cambridge. The startup is completely new and founded by Cambridge University Computer Science department professors! Also, this October I graduated from MPhil in Data Intensive Science with Distinction at the University of Cambridge.
Before coming to the United Kingdom, I have worked as a Data Scientist at IBM Lithuania for almost 2.5 years and conducted research on transformer capabilities to classify ECG data at the Institute of Data Science and Digital Technologies in Lithuania.
Now during my spare time, I am contributing to open source projects and am learning more in depth about multi-agent systems and CUDA. Also, I am a part of Cambridge Enterprise entrepreneurs program and am preparing for my first triathlon!
Abstract
Transitioning from data science to software engineering doesn’t mean starting over, it means translating the scientific method into systems work. In this talk I would share the DS habits that most improved my engineering. I would also cover the gaps that surprised me and the concrete techniques that helped me close them. The talk would include useful tools related to hpc, multi-agent systems that help improve the code and runtime.
Description
Transitioning from data science to software engineering can be challenging not because the technical fundamentals are missing, but because the “definition of done” changes. In this talk I’ll focus on the hardest parts of that shift, based on my experience moving into software engineering at CommonAI (CIC Cambridge), and the practical ways I worked through them.
In the talk I would cover common friction points: moving from exploratory notebooks to expanding codebases, learning to design clear interfaces and make changes safely, writing tests that stay useful as the system evolves, and getting comfortable with code review, ownership, and trade-offs. I would share strategies that helped me turn ambiguity into a plan, how to break work into small, reviewable steps, and how to debug systematically.
I would also discuss challenges that tend to appear earlier than expected: operational reality (deployments, monitoring, incidents) and security basics (authentication/authorization, least privilege, secrets). Finally, I would briefly mention a few tools and workflows, including HPC-inspired performance practices and agentic tooling, that can reduce manual effort when refactoring, testing, and tracking bottlenecks.