Liam Keegan

Scientific Software Developer at Heidelberg University

Heidelberg, Baden-Württemberg, Germany
email-iconphone-icongithub-logolinkedin-logotwitter-logostackoverflow-logofacebook-logo
Join Prog.AI to see contacts
email-iconphone-icongithub-logolinkedin-logotwitter-logostackoverflow-logofacebook-logo
Join Prog.AI to see contacts

Summary

🤩
Rockstar
🎓
Top School
Liam Keegan is a Scientific Software Developer with 11 years of experience building high-performance C++ and Python code for research and HPC environments, currently based at Heidelberg University. His background spans postdoctoral research and senior fellow roles at institutions including CERN, ETH Zurich and EPFL, where he developed and optimized MPI simulation codes, numerical solvers, and scientific tooling. An active open-source contributor, he has strengthened widely used projects such as PsychoPy (improving rendering stability) and SymEngine (modernizing builds and LLVM support), combining backend development with CI/DevOps improvements. Comfortable bridging research and software engineering, he brings practical experience in pybind11, SymPy integration, and GUI tooling for scientific workflows. Notably, he pairs rigorous academic training—a PhD in theoretical particle physics—with hands-on production engineering for neuroscientific and physics applications.
code10 years of coding experience
job3 years of employment as a software developer
bookDoctor of Philosophy (PhD), Theoretical Particle Physics, Doctor of Philosophy (PhD), Theoretical Particle Physics at The University of Edinburgh
bookMaster of Science (MPhys), Physics, First, Master of Science (MPhys), Physics, First at University of Oxford
languagesEnglish, French, Spanish, German
stackoverflow-logo

Stackoverflow

Stats
53reputation
2kreached
1answer
1question
github-logo-circle

Github Skills (17)

computer-algebra10
c-language10
python10
llvm10
mathematics10
cmake10
math10
computer-algebra-system10
numpy10
cprogramming-language10
psychopy10
build-automation9
performance-optimization9
experiment9
pyqt8

Programming languages (21)

C++CSSCPugCMakeHTMLSvelteJupyter Notebook

Github contributions (5)

github-logo-circle
symengine/symengine

Jan 2020 - Feb 2022

SymEngine is a fast symbolic manipulation library, written in C++
Role in this project:
userBack-end Developer & DevOps Engineer
Contributions:57 reviews, 133 commits, 78 PRs in 2 years 1 month
Contributions summary:Liam primarily focused on improving the SymEngine library's compatibility and build processes. They added support for LLVM 10, addressing deprecated features and modernizing code to align with newer compiler versions. The user also implemented performance optimizations, fixing segfaults and implementing compiler-suggested fixes to improve efficiency. Furthermore, the user contributed to CI/CD by improving the Travis build configuration with retry mechanisms.
manipulationmathmanipulation-librarycpptheorem-proving
psychopy/psychopy

Jul 2022 - Jul 2022

For running psychology and neuroscience experiments
Role in this project:
userBack-end Developer
Contributions:2 commits, 2 PRs, 1 comment in 1 day
Contributions summary:Liam primarily focused on improving the performance and stability of the `psychopy` library. They optimized color rendering performance by modifying the `Color` class, addressing cases with a contrast value of 1 and handling potential `ndarray` inputs. Additionally, the user fixed a bug related to joystick initialization by handling a `DeviceOpen` exception, ensuring the program's robustness. Furthermore, they updated the PyQt versions used in the GUI initialization.
neurosciencepythonexperiment-controlcognitive-scienceopenscience
Find and Hire Top DevelopersWe’ve analyzed the programming source code of over 60 million software developers on GitHub and scored them by 50,000 skills. Sign-up on Prog,AI to search for software developers.
Request Free Trial
Liam Keegan - Scientific Software Developer at Heidelberg University