(Please email for address/phone info)
mphair [at] gmail [dot] com
Software Analyst and Developer
Software Engineer: Designed and implemented features for the flagship Insight product, including ones that are heavily used in sales presentations. Took ownership of legacy code and drastically increased reliability and functionality. Created data management tools for internal use. Taught python programming language to non-programmers in company to increase their effectiveness and access to our data.
Software Development Engineer: Office365 SPO Provisioning Team: Took ownership of several feature areas on short notice. Initiated and drove the pre-provisioning effort in the face of intense opposition by demonstrating the value of the technique to management up through the VP level. Pushed quality into the product and encouraged others to do the same through intense participation in the code review process beyond a typical IC developer role and was recognized by management for that effort. SharePoint Designer Workflow Team: Enabled SharePoint Workflows to access external (non-SharePoint) data sources as part of a product-wide external data connection push. Invented a hybrid-key system allowing native SharePoint list items and external list items to be referenced with a common interface. Partnered with an international team of developers, testers, and program managers to ship workflow features important to businesses in Asia. Architected a feature which converts data in workflows between data types and allows access to particular properties of existing data objects, such as the email address of a user instead of just the username. Drove packaging of workflows to completion. Documented SharePoint protocols as part of an organization-wide effort to provide full over-the-wire documentation coverage.
Software Engineer: Redesigned a web-based time- and project-management software package. Collaborated on multiple projects using Visual Basic, SQL Server, and ASP.
Test and Automation Engineer: Introduced formal test methods. Designed and implemented test procedures. Automated tasks.
Instructor (Summer 2006): Instructor of record for EECS 12 (Introduction to Programming). Responsible for all aspects of class including lesson plans, assignments, and tests.
Graduate Student Researcher: Research in sketch-based methods for civil engineering simulation, leading to three publications. Developed C++ and Python-based software that is being used by civil engineering students in their coursework.
Teaching Assistant: Responsible for discussion sections and laboratory instruction for two quarters of C programming and introductory computer engineering.
Student Researcher: Developed a customizable, IEEE 754-compliant floating-point multiplier (in Verilog) as well as web-based software (in Perl) to enable novice users to select appropriate customization options.
Instructional Laboratory Assistant: Responsible for instruction of students in the use of MATLAB for signal processing and system simulation.
Graduate Fellow: California Institute for Telecommunications and Information Technology. Coursework in computer graphics, scientific visualization, virtual reality, algorithms, mobile game development, random processes, compilers, computational logic, regular languages and automata, and distributed and parallel systems.
Coursework in systems engineering, nonlinear dynamics, system simulation, computer engineering, mechanical engineering, materials engineering, electrical engineering, chemical engineering, engineering design, project management, as well as a firm grounding in mathematics, science, and the humanities and social sciences.
``Image centric finite element simulation,'' Computers and Graphics, 23(3): pp 379--392, June 2005. With Falko Kuester and Tara C. Hutchinson.
``PerlNomic: Rule Making and Enforcement in Digital Shared Spaces,'' Online Deliberation 2005 / DIAC-2005, Stanford University, May 20-22, 2005. With Adam Bliss.