Gregory Oschwald is a Principal Software Architect with 13 years of hands-on experience building and modernizing backend systems, currently based in Forest Grove, Oregon and leading architecture at MaxMind. He has deep expertise in geolocation tooling and databases, contributing significant implementations and modernization work across MaxMind’s GeoIP2 libraries in PHP, Java, Python, Go, and C, plus tooling like geoipupdate and libmaxminddb. Gregory pairs low-level C memory-safety and performance fixes with higher-level API design and automation—refactoring codebases to use modern language features, adding robust tests, and automating release pipelines. His work on widely used open-source projects (MaxMind libraries and libpostal) demonstrates a rare blend of systems-level rigor and pragmatic developer ergonomics. Trained in mathematics, computer science and law, he brings analytical depth and meticulous attention to correctness in both code and process.
13 years of coding experience
Mathematics (graduate-level work), Mathematics (graduate-level work) at University of Minnesota
Doctor of Law (J.D.), Law, Doctor of Law (J.D.), Law at Yale Law School
BA, Mathematics, Computer Science, BA, Mathematics, Computer Science at University of Minnesota-Morris
Contributions:21 releases, 54 reviews, 348 commits in 9 years 8 months
Contributions summary:Gregory primarily focused on enhancing the benchmark mode of the `mmdblookup` utility, specifically targeting IPv4 addresses. They made the IP address optional in benchmark mode. Additionally, the user fixed issues related to the handling of invalid array indices and large numbers within the database lookup path. They also addressed code quality issues identified by Coverity and added tests to cover error handling scenarios.
Java API for GeoIP2 webservice client and database reader
Role in this project:
Back-end Developer
Contributions:24 releases, 211 reviews, 668 commits in 9 years 9 months
Contributions summary:Gregory primarily refactored the code to move records and models into their own namespaces and update the models to reflect that. Additionally, the user updated the GeoIP2 web service client to use the Java 11 HttpClient and used Java 11's JSON support. These changes seem to be focused on refactoring and refactoring and modernizing existing components of the Java API.
apiwebservice-clientgeoipwebservicemmdb
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
Gregory Oschwald - Principal Software Architect at MaxMind