Simply Staking logo
Apr 2025 — Present

Full Stack Developer

Simply Staking

LocationRemote

Context & Challenges

Simply Staking operates blockchain infrastructure and validator services across a large number of proof-of-stake networks. When I joined, the engineering team was scaling quickly and needed robust internal tooling alongside a polished customer-facing platform.

The primary challenge was delivering two distinct products in parallel — a customer-facing Node-as-a-Service platform and an internal blockchain reconciliation tool — while working across a polyglot stack (TypeScript/Next.js on the frontend, Node.js and Go on the backend) and ramping quickly on blockchain concepts and production infrastructure workflows.

Building at the intersection of Web2 product development and Web3 infrastructure meant expanding my understanding of blockchain systems while still shipping production-quality software under real operational constraints.

The Approach

I approached delivery as two parallel tracks: (1) a customer-facing platform experience that reduced onboarding friction and supported monetization, and (2) a reconciliation system designed for auditability and correctness from day one.

For Spectrum’s web experience, I started with the user journey and worked backwards into concrete requirements: registration and login behaviour, onboarding steps, subscription/payment touchpoints, and error handling. I then translated designs into a cohesive Next.js implementation, prioritising clarity, speed, and consistency across the product surface.

Where backend integration was required, I treated the API contract as a first-class deliverable: aligning request/response shapes with UI needs, defining predictable error semantics, and ensuring the frontend could fail gracefully without blocking the journey.

On the reconciliation platform, I worked closely with protocol stakeholders to validate the data model before committing to architecture. I designed the backend around clear service boundaries — ingestion, reconciliation logic, and reporting — with a focus on traceability (being able to explain ‘why’ a result occurred) rather than only producing outputs.

Adopting Go was part of the technical strategy for backend services. I invested early in idiomatic structure (package boundaries, error patterns, testable units, and concurrency where appropriate) so I could ship maintainable production code quickly while ramping on the language.

Tech Stack Used

TypeScript
React
NextJS
Node.js
Golang
PostgreSQL
MongoDB
Keelan

Not doing anything

interesting right now