Dan Allan is a Data Engineering Group Lead and scientific software developer with 13 years of experience building open, reproducible data systems for large user facilities. Based at Brookhaven National Laboratory and rooted in a PhD in Physics from Johns Hopkins, he leads efforts in data management, secure remote access, and high-throughput experiment workflows that directly improve day-to-day science at NSLS-II. A pragmatist who champions open source, he chairs the technical steering committee of the widely used Bluesky project and authored Caproto, work that has influenced facility-scale data acquisition and hardware control. His contributions span core scientific Python projects—numpy, pandas, IPython, JupyterLab, and lmfit—showing fluency across back-end performance work and front-end usability improvements. He combines facility-scale engineering with hands-on experimentation experience (from designing microrheology software to running a high-volume science demo career), bringing both domain insight and a knack for making complex systems approachable.
13 years of coding experience
12 years of employment as a software developer
Johns Hopkins University
B.S. in Physics, B.A. in Music, and B.S. in Applied Math, B.S. in Physics, B.A. in Music, and B.S. in Applied Math at University of Rochester
Contributions:1 release, 997 commits, 82 PRs in 7 years 7 months
Contributions summary:Dan contributed to the codebase by making mux less picky about filenames and cleaning up feature comments. They modified code within the "mux.py" file to enhance video processing and added a new function to separate the connection as a function. Moreover, they worked on correcting frame indexing issues and included a new function called "batch_annotate" to further annotate frames. The user also added error handling to database connections.
Intake is a lightweight package for finding, investigating, loading and disseminating data.
Role in this project:
Back-end Developer
Contributions:6 reviews, 143 commits, 29 PRs in 2 years 3 months
Contributions summary:Dan primarily worked on improving the `RemoteCatalog` class within the `intake/intake` repository. Their contributions include implementing pagination features to handle large catalogs efficiently, making the page size configurable, and refactoring the code to improve performance and reduce unnecessary looping. They also focused on refining the server-side interactions to support pagination and enhance the catalog's ability to work with remote data sources. These changes collectively improve the scalability and efficiency of accessing remote data through the Intake catalog system.
pythondata-sciencedata-accessfindingsinger
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.