hatef.os
hatef@home04.06.26
Staff Product Engineer
--:--:-- CET
Open to roles · Senior / Staff

Productengineerbuildingthings thatclick.

Staff-level product engineer currently building in energy trading, exploring design-engineer roles. Ship-focused. Full-stack.

Operating · TS · React · Node · Postgres · K8s
Speaking · EN · IT · FA
Status · Open · Senior / Staff
▸ Uptime · 00:00
↓ Selected work↓ Writing↗ Get in touch▸ Open terminal

Selected work

05 projects · 2018 →
cmd · /work --list --recent
bid & offer app · NL-power · day-ahead
● LIVENL.PWR.DAD+122.05.2615:42:08MID 92.53SPR 0.25VOL 12,840 MWTRD 184▲ 0.9%F1▼ DEPTH · BID / OFFER42 BIDS·38 OFFERS⟳ 250ms#CPTYRECTECHREGMW€/MWH€/MWHMWREGTECHRECCPTY#1VATTENFAL48201WNDN12092.402ENECO48198WNDW8592.203RWE48192SOLS6091.854UNIPER48187HYDE24091.605SHELL48180WNDN17591.256STATKRAFT48177HYDE9090.807ORSTED48171WNDW15090.408EDF48168SOLS4590.109ENGIE48162WNDN11089.7510NEPTUNE48157HYDE7589.4011EBM48149WNDN9589.0512AXPO48141SOLS5088.7013BKW48133HYDE14088.3014ALPIQ48127WNDW10087.9592.6595WWND48205AXPO192.85200EHYD48209FORTUM293.1070SSOL48212BP393.45130NWND48216EQUINOR493.80160WWND48219TOTAL594.2055SSOL48223IBERDROLA694.50220EHYD48228DRAX794.9085NWND48231CENTRICA895.30140WWND48235SSE995.7575NWND48238EDP1096.20165EHYD48241VERBUND1196.6060SSOL48244ELERING1297.05120WWND48247PRIMEO1397.5045NWND48250REPSOL14TRADE TAPE · LAST 8 FILLSTIME · PX · MW · SIDE · CPTY15:42:0692.5545BUYFORTUM15:41:5892.50120SELLRWE15:41:4292.4580BUYENECO15:41:3192.60200SELLUNIPER15:41:1892.4055BUYSHELL15:40:5492.35160SELLORSTED15:40:3392.3095BUYEDF15:40:0992.35130SELLVATTEN.▼ BID92.40SPR0.25MID92.53OFFER ▲92.65DEPTH1,150 / 1,230 MWIMB-80⌘K[F1] HELP[F2] BID[F3] OFFER[F4] HIT[F5] LIFT[F6] PULL[/] FILTER[?] CMDSCONN OK
01 · Energy trading2024 →

Bid & Offer App

The order book at the heart of an energy trading desk — live bids vs offers across counterparties, regions and renewable tech. Replaced three legacy tools; cut order-entry time in half.

TS · Postgres · KafkaRead case →
ts-time-utils.h8frad.work
ts-time-utils.h8frad.work
02 · OSS2024 →

ts-time-utils

430+ utilities for dates, durations, timezones, calendars, and relative formatting. Tree-shakeable, fully typed, built for TypeScript-first projects. Zero dependencies.

TypeScript · MITDocs ↗
mamanfari.com
mamanfari.com
03 · Side2024 →

Maman Fari

A digital cookbook preserving Persian recipes — available in 7 languages, with every ornament and detail painstakingly hand-picked.

Next.js · PostgresVisit ↗
ateliertar.com
ateliertar.com
04 · Side2025 →

Atelier Tār

Small e-commerce studio for Persian heritage objects — limited-edition prints, ceramics, framed carpets.

Next.js · StripeVisit ↗
energy-trading-platform · 2019—26
energy-trading-platform · 2019—26
05 · Energy trading2019—26

Mono services

Monolith → 12 services → pragmatic serverless. Architecture should reduce the cost of change, not celebrate its own complexity.

Vue · Node · K8sRead case →

Try the API.

live · embedded · running this page
cmd · /demo --run ts-time-utils
Live · embedded · running this page

A small piece of my open source.

This is a real demo of ts-time-utils — my zero-dependency TypeScript library. Pick a date and watch it format, diff, and reason about it the way you'd hope a designed API would.

Open the playground ↗
ts-time-utils · v4.4
Date

Side projects

03 live
cmd · /side --live

Writing

02 essays · 2025
cmd · /writing --list
№ 01

Overengineering is a product risk

№ 02

Better trading tools start with the trader's language

About

The short version
The unabridged version is over a coffee

I'm a product engineer — I write the code and I sweat the pixels. Trained in distributed systems, raised on Material Design, now staff at an energy trading firm in Amsterdam shipping software for traders.

Iranian by birth. Italian by training. Dutch by paperwork. I keep three side projects alive at any given time because that's how I learn — build, ship, talk to users, repeat.

Born in Iran · M.Sc. from Polytechnic University of Turin (Computer & Communication Networks) · Fluent in English and Persian · Comfortable with Italian and Dutch.

Front

TypeScriptReactNext.jsVue.jsCSSMotion

Back & data

Node.jsNestJSPostgresRedisMySQLLaravel

Platform

DockerKubernetesKafkaAzureAWS CDKServerless

Product

Product thinkingUX engineeringFeature scopingPrototypingTrade-off analysisCross-functional

Experience

10+ years
2014 — present
2023 — now
Staff EngineerSTX Group · Amsterdam
Lead engineer for trader platforms. Mentor a small team. Set technical direction. Closest collaborators: product & design.
TS · Python
Postgres · K8s
Azure · Kafka
2019 — 2023
Senior EngineerSTX Group · Amsterdam
Led the monolith-to-microservices migration. Hired & mentored four engineers. Introduced engineering practices that scaled across teams.
Laravel · Vue
PHP · Redis
Docker
2018 — 2019
Full-stack EngineerGrrr B.V. · Amsterdam
Client-facing features and custom plugins for high-profile brands. Contributed to the agency's new backend stack.
JS · WordPress
Sass · Docker
2017 — 2018
Full-stack EngineerCastorEDC · Amsterdam
EDC platform used in global clinical research. Refactored legacy code for stability.
PHP7 · Doctrine2
ZF2 · MySQL
2015 — 2017
Full-stack EngineerWEREA S.r.l. · Milan
REST APIs and full-stack work for SaaS. Stripe, Dropbox, Pusher integrations. UI redesigned to Material Design.
AWS · AngularJS
Silex · Stripe
2014 — 2015
Graduate EngineerDiana Corp · Padua
Built Magento modules (Criteo, Google Merchant). Supported migration to SAP B1. Improved deployment via AWS.
Magento · PHP5
AWS · RabbitMQ

Open to
senior roles.
Let's talk.

Currently
Staff Engineer · Energy trading · Amsterdam
hatef@work:~$help · whoami · stack · projects · contact · clear
hatef@work:~$ — type help for commands
~/hatef ▸