Gregory L. Rosenblatt

greg.weiqi@gmail.com
GitHub: gregr

Summary

I currently live in Toronto, Ontario, working as a Software Engineer.

My focus is more on general ideas than on specific technologies. Though, I do like to choose which technologies to work with, preferring well-designed languages, tools and 100% solutions. Unfortunately I have plenty of experience with poorly-designed technology.

I enjoy being managed well.

My approach to problem solving emphasizes tool-building and automation. This includes code generation, transformation and other language-oriented techniques. When solving mysteries, I understand and reason about code before jumping into a debugger.

A major goal of mine is to become better at designing for human beings. The past inspires me.

I play Go/Weiqi/Baduk at the 5 dan level.

Notable personal projects

The following projects were the product of significant effort made as I grew up as a programmer.

  • The Chive Programming Language

    20092010

    This was my first serious attempt at a full programming language implementation. It features a scheme-like hygienic macro system based on syntactic closures.

    It was put aside when I started working at Facebook.

  • Uriel

    20052006

    a tile-based multiplayer game framework

    Several amusing games were made with this. They are lost.

  • Starscape

    19992005

    a 3D game programming system, including a GUI library

  • Creating a Scripting System in C++

    20022003

    This is an article series I wrote for gamedev.net in five parts.

Professional experience

  • Tulip Retail

    Toronto, ON

    Software Engineer

    October 2013June 2014

    Part of the founding team originally from Well.ca.

    Worked on both retail platform and individual client projects.

    • Re-design of data model and platform in terms of a service-oriented architecture
    • Framework for building hypermedia APIs
    • Data ingestion and processing library
    • Continuous image import system
  • Well.ca

    Kitchener, ON

    Software Engineer

    August 2012October 2013

    Refactored and redesigned the warehouse management system

    • Separation of WMS into an independent service providing a web API
    • Design and performance analysis of alternative communication protocols
    • Internal tools and automation for development and deployment
  • Facebook

    Palo Alto, CA

    Software Engineer

    January 2011June 2012

    Developed and maintained internal development tools and infrastructure

    • Distributed continuous test run infrastructure
    • Automatic test failure blame assignment and task creation
    • Phabricator
    • Task management system
    • Dev-server allocation and management system
    • Real-time asynchronous job tier
  • Ellington Management Group

    Old Greenwich, CT

    Quantitative Developer

    May 2006August 2009

    Developed and maintained various modelling and trading systems.

    • Distributed computing infrastructure
    • Cross-language services and remote procedure call library
    • Quantitative model implementations
    • Real-time market data streaming and aggregation
    • Automated trading and order management system

Education

  • Rochester Institute of Technology

    19992004

    Bachelor of Science in Mechanical Engineering

    Concentration in Aerospace

  • Stanford Online Courses for AI and Machine Learning

    Fall 2011

    Statement of Accomplishment

    This was the original online offering of these two classes from which coursera and udacity were spun off.

Some reading I've enjoyed and recommend