Software Engineer BaseKit

Duration
Previous role
Web Developer @ Ents24
Technologies
  • HTML
  • CSS
  • JavaScript
  • PHP
  • MySQL
  • Backbone
  • Bootstrap
Practices
  • Test-driven development

Front-line management and full-stack web development on a B2B SaaS website builder platform similar to Squarespace. This role was where I stopped being a junior engineer, accumulating some of my first real achievements and self-confidence.

Isomorphic Rendering

Isomorhpic rendering was not yet a solved problem in the early 2010s, but its benefits for a website builder product like ours were clear: we needed the capability to quickly render client-side previews of widgets in the site builder, while also rendering them server-side for published sites.

When a project to make our Twig templates renderable client-side came up, I eagerly volunteered. After some initial prototyping we settled on twig.js, and I began extending its functionality to meet our needs. In time I became the primary maintainer of twig.js: fixing bugs, setting up an integration test suite, and reviewing pull requests.

Billing Systems

BaseKit made an early pivot from B2C to B2B, and I worked on the billing systems for both business models.

The B2C billing system had sophisticated features such as pro-rata payments, varying lengths of billing cycle, and even support for the notoriously tricky "Boleto" payment flow popular in Brazil.

The B2B billing system consisted of a data pipeline whereby a central database tracked how many seats were in use by each partner company based on a recurring job that imported and analyzed data from each individual installation.

Team Lead

During my second year at BaseKit I exchanged my role as a software engineer for one as a team lead. The proportion of my time spent helping colleagues had surpassed my time spent coding, so this was a natural step.

The extra influence over things like project planning and performance management was a welcome force multiplier, enabling me to help my teammates even more.