Experience Monitoring for an Internet Titan

Apache | ChartDirector | FreeBSD/RHEL | HTML/CSS | JavaScript | MySQL | Perl

Summary

Built and maintained web tools for a Nagios-based experience management solution checking 10,000+ URLs worldwide daily & generating 63M measurements per month.
argus icon

Background

Yahoo invests a lot of resources into making sure that each of its properties is available around the clock. To assist in that task, a centralized, black-box service was created as part of dev tools to help everyone from senior management to service engineers monitor and understand the health of properties.

On the back-end, the service consists of the data store, a metrics collector, aggregation tools, and the configuration store (database-driven.) On the front end, there's dashboarding, custom reports, and a self-service configuration tool.

Achievements

  • Reduced workload of system engineers by creating (from scratch) a web-based, MySQL-driven, MVC-architected, self-service configuration tool for creation of and management of Nagios checks.
  • Led SCRUM-influenced development and improved the quality of the team's SE process by standardizing on & championing the use of Catalyst (an MVC framework in Perl.) Improvements included shortened dev cycles, the introduction of TDD, improved performance, & better documentation.
  • Created snappy, responsive interfaces using custom JavaScript along with YUI in conjunction with JSON-serving REST web services (Perl.) Also achieved performance gains through page-weight optimization.
  • Reduced development costs through the use of VMWare virtual machines for testing, building, and deploying as part of continuous integration. Implemented a packaged solution for automated regression testing using Firefox, Selenium, X, & WWW::Mechanize.
  • Praised in performance reviews (three years running) for communication skills, patience, and enthusiasm in assisting customers.

Other Contributions

  • Managed feature & bug-fix requests via Bugzilla within a day per our internal SLA.
  • Asissted users with configurations.
  • Performed technical interviews.
  • Mentored junior web developers.
  • Designed promotional materials (using Fireworks) for the team.