Iheanyi Ekechukwu

Education

University of Notre Dame December 2014 B.S. Computer Science B.A. Graphic Design

Skills

I have extensive experience shipping products with Go, Ruby on Rails, and JavaScript/TypeScript. On the front-end, I've used React and Ember.js, in addition to vanilla JavaScript with Rails templating. I've also built out Go services using gRPC and Twirp. Most of the time, the tech stack does not matter, I will learn/use anything I need to in order to solve a problem and ship features.

Awards & Achievements

  • 1st Place, MakeWithMoto Makeathon (2013)
  • 2nd Place, Schurz Innovation Challenge (2013)
  • Balfour-Hesburgh Fellow (2011, 2012)
  • Balfour-Hesburgh Scholar (2010)

Speaking

  • Ember.js, DevOps, and You

    NPM Camp (2016), MadisonRuby (2016), Wicked Good Ember (2016)
  • Intro to Ember.js and Ember-CLI

    ThunderPlainsConf (2015), FrontPorchConf (2015)

Experience

Software Engineer, PlanetScale

November 2020 - present

I am currently working at PlanetScale as a full-stack engineer on the Surfaces, which is responsible for all user-facing features. Some features I've worked on are the PlanetScale CLI, DK, database branching, deploy requests, automated index recommendations, the PlanetScale JavaScript database driver, SAML/SSO support, audit logs, the Datadog integration, and more.

Senior Software Engineer, GitHub

August 2018 - November 2020
GitHub Actions

As an early member of the GitHub Actions team, I helped build out various features for the product and set the direction of the product. I led projects that helped improve the resilience of the core Actions Go application. Additionally, I worked on improving the SLOs for queuing runs, getting the number of runs queued successfully from 98% to 99.9%. Lastly, I was part of the team that shipped support for GitHub Actions to GitHub Enterprise. This required me to write custom Go tooling for applying database migrations and data transitions between GHES releases, and also implement support for GHES users to use GitHub.com public action repositories through GitHub Connect.

Adjunct Professor, School of Visual Arts

September 2017 - September 2018
Interaction Design, Fall 2017

As an adjunct professor at SVA, I co-taught 3rd year students through lectures, homework assignments, and projects.

Software Engineer II, DigitalOcean

March 2016 - July 2018
Community

As a member of the Community Engineering team, I helped introduce Ember.js piecemeal into the Community application. This allowed us to later implement redesigns of the user profile and question submission pages in order to improve the user experience. Pageviews to user profiles increased by 41% after the new profiles launched. Conversion of question viewers to question submitters increased by 29% after new question submission launched. I also helped integrate Segment analytics into the Community application so we could make data-driven decisions for redesigning parts of the product.

Hacktoberfest

On the Hacktoberfest project, I was responsible for setting up the infrastructure for the application and also the continuous deployment pipeline. Using Chef, I was able to setup a Percona database cluster, while deploying to a Kubernetes cluster via GoCD. Additionally, I also coded up the logic for parsing the pull requests submitted by each Hacktoberfest user, with automatic detection for fraudulent pull requests. Hacktoberfest's userbase more than doubled in size from the previous year.

High Availability, Cloud Firewalls

As a member of the High Availability team, I contributed to the Go and gRPC back-end code for Cloud Firewalls, DigitalOcean's Firewalls as a Service product. Cloud Firewalls operates the hypervisor level, so no resources on a droplet are used. Additionally, I drove the implementation of end-to-end canary tests in the Firewalls project, which run continually in every datacenter to ensure that the Firewalls service is healthy and works as expected. It has helped capture regressions/changes in other services that break the Firewalls product, which in turn helps us maintain the stability of the product. Lastly, I also integrated exporting of metrics to Prometheus and graphing them in Grafana in addition to setting up OpenTracing via LightStep in the application so we can better monitor and debug performance issues in the application.

Network Products, VPC

As a member of the Network Products team, I contributed to creating various Go services with gRPC for our Virtual Private Cloud product offering. One of these services served as the back-end API for the front-end of the product but also communicates with other services for creating VPCs for users. Another service created with gRPC and Go served as a proxy to the regional network service to display various information about the status of a user's private droplets in each region for our internal support tooling. In addition to these services, I also helped create end-to-end integration / canary tests for the private networking service, to ensure that it's behavior continously works as expected. Additionally, I helped spin up the Regional Network Service cluster in our Amsterdam datacenter using Chef, and added in various instrumentation to various services using Prometheus and OpenTracing.

Miscellaneous

I help maintain and enhance our internal canary testing framework, which allows engineering teams to write integration-like tests to create/modify various resources such as droplets, firewalls, load balancers, tags, etc. and ensure that they work as expected. Additionally, I helped add MySQL support to the framework, in addition to SQLite, so the canary could be deployed to a Kubernetes cluster without losing any of the testing logs/history.

Instructor, Egghead.io

February 2015 - December 2020

I've created various lessons on web development with technologies such as Ember.js and React.

Software Engineer, IBM Watson Life

February 2015 - February 2016
Chef Watson

As a part of the Chef Watson project, I drove the main efforts for moving all user-specific logic out of the Liberty WebSphere/Java back-end with block2 SQL to Node.js/Express with Cloudant. Additionally, I introduced a test suite for the Node.js application for recipes and tuple generation that did not exist before. This test suite could run deterministically and included both unit and integration tests.

Watson News

As the technical front-end engineering lead on Watson News, I led the front-end development of Watson News using React.js and Redux. Other individuals on the project had no experience with neither React nor Redux, so I also helped mentor and teach them React and Redux fundamentals so they could quickly start helping contribute to the codebase.

Software Developer Intern, IBM

May 2013/2014 - August 2013/2014
Systems (2014)

As an intern at IBM Systems in 2014, I ported Cassandra, Snappy-Java, and Apache Qpid to work on IBM's POWER architecture, both Big Endian and Little Endian. These tests were automated through a Jenkins build system that hooked into our forks of each open-source package.

Systems (2013)

As an intern at IBM Systems in 2013, I worked on two projects. The first one was an Android application for remote management of AIX and PowerSC machines. The second one was a real-time security application developed using Python and Flask that could detect malicious activity and push notifications to an Android application, which allowed users to rollback their machines or lock them down.

Research Assistant, iCeNSA

February 2013 - December 2014

As a research assistant at iCeNSA at Notre Dame, I was able to learn the fundamentals of data science. I also helped design the architecture for a web application that would be responsible for reducing middle school obesity. I also built a prototype for a project that uses Django, Ember.js, and Scikit Learn that allows users to upload imbalanced datasets and select/compare the output of multiple classifiers. Lastly, I built an Android application for assisting geriatric patients in nursing homes through daily collection on daily habits and well-being and also giving reminders to take medicine or exercise daily.

Research Fellow, Cooperative Computing Lab

January 2012 - December 2012

As a research fellow at the CCL, I worked on two projects. First, I used PHP and MySQL to add features, such as XML data exporting, and fixes to BXGrid, a bioinformatics research web grid. For the second project, I developed a Python script to automate molecular dynamics simulations via WorkQueue, a Master-Worker distributed computing framework.

Projects

Seeker

An easy way for people to host their own job board. Built with Django, Vue.js, and Postgres. Deployed to Heroku, while using a Google Cloud SQL Postgres database instance.

InterfaceLovers

An online digital magazine for creative professionals. Built using PHP with Kirby CMS, hosted on a DigitalOcean droplet through Caddy, with Cloudflare sitting in front of it. Reached #1 on both ProductHunt and Designer News.

Page Unliker

An Ember.js application that allowed one to use Facebook's API to easily unlike Facebook pages. Reached #1 on ProductHunt and the front page of Hacker News.