Noel Victor

Work Tembo (acquired by Hoonuit)

One API over five incompatible data sources

RethinkDB, Postgres, SQL Server, Salesforce and third-party APIs, all feeding the school report card frontends.

Client
Tembo (acquired by Hoonuit)
Role
Backend Developer
Period
2018 to 2019
Focus
Development, APIs
  • 5 backend data sources unified
  • 2 frontend tools served
  • Selenium multiprocess visual regression checks

I worked on the API layer powering Tembo’s school report card frontends. Behind it sat RethinkDB, Postgres, SQL Server, external APIs and Salesforce, reached through simple-salesforce. The frontends did not need to know any of that.

I connected the API to the Finder and Explorer tools and added features as those products needed them.

Debugging across a reverse proxy

A fair amount of the work was diagnosing failures in the application layer that only appeared because of our nginx reverse proxy microservice architecture. Those bugs do not reproduce locally and they do not respect service boundaries.

To get faster feedback, I wrote a multiprocess Selenium script that drove the web application and surfaced errors visually, so regressions showed up as pictures rather than as a support ticket a week later.

Screens

API layer serving the report card frontends
API layer serving the report card frontends
School report card frontend
School report card frontend
Report card detail view
Report card detail view