Tools and languages
Stack
Technologies and languages I have used, grouped by domain. Where a project on this site used one, it is listed under it.
Some of my work, for law-enforcement and defence-technology companies among others, is confidential, so not every technology here links to a project.
Where most of my work runs
- Web, mobile & desktop
- Business systems
- Data
- Cloud & DevOps
Filter by group
Stack groups
-
Backend & languages
- C# / .NET
- ASP.NET
- WCF
- Entity Framework
- Dapper
- Own repository / unit-of-work frameworks
- Node.js
- Python
- C++
- Go
- Rust
- Elixir
- PHP
- Java (Keycloak modules)
- VBA
- REST
- GraphQL
- OData
- WebSocket / SSE
- SignalR
- RabbitMQ
-
Web, desktop & mobile
- Vue
- React
- Angular
- Next.js
- TypeScript
- Plain JavaScript
- Electron
- WPF (MVVM)
- React Native
- Xamarin
- Flutter
- Unity
-
CRM, ERP & business systems
- Salesforce
- Dynamics 365
- Odoo
-
Data platforms
- PostgreSQL
- SQL Server
- MySQL
- MongoDB
- Redis
- TimescaleDB
- InfluxDB
- ClickHouse
- Apache Spark
- Parquet
- Elasticsearch
- Cassandra
-
Cloud & DevOps
- AWS
- GCP
- Azure
- Docker
- Kubernetes
- Terraform
- GitHub Actions
- Serverless
- Linux
-
Architecture & leadership
- Solution & system architecture
- Distributed systems
- Microservices
- Event-driven architecture
- CQRS
- Domain-driven design
- Architecture documentation & decision records
- Air-gapped / secure-by-design delivery
- Technology strategy
- Hiring & team scaling
- Vendor & hardware procurement
- Agile / Scrum
-
AI & agents
- LangGraph
- LangChain
- CrewAI
- RAG
- Evals
- OpenAI / OpenRouter / Claude APIs
- ComfyUI
- Local inference (Ollama)
- Agentic coding workflows
-
Identity & security
- Keycloak (custom Java modules)
- OAuth 2.0
- OIDC
- SAML
- SCIM
- LDAP
- JWT
- X.509
- Identity Server
- RBAC / ABAC
- AES-256
-
Blockchain & Web3
- Ethereum-fork Layer-1s
- Validator / staking nodes
- Solidity
- Hardhat
- ethers.js
- ERC standards
- Smart-contract wallets
- Explorers
-
Geospatial & mission systems
- CesiumJS
- MapLibre GL JS
- OpenLayers
- deck.gl
- GeoLibre
- QGIS
- PostGIS
- 3D Tiles / glTF
- MIL-STD-2525
- MGRS grids
- Terrain & viewshed analysis
- DEM contours
- Offline tile & terrain sources
- Order-of-Battle simulation
-
UAV, robotics & embedded
- PX4 (custom firmware)
- ArduPilot
- MAVLink
- ROS
- Fast-DDS
- OpenDDS
- RTI Connext DDS (researched)
- SLAM / VIO
- OpenCV
- NVIDIA Jetson Nano
- Arduino
- STM32
- ESP32
- Raspberry Pi
- Firmware
- OTA firmware
- MQTT
- PCB design
- Antenna tracking
- RF / 4G / satcom links
Backend & languages
-
C# and .NET (.NET Framework and .NET Core)
C# / .NET used in:
-
ASP.NET MVC & Web API
ASP.NET used in:
-
WCF
-
Entity Framework
-
Dapper
-
Own repository / unit-of-work frameworks
-
Node.js (Express, NestJS)
Node.js used in:
-
Python (Django, FastAPI)
Python used in:
-
C++
-
Go
-
Rust
-
Elixir
-
PHP (Laravel, CakePHP)
PHP used in:
-
Java (Keycloak modules)
-
VBA
-
REST
-
GraphQL
-
OData
-
WebSocket / SSE
-
SignalR
-
RabbitMQ
Web, desktop & mobile
-
Vue 3 (PrimeVue)
Vue used in:
-
React
-
Angular
-
Next.js
-
TypeScript
-
Plain JavaScript
-
Electron
-
WPF (MVVM)
-
React Native
-
Xamarin
-
Flutter
-
Unity
CRM, ERP & business systems
-
Salesforce
-
Microsoft Dynamics 365 (Sales, Customer Service, Finance & Operations)
-
Odoo
Data platforms
-
PostgreSQL / PostGIS
PostgreSQL used in:
-
SQL Server
-
MySQL
-
MongoDB
-
Redis
-
TimescaleDB
-
InfluxDB
-
ClickHouse
-
Apache Spark
-
Parquet
-
Elasticsearch
-
Cassandra
Cloud & DevOps
-
AWS (EC2, ECS, EKS, Lambda, S3, RDS, DynamoDB, SQS, SNS, Route 53, ALB)
AWS used in:
-
GCP
-
Azure (App Services, Functions, DevOps)
-
Docker
-
Kubernetes
-
Terraform
-
GitHub Actions
-
Serverless
-
Linux
Architecture & leadership
-
Solution & system architecture
-
Distributed systems
-
Microservices
-
Event-driven architecture
-
CQRS
-
Domain-driven design
-
Architecture documentation & decision records
-
Air-gapped / secure-by-design delivery
-
Technology strategy
-
Hiring & team scaling
-
Vendor & hardware procurement
-
Agile / Scrum
AI & agents
-
LangGraph
-
LangChain
-
CrewAI
-
RAG & vector search (pgvector)
RAG used in:
-
Evals
-
OpenAI / OpenRouter / Claude APIs
-
ComfyUI
-
Local inference (Ollama)
-
Agentic coding workflows
Identity & security
-
Keycloak (custom Java modules)
-
OAuth 2.0
-
OIDC
-
SAML
-
SCIM
-
LDAP
-
JWT
-
X.509 / mTLS
X.509 used in:
-
Identity Server
-
RBAC / ABAC
-
AES-256
Blockchain & Web3
-
Ethereum-fork Layer-1s
-
Validator / staking nodes
-
Solidity
-
Hardhat
-
ethers.js / web3.js
ethers.js used in:
-
ERC-721 / 1155 / 4337
ERC standards used in:
-
Multisig & smart-contract wallets
Smart-contract wallets used in:
-
Explorers
Geospatial & mission systems
-
CesiumJS
-
MapLibre GL JS
-
OpenLayers
-
deck.gl
-
GeoLibre
-
QGIS
-
PostGIS
-
3D Tiles / glTF
-
MIL-STD-2525 / APP-6
MIL-STD-2525 used in:
-
MGRS & H3 grids
MGRS grids used in:
-
Terrain & viewshed analysis
-
DEM contours
-
Offline tile & terrain sources
-
Order-of-Battle simulation
UAV, robotics & embedded
-
PX4 (custom firmware)
-
ArduPilot
-
MAVLink
-
ROS & ROS2
ROS used in:
-
Fast-DDS
-
OpenDDS
-
RTI Connext DDS (researched)
-
SLAM / VIO
-
OpenCV
-
NVIDIA Jetson Nano
-
Arduino
-
STM32
-
ESP32
-
Raspberry Pi
-
Firmware in C++ and Python
Firmware used in:
-
OTA firmware
-
MQTT (HiveMQ, Mosquitto)
MQTT used in:
-
PCB design
-
Antenna tracking
-
RF / 4G / satcom links