Madhav Sharan is a software engineer with a decade of industry experience and over three years focused on data processing for Siri at Apple. His background spans high-impact roles at Goldman Sachs and MakeMyTrip, research work at USC under Professor Chris Mattmann, and an internship at NASA-JPL, blending production engineering with applied research. He contributes to notable open-source projects like Apache Tika—adding video classification via TensorFlow/OpenCV—and built browser-based fetching for the Sparkler web crawler, showing strength in both ML integration and scalable backend systems. Comfortable across research and enterprise environments, he brings a pragmatic, hands-on approach to solving data extraction and retrieval challenges.
10 years of coding experience
5 years of employment as a software developer
Master's degree, Master's degree at University of Southern California
Bachelor of Engineering (BE), Bachelor of Engineering (BE) at Thapar Institute of Engineering and Technology
The Apache Tika toolkit detects and extracts metadata and text from over a thousand different file types (such as PPT, XLS, and PDF).
Role in this project:
ML Engineer
Contributions:17 commits, 5 PRs, 31 comments in 2 months
Contributions summary:Madhav's primary contributions focused on integrating video classification capabilities within the Apache Tika framework. They implemented and refined an API for video classification using TensorFlow and OpenCV, integrating with the existing Tika infrastructure. The user modified an existing Python script to include various frame extraction methods and refactored the code to support a V4 model and the utilization of OpenCV 2 and 3, indicating a focus on improving the project's video recognition capabilities. The user also updated the Java code to point to the correct version of the API.
Spark-Crawler: Apache Nutch-like crawler that runs on Apache Spark.
Role in this project:
Back-end Developer
Contributions:8 commits, 1 PR, 8 comments in 16 days
Contributions summary:Madhav focused on developing a browser-based fetcher plugin for the Sparkler crawler, modifying the existing code to integrate the JBrowser library. They implemented features to load web pages within a browser environment, returning the HTML content. The user also refactored the code, introduced a default fetcher, and addressed specific edge cases, such as non-HTML content, to improve the crawler's flexibility and resilience. Furthermore, the user enhanced the plugin to provide quick render options and default error handling.
pythonsolrweb-crawlernutchtika
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.