Greg Orlov

GmailGithub

About Me

I am a software developer with over a decade of professional experience, passionate about designing and building distributed systems to solve real-world problems. I have done everything from architecting and delivering a data platform that supports billion-message-a-day throughput to building API servers and client-side libraries. Whether it’s high level design, writing low-level code, or terraforming infrastructure, my goal is to deliver stable and high quality solutions that drive business value and enable the developer productivity.


Experience

Staff Software Development Engineer

Outreach.io
02/18 - present

Over the last ~2 years I have been focused on leading the design and development of the next generation data platform at Outreach - CDC streaming, data lake/warehouse, and supporting tooling.

Before that I was focused on delivering internal tooling, and building out APIs to help product teams get from proof of concept to production.

  • Led the design of the next generation data platform at outreach - data collection, aggregation, and query for the entire microservice ecosystem.
  • Architected the internal inter-service message passing standard and tooling in the new data platform. Built the v1 and led my team in continued development of the producer client, as well as the Spark consumer for seamless datalake integration. Avro golang Spark Kafka
  • During management turnover, took initiative to lead and mentor my team. Worked with team members to find projects that excited them and provided opportunity to grow, while also progressing the development of the platform.
  • Defined requirements and led technology evaluations to determine the message bus and binlog replication vendors, taking into account cost and technical requirements.
  • Improved BI reporting by replacing the legacy ETL it with a near-time binlog streaming solution, enabling more precise reporting, as well as greater visibility into the operations of the system. Kafka Terraform Maxwell's Daemon
  • Designed and built infrastructure to support in-app auditing of user actions, exposed through a customer-facing API.
  • Designed microservices and led a team of several developers to implement and deploy them. The services include an internal 2FA app, and and internal Okta-integrated service for data cleanup.
  • Designed and built the tooling and patterns for eventually-consistent read-only kafka-populated microservices to allow for a more scalable overall architecture. JSON API::Utils extensions Json Api Model Json Api Client Elasticsearch Query
  • Introduced Swagger into the workflow of several teams in order to get all the niceties that come with strict contract definitions: easy testing, client generation.

CTO

Greyscale.io
05/16 - present

I co-founded Greyscale.io to fill a software solution gap in the small-to-medium business marketplace. We bring the client’s software vision to life without cutting corners.

  • Co-founded the company with the vision of developing a multi-stage custom software solution firm.
  • Enabled flexibility in website backend design by building out a data-source agnostic flat-file ActiveRecord-like ORM interface with scoping and associations. Greyscale Record
  • Worked with customers to actualize their business needs by iteratively designing and building out their desired websites within their budgets. Greyscale.io Greyscale Record
  • Currently in the process of streamlining the customer interactions with their data by designing and building out a CMS.

Senior Software Development Engineer

Tune, Inc.
03/17 - 02/18

I worked on updating Tune’s aging legacy codebases by replacing them with new technologies, a scalable platform-based stack and being a resource to developers who may not have micorservice architecture experience.

  • Worked on increasing developer productivity and agility of the engineering org by co-authoring a set of API design and development guidelines for engineers to follow in the future.
  • Mentored and helped junior developers define APIs, database schema, service separation boundaries.
  • Set a baseline for service architecture, testing, and CI/CD pipelines by redesigning, building out a test suite, and fleshing out a git-push-to-automatic-deploy CI/CD pipe for a mission critical service.

Senior Software Development Engineer

Avvo Inc.
10/12 - 02/17

In my 4 years at Avvo I have done everything from building out a Bootstrap-like CSS theme & styleguide, to moving around and rebuilding core server components, focusing mainly on system-wider performance.

  • Enabled improved stability and higher throughput of the overall system by implementing a framework for asynchronous Kafka-updatable data aggregation services that sit between the database-backed servers and the user-facing website server. YAKC Yeller Json Api Resource
  • Improved stability and resilience of core services and sped up the public API(v4) 10-fold by rebuilding and expanding an existing bare-bones communication layer wrapper library to be testable, flexible, and to include resilience tooling and optimized cross-service batch loading. Json Api Resource Multiconnect
  • Sped up a business critical page from ~4s to <150ms with a cache strategy that has 100% guaranteed data integrity by architecting and implementing a system to combine multiple database object cache keys into a single key for aggregate service endpoints. La Maquina
  • Enabled external partners to have access to Avvo's legal directory and the mobile team to have optimized phone-to-server communication by working with the respective product teams to build out custom-tailored APIs.
  • Improved performance, maintainability, stability and scalability of a core business page by integrating Solr 5 into a critical service and led the effort to migrate from the legacy monolithic implementation of that page to use the Solr 5 powered service.
  • Pushed the company towards a low maintenance deploy model by leading a team-wide effort to move all of Avvo's services from Chef to Docker deploys.
  • Rearchitected and built mission critical database layer to allow for service-based architecture.
  • Alleviated the friction between dev and design and sped up front-end development by building out a well-defined and well-rounded bootstrap-like CSS theme and a self documenting style guide app for it.
  • Enabled higher developer productivity and promoted higher code standards by designing and building a gem complimentary to ActiveModel::Serializer to move param parsing out of the controller. Deserializer

Software Development Engineer

Intersect PTP
2/12 - 10/12

I came in at the very end of the company’s lifecycle. Quickly after I came on the company pivoted and moved into the mobile photo-sharing space and I led the effort to build out the desktop client.

  • Architected and wrote a native Mac/Linux library and daemon that finds and uploads images to the server from watched directories, opening up the desktop market.
  • Blueprinted and executed a bookmark JS app that pulls brief descriptions and selected images into the Intersect story editor to facilitate ease of use and encourage user engagement.
  • Designed and built a WYSIWYG content creation page that sanitizes the input to have sanitized HTML for consistency with site standards in order to ensure a delightful user experience.

Contractor

Rockstar Motel
3/11 - 11/12

I came in as an Android developer, but - as there was no API to develop against - I ended up picking up Ruby and Rails to build out some of the most core functionality of the website.

  • Architected feature-rich comment thread functionality
  • Built core business network feed actions: signing artists, promotions, recommendations, album reviews, votes.
  • Created the notifications system for comments and replies, activity votes, awards, promo packs, friend requests.
  • Conceptualized the navigation bar, network feed, and profile pages.

Software Development Engineer

Microsoft Corporation
1/09 - 10/10

I worked on the Performance Analysis toolset of Visual Studio.

  • Stabilized and enhanced the logic behind the launch, improved UI interaction within the Visual Studio 2010 IDE Performance Analysis experience.
  • Collaborated across teams to help implement IDE launch support for Silverlight and Sharepoint profiling, SharePoint IntelliTrace support for Visual Studio 2010 Service Pack 1.
  • Stabilized, extended and made production-ready a command line IIS profiler (VSPerfASPNetCmd).

Personal Projects

In my free time I am passionate about many things software and otherwise.

  • As an avid photographer, I found the existing photo website teplates lacking in 2014 and built my own. Positive Negative Studio
  • I am a contributing member and active moderator of the JsonApiClient ruby gem. Json Api Client

Education

Computer Science, Bachelors of Science, Indiana University, Bloomington

Fine Arts - Studio Art, Bachelors of Arts, Indiana University, Bloomington

© Greg Orlov 2024