John Gathogo is a Senior Software Engineer with 18+ years of experience building scalable, distributed systems and leading engineering teams across fintech and enterprise sectors, currently at Microsoft in Kenya. He combines deep .NET and backend expertise (C#, ASP.NET, Web API, OData) with solid database skills (MySQL, MSSQL, Oracle) and a history of driving architecture, standards, and mentoring at companies like JUMO and Central Bank of Kenya. An active open-source contributor to the widely used OData projects, he has fixed serialization bugs, improved dynamic properties support, and enhanced test coverage and routing in ASP.NET Core OData. Known for pragmatic problem-solving, he emphasizes reliability, performance, and measurable outcomes while shepherding features from requirements to production. His background in mathematics and computer science underpins a disciplined approach to system design and data correctness. Less obvious: he often focuses on edge-case robustness (e.g., returning empty enumerables vs nulls and fixing exponential decimal serialization) that prevents subtle production failures.
8 years of coding experience
16 years of employment as a software developer
B.Sc, Mathematics and Computer Science, B.Sc, Mathematics and Computer Science at Jomo Kenyatta University of Agriculture and Technology (JKUAT)
ODataLib: Open Data Protocol - .NET Libraries and Frameworks
Role in this project:
Back-end Developer
Contributions:8 releases, 1796 reviews, 90 commits in 2 years 9 months
Contributions summary:John primarily focused on modifying OData library's internal behavior, specifically addressing issues with operation import handling and data serialization. The user implemented changes to return empty enumerables instead of null values in specific scenarios. The user also addressed a bug related to the serialization of decimal values in exponential notation and open type property deserialization. Furthermore, the user introduced support for dynamic properties dictionaries, improving client functionality.
ASP.NET Core OData: A server library built upon ODataLib and ASP.NET Core
Role in this project:
Back-end Developer & Test Automation Engineer
Contributions:4 releases, 395 reviews, 8 commits in 2 years
Contributions summary:John primarily contributed to improving the test coverage and addressing failing tests within the ASP.NET Core OData project. Their work involved modifying test comments, fixing tests failing after porting features to OData 8.0, and updating public API baselines. They also demonstrated skills in improving routing features and supporting FromBody parameters for actions and functions. The user's commits suggest a strong focus on ensuring the quality and functionality of the OData library through testing.
aspnetaspasp-netnet-coreaspnet-mvc
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
John Gathogo - Senior Software Engineer at Microsoft