Hannes Schulz is a Principal Research SDE with 17 years of experience building and shipping machine learning and deep learning systems, currently leading research engineering at Microsoft in Karlsruhe. His career progressed from academic research in deep learning and GPU programming to applied research scientist roles at Maluuba and a sequence of senior research positions at Microsoft, culminating in principal-level technical leadership. He contributes to open-source ML tooling—improving the nlgeval NLG evaluation API and hardening Hyperopt’s backend and tests—demonstrating attention to maintainability and reproducibility. Hannes blends strong research credentials (PhD in Computer Science) with hands-on backend engineering, making models and evaluation pipelines production-ready. Colleagues rely on him for bridging experimental prototypes and scalable software, especially in dialogue and language generation settings. He pairs rigorous academic training with pragmatic engineering: quietly fixing tricky test and dependency issues that keep complex ML libraries usable in real projects.
17 years of coding experience
17 years of employment as a software developer
Master’s Degree Computer Science, Master’s Degree Computer Science at The University of Freiburg
Doctor of Philosophy (Ph.D.) Computer Science, Doctor of Philosophy (Ph.D.) Computer Science at The University of Bonn
Bachelor’s Degree Cognitive Science, Bachelor’s Degree Cognitive Science at Universität Osnabrück
Evaluation code for various unsupervised automated metrics for Natural Language Generation.
Role in this project:
Back-end Developer
Contributions:4 releases, 6 reviews, 24 commits in 3 years
Contributions summary:Hannes primarily contributed to the `nlgeval` library by implementing and refactoring its Application Programming Interface (API). They added an Object-Oriented API and ensured backward compatibility with existing functionalities. Further contributions included correcting typos and refining setup configurations to incorporate external data directories. These improvements enhanced the library's usability and maintainability.
Distributed Asynchronous Hyperparameter Optimization in Python
Role in this project:
Backend Developer
Contributions:6 commits, 1 comment in 2 years
Contributions summary:Hannes primarily contributed to the backend functionality of the hyperopt library. They fixed bugs related to the `mongoexp` module, addressing issues with working directories and dependencies. The user also improved the testing infrastructure by adding and modifying tests related to utility functions and the `temp_dir` context manager. These changes focused on improving the reliability and usability of the library.
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.