Michael Safyan

Resume

Objective

Senior software engineer with 8+ years of industry experience and a masters in computer engineering seeks a rewarding career working on interesting, challenging, impactful projects that will benefit society and leave the world a better place.

Skills

Languages

C++

Java

Python

HTML

CSS

JavaScript

Platforms

App Engine

Android

UNIX

Experience

Google Inc.

Cloud Platform Engineer on Stackdriver Monitoring

  • Devised and executed a plan for externalizing the AlertPolicy and NotificationChannel endpoints in the Monitoring v3 API so that end users could programmatically configure notification channels and alerting policies as well as programmatically backup/restore/copy such configuration elements.

    This task included:

    • Bringing the existing API used by the UI into compliance with our external API standards
    • Identifying and mitigating potential vectors for abuse such as by:
      • Enhancing validation in all of the relevant API methods
      • Imposing upper limits on the number and size of configuration elements
    • Creating "editor" and "viewer" roles in Cloud IAM for notification channels and alerting policies
    • Redesigning verification to allow for programmatic creation of SMS channels
    • Adding support for sorting and filtering in the list operations
    • Coordinating the contributions of several team members
    • Managing an Early Access Program (EAP) including:
      • Creating the sample code used in the EAP phase
      • Managing the process for whitelisting customers
    • Designing the policies, channels, and channel-descriptors commands in the Google Cloud SDK
    • Interacting with client libraries and devrel teams to generate official libraries and samples
    • Obtaining necessary sign-offs and approvals from relevant approvers
    • Drafting and editing the blog post announcing the Beta launch of this feature

  • Implemented alerting on process health conditions in the version of the Stackdriver backend implemented on Google's internal alerting infrastructure, facilitating a migration of the Stackdriver application from a legacy alert evaluation system brought in as part of the Stackdriver acquisition to a more highly available alert evaluation system running on a purely Google monitoring and alerting stack.

Knowledge Graph Backend Engineer

  • Designed and implemented a simple, stable, easy-to-use RPC and JavaScript API for retrieving Knowledge Graph data in Search and other Google products as well as in prototyping new features.
  • Collaborated with the Google Web Server team in the design and implementation of an internal service provider interface for augmenting the capabilities of the Knowledge Graph data API in a modular way.

Knowledge Graph Frontend Engineer

  • Designed and implemented various APIs and infrastructural simplifications to make it easier for feature developers to add new components to knowledge graph cards and other types of cards in Search.
  • Designed, implemented, and lauched the frontend and backend serving code for the knowledge graph music actions feature on an aggressive timeline, successfully meeting the Google I/O launch deadline (it was used in a demo for the Future of Apps and Search presentation at the Google I/O developers' conference). This included fetching the data from a backend database, ranking the links, and rendering them as well as reading/writing search history to boost the last clicked entry on subsequent searches and spanned multiple systems and languages, including C++, Java, HTML, CSS, and JavaScript. Also managed and oversaw the contributions to this feature from three more junior team members.
  • Designed a configuration file format for describing fake knowledge graph cards and implemented a system to load and display these within Search using the standard knowledge graph rendering in order to enable the creation of the Halloween knowledge graph easter eggs by allowing the Doodle team to provide simple configuration files for each monster. Design to launch was completed with less than a month's notice.

Google Web Server (GWS) Engineer

  • Implemented a system that allows for the proprietary templating language used within Search to call back into functions written in C++ or Java. This feature is widely used in the Search HTML code to query configuration logic from within templates as well as to invoke i18n formatting routines on template inputs.
  • Designed and implemented an extension to the proprietary templating engine used within Search to simplify the use of JavaScript. In particular, this extension enables feature developers to write JavaScript directly in their templates and have the JavaScript automatically appended to a section for deferred JavaScript at the bottom of the page rather than rendered where their template had been invoked.
  • Lead the i18n rollout of SSL Search on the standard www.google.* domains and contributed to the rollout of SSL Search on www.google.com, including various rollout configurations, the creation of a commit hook to detect mixed mode content in code prior to submission, various types of production monitoring to detect mixed mode content in production, automating the rewriting of certain resource URLs for HTTPS pages in the templating engine, and triaging and fixing numerous mixed mode bugs.

Step Ahead Studios

  • Designed and implemented a minigame framework for controlling the progression, difficulty, and scoring of minigames and developed a couple minigames using this framework.
  • Created various libraries in ActionScript 3.0 to support the game, including a logging library similar to log4j, a persistence library built on top of SharedObject, and a localization library for looking up translations in both the audience's' language and the language being taught.

Do-A-Poll

  • Designed the schema for the MySQL database to represent the various types of users and polls.
  • Implemented a PHP wrapper library on top of the MySQL database for creating and retrieving poll data.
  • Evaluated varous open source page templates and adapted the template to create the Do-A-Poll website.

Exegy

  • Modified C++ monitoring software to persist monitoring data to a MySQL database using MySQL++.
  • Created a Java Swing desktop GUI that retrieves the monitoring data over RMI and displays it.
  • Modified the C++ CORBA code on the robot to support the play/record wheel movement commands.
  • Implemented a minimal robot remote control GUI in Java/Swing to facilitate testing.
Education
  • Master of Science in Computer Engineering (M.S.Co.E.)
  • Bachelor of Science in Computer Engineering (B.S.Co.E.)
Honors
  • Magna Cum Laude
  • Dean's List
  • Tau Beta Pi
Disclaimer

My statements are my own and do not necessarily reflect the opinions of Google Inc.