Member of core Yahoo search personalization team. Processed data extractions for packages, hotels, flights, rental cars, and events. Improved code equality through monitoring tools such as Splunk and test coverage with clover.
At Raytheon, I designed and developed the control plane infrastructure of a system controller project. Derived functional requirements from customer requirements. After defining our goals and objectives, I utilize the Personal Software Process model (PSP) to record our design decisions.
This control plane infrastructure can handle parallel commands and processes requests through a custom message broker and message queues.
Due to the mission critical nature of our project, I stress test our code using unit tests such as GTest and through simulators and a command-line interface.
Software Engineer @ Yahoo Search Personalization
Re-designed JAVA transformer architecture to support new email pipeline.
Released Amazon package notification and reached over 14k views within 5 days.
Raised unit test coverage to over 85% of Java code.
Utilized Splunk with Hadoop to monitor logs from 24 production machines.
Search Middle-ware
Re-factored searcher code to support JSON configurations through parameters in addition to files.
Analyzed code using Eclipse debugger to identify key components affected by new features.
Added functional tests to verify JSON output utilized by front-end projects.
Search Distribution
Created simple tables to log partner usage of Yahoo search.
Raised unit test coverage to over 90% of JavaScript API. From April 2014 to Present (1 year 9 months) Software Engineer @ Backend Development
Improved performance by clustering data structures, nodes, and links sent to frontend visualization.
Drew statistics of data flow utilizing Python and RRDTool modules.
Parsed YAML configuration files containing user-defined preferences for graph settings.
Message Broker and System Controller
Designed and developed a mission critical messaging infrastructure of a system controller project.
Created multi-threaded message handlers and queues allowing for parallel processing of multiple commands, and implemented a publisher-subscriber application model.
Defined the project's IDL and user interface in YAML format.
Minimalized software defects through extensive unit tests using GTest, simulators, and a command-line interface.
Switch Control
Updated switch interfaces to allow the user to change operating modes of a device, switching, multi-casting, and multiplex identification.
Developed Perl scripts that can generate XML files modeling the physical layout of switches.
Analyzed and bench-marked the project’s performance boost of 53% on a Linux 64-bit machine.
Ported C++ code and tools from a 32-bit Linux platform to a 64-bit platform.
Implemented dynamically loaded c libraries to reuse common code.
Developed drivers to test function libraries inside a protected SCIF environment.
Utilized ZLib and Speex compression tools to minimize bandwidth usage. From September 2006 to March 2014 (7 years 7 months) Computing Consultant @ Provided technical support for all college residents and faculty.
Consulted students on virus/spyware detection and removal.
Diagnosed and repaired computers including network cards, drivers, and web proxy. From 2004 to 2005 (1 year)
Master of Science (M.S.), Computer Engineering, GPA 3.73/4.0 @ Santa Clara University From 2009 to 2012 Bachelor of Science (B.S.), Computer Science @ University of California, San Diego From 2002 to 2006 Long P. is skilled in: Perl, Java, Python, Linux, C++, MySQL, XML, Eclipse, Software Design Patterns, Object Oriented Design, Multi-threaded Development, Software Development, SCons, Jenkins, Unit Testing