Hakim Jonas Ghoula

Software Engineer — Compilers, Languages & Distributed Systems

hakim@walkthisway.dk | +45 26335577 | Hothers Plads 11, 3, 2200 Cph. N

Hakim Jonas Ghoula

Profile

Software engineer in distributed data systems, who builds parsers, libraries, and language tooling independently. Verified publisher on pub.dev under ardaproject.org: parser combinators with left recursion and lossless syntax trees, multi-format parsing, binary codec derivation, and a total query language. Author of a dependently-typed proof checker for the Calculus of Inductive Constructions, with an ML-family surface syntax and a stack-safe normalization-by-evaluation kernel, running in the browser. Maintainer of a Scala validation library on Maven Central. Four years building distributed Apache Spark pipelines for identity resolution at LiveIntent (Zeta Global). Primary languages: Scala, Rust, Dart, Python. MSc in IT and Cognition and BA in Philosophy, University of Copenhagen.

Professional Experience

Data Engineer

LiveIntent (acquired by Zeta Global, November 2024) | Copenhagen, Denmark

2022-01 - Present

Distributed data systems for AdTech and MarTech identity resolution. Apache Spark pipeline development and testing, with contributions to data governance, infrastructure automation, and AI agent systems. Code owner for multiple warehouse modules.

  • Built an AI agent system using a dual-process architecture that separates deterministic fact validation from LLM reasoning. Used for automated configuration workflows.
  • Wrote a developer-productivity CLI integrating GitHub, GitLab, and Jira, with an MCP server for AI assistant integration.
  • Designed a warehouse-wide exclusion and governance framework. Configuration-driven, applied across delivery pipelines.
  • Implemented compile-time JSON schema derivation in Scala for configuration validation.
  • Maintained Apache Spark ETL pipelines for identity resolution and audience segmentation, with Specs2 test coverage.
  • Integrated the UID2 protocol for cross-partner identity resolution.
  • Built a PersonID matching system with normalized address resolution.
Apache SparkScalaPythonAWS (S3, Athena, Bedrock)Functional ProgrammingSpecs2Akka StreamsParquetKubernetesHelmDockerTerraformLLM/AI EngineeringspaCy/NLPMCP ProtocolFastAPIApache AirflowCircleCIGitHub Actions

Python Back End Developer

Ocean.io | Copenhagen, Denmark

2018 - 2019

Developed NLP components for B2B lead intelligence platform, including email prediction models and multilingual language detection.

  • Built email prediction pipeline using pattern matching and probabilistic models
  • Implemented language detection module for multilingual content classification
PythonNLPREST APIsMachine Learning

Front End Developer / Data Engineer

Købstædernes Forsikring | Copenhagen, Denmark

2017 - 2018

Contributed to the development of a new data model for the insurance customer database.

  • Implemented white-label solutions and managed web projects for external partners
Front EndData Modeling

Education

MSc in Information Technology and Cognition

University of Copenhagen | Copenhagen, Denmark

2016

BA in Philosophy

University of Copenhagen | Copenhagen, Denmark

2011

Diploma in Music Management

The Royal Academy of Music | Aarhus, Denmark

2011

Skills

Programming Languages

  • Scala 3: functional programming, Spark applications, inline and quoted macros, compile-time derivation, library design
  • Rust: systems programming, procedural and derive macros, library design
  • Dart: library and framework design, parser combinators, binary codecs, verified pub.dev publisher
  • Python: FastAPI, Airflow DAGs, CLI tooling, NLP and ML pipelines

Compilers and Language Implementation

  • Type systems: GADTs with refinement, bidirectional inference, typeclasses, variance
  • Parsing: parser combinators with left recursion, resilient parsers with recovery, lossless syntax trees
  • Code generation and metaprogramming: Scala 3 quoted macros and Mirror-based derivation, Rust procedural and derive macros
  • Standards-driven implementation: writing parsers and protocol implementations against published specifications

Big Data & Distributed Systems

  • Apache Spark: ETL pipelines, DataFrame/Dataset APIs, performance tuning, Specs2 testing
  • Apache Airflow: DAG orchestration, scheduling, monitoring
  • Akka Streams: Reactive stream processing, backpressure handling
  • Data Architecture: Pipeline design, Parquet/columnar storage, data lake patterns, schema evolution

AI & Machine Learning

  • LLM Engineering: AWS Bedrock, prompt engineering, ReAct patterns, MCP protocol
  • NLP: spaCy, intent classification, semantic search, embeddings
  • Cognitive Architectures: Dual-process systems (Kahneman), metacognitive agents

Cloud & Infrastructure

  • AWS: S3, Athena, Bedrock, IAM
  • Kubernetes: Deployments, Jobs, Helm charts, ArgoCD
  • Terraform: Modular IaC, reusable modules
  • CI/CD: CircleCI, GitHub Actions, automated pipelines

Personal Projects

valar

2

Type-safe validation library for Scala 3 with automatic case class derivation

Scaladata-validationerror-handlingscalascala-nativescala3validation

lambe

1

Total, multi-format query language for structured data (JSON, YAML, TOML, HCL, CSV, XML, Markdown). Sub-Turing by design with guaranteed termination. CLI, Dart library, and MCP server.

Dartdata-transformationhcl2jsonmcppipelinequeryquerydslreplterraformxmlyaml

fin

1

Finë is a simple, GTK4-based session transition tool for Linux desktops—built in Rust with a functional, modular design.

Rust

cv

0

CV/portfolio generator producing HTML and PDF from structured JSON data

Rust

doxa

0

Dependently typed proof checker for the Calculus of Inductive Constructions. ML-family surface syntax, stack-safe normalization-by-evaluation kernel, parser built on rumil. Runs in the browser.

Dartcalculus-of-constructionsdartdependent-typesnormalization-by-evaluationparserproof-assistanttype-theorywasm

rumil-dart

0

Parser combinators for Dart. Typed errors, left recursion, stack-safe. Sealed ADT, format parsers, expression evaluator, binary codec.

Dartdartdart3functional-programmingleft-recursionparserparser-combinatorssealed-classeswasmwasmgc

spore-print (Fungal)

0

A Rust library providing a SporePrint trait and derive macro for immutable string representations.

Rust

Languages

  • English: Fluent
  • Danish: Native