Compiler and runtime engineer with 5+ years building the AL (Dynamics 365 Business Central) language runtime, static analyzers and data systems. Currently working on building autonomous agents for the project integrated with the language. My expertise combines compiler design with a deep understanding of how to write performant code. When things were on fire, I have also led the cross-team incident response.

Experience


Senior Software Engineer – Developer Tools (AL Language)
September 2023
 — 
Present

AI, language-server and VS Code tooling for Business Central’s AL language

  • Led the effort for creating an API for creating LLM-driven agents in the AL language
  • Designed and implemented multiple APIs for the AL language's types
  • Decreased the memory footprint of the backend of our service by 20% through many memory optimizations, decreasing memory related incidents by 50% in the process
  • Built an always-on profiler for AL code that is now the standard for all performance investigations
  • Built a feature that converts any AL codebase (public symbols) to a Kusto database, allowing for fleet-wide static analysis
  • Architected real-time diagnostics for the language server, reducing the inner loop from minutes to milliseconds
  • Authored roslyn static code analyzers for the security subsystems of the language
  • Worked on all levels of the compiler: tokenizer, parser, binding and emitting
  • Implemented services for the AL VSCode language extension
  • Implemented yaml pipelines in Azure DevOps for automated testing
  • Performance expert for many hard production issues
  • Mentored three junior engineers
  • Maintained the public AL GitHub repo, coordinating fixes and reviews with external contributors.
Software Engineer II – Server Runtime (AL)
May 2020
 — 
September 2023

Performance and reliability engineer for the AL runtime and its ORM layer that powers Business Central SaaS.

  • Customers complained about the UI freezing. I fixed that by reducing stop-the-world GC pauses from 2 s to under 200 ms for the monolithic server, halving performance incidents year-over-year.
  • Worked on SQL generation via our in-house ORM
  • Integrated malware scanning for all uploaded files, achieving a security milestone planned for more than 5 years
  • Tons of deep diving into T-SQL queries (SQL Server) and terrabytes of Kusto telemetry to troubleshoot customer issues
  • Acted as the team’s concurrency expert.

Projects


RcuHTMParallelTrees
September 2019
 — 
January 2020

Prototype framework for parallel binary-search trees via hardware transactional memory.

Education


National Technical University of Athens
January 2014
 — 
January 2020
MSc in Electrical & Computer Engineering

Publications


Microsoft presents: Best Practices for Writing Performant Code in Business Central
November 2024

Demonstrated how to write performant AL code by explaining the process of converting AL code to executable C#.

Microsoft presents: We Have Too Many Events!
November 2024

Explained how to write optimized event-driven programming in AL based on how the runtime implements events.

Microsoft presents: Maximizing Partner Productivity with Essential Business Central Tools
November 2024

Presented the always on performance profiler for Business Central

Languages


English:
Fluent
Greek:
Native

Skills


Languages & Frameworks:
C#, TypeScript, Python, SQL, Azure, Roslyn, LLM
Domains:
Compilers, Static Analysis, Parsing, Binding, Emitting, ORM, Concurrency
DevOps & Tooling:
Azure Pipelines, GitHub Actions, Kusto, VS Code Extensions

Interests


Cognitive Science:
Conciousness, Animal intelligence
Machine learning:
LLM, Reinforcement Learning
Piano:
Self-learning