# Appendix

Hidde Baggelaar

## Profile

I design software solutions that connect business needs, product goals, technical constraints, and delivery reality. My strongest work sits where architecture has to become practical: understanding the problem, shaping the solution, defining boundaries, choosing technology that fits the context, and helping teams deliver without losing sight of maintainability, reliability, and future change.

My background combines solution architecture, software architecture, technical leadership, and deep hands-on engineering. I have worked across e-learning platforms, backend systems, web platforms, cloud infrastructure, game technology, and interactive products. That range helps me approach architecture from both sides: I can reason about the larger solution landscape, and I can still understand the implementation details that make or break delivery.

## Strengths

- Business-to-technology translation: I turn customer, product, and operational needs into concrete solution structures, implementation direction, and delivery priorities.
- Platform decomposition: I break monolithic systems into smaller services with clearer ownership, reusable capabilities, and lower maintenance overhead.
- Integration architecture: I connect platforms, portals, social networks, analytics systems, persistence providers, and learning standards while keeping vendor-specific concerns out of core product logic.
- Event-driven architecture: I use Kafka-based event flows to let services be added, replaced, scaled, or specialized without forcing changes through the whole platform.
- Cloud solution design: I design Azure-based infrastructure using Docker-based services, Azure Bicep deployments, and virtual machine scale sets when legacy constraints need to coexist with scalable services.
- Data and security architecture: I design data models, deployment-friendly database approaches, encryption boundaries, serialization contracts, and provider-independent persistence layers.
- Non-functional requirements: I pay attention to scalability, maintainability, reliability, security, performance, deployment control, and operational impact when shaping solutions.
- Delivery-aware architecture: I keep architectural decisions grounded in implementation cost, team capability, operational reliability, and the need to keep customer work moving.
- Performance and runtime architecture: I design systems that remain stable under high object counts, latency, platform constraints, or real-time interaction requirements.

## How I Approach Solution Design

I prefer architecture that is understandable to the people who need to build, operate, and evolve it. I look for the smallest solution that still respects the important constraints: business value, delivery risk, data ownership, integration boundaries, operational support, security, and future change.

In practice, that means I am comfortable working with stakeholders to clarify the problem, with developers to make the implementation realistic, and with operational constraints to keep the solution deployable and supportable. I do not see architecture as a document that sits apart from delivery; I see it as a set of decisions that should help the team move with more confidence.

## Representative Work

### E-learning Platform Architecture

I have designed and evolved e-learning platforms across NodeJS, PHP, Java, Haxe, and web technologies, with support for SCORM and LTI functionality so learner progress can be tracked, reviewed, and integrated into broader educational workflows.

Key contributions:

- I designed a microservices-based architecture to reduce the maintenance burden of monolithic applications and create shareable service capabilities.
- I designed a Kafka-based event bus architecture that allows services to take on load, enhance behaviour, or be swapped without tightly coupling the wider platform.
- I designed Azure-based platform infrastructure using Docker-based Azure services, Azure Bicep deployment definitions, and virtual machine scale sets where legacy database constraints still had to be respected.
- I designed a data-driven database architecture to support deployments with changing data requirements while retaining production-level control where needed.
- I applied AI workflows to productivity and e-learning use cases, including course categorisation and personalised learning path suggestions.

Solution themes: service boundaries, event-driven design, cloud deployment, legacy coexistence, data governance, operational scalability, AI-assisted product capability.

### Data, Security, and Persistence

I have designed multiple systems where data had to remain portable, inspectable, secure, or independent from a specific storage provider.

Key contributions:

- I designed encryption-based architecture for sensitive database data, placing encryption and decryption behind a dedicated layer to reduce exposure risk in the event of a breach.
- I built a serialization and encryption framework for AS3 products, supporting XML, JSON, ByteArray, and BA64 serialization formats with AES-based value protection.
- I designed a data archiving class that acted as a central store for serialized runtime data, making it easier to inspect state and diagnose bugs when conventional debugging was unavailable.
- I designed a multi-platform persistence layer for Carnage, allowing game data to be saved through Mochi Inventory, Mochi player data, local files, and other portal-specific storage providers without changing game logic.
- I used data proxies and a save data manager to abstract persistence suppliers, turning previously direct data access into a swappable architecture.

Solution themes: data abstraction, provider independence, encryption boundaries, runtime diagnostics, serialization contracts, portability.

### Runtime and Performance

Earlier in my career, I designed and implemented reusable runtime systems for AS3 games at WeirdBeard, supporting multiple shipped products including NFS Hot Pursuit, Sims Medieval Web-Game, Phineas and Ferb: Out to Launch, and Carnage. Although these were game systems, the architectural concerns were familiar: shared foundations, strict platform limits, performance constraints, tool support, and clean separation between product logic and technical infrastructure.

Key contributions:

- I built an AS3 game engine containing a physics and collision world, game world, blit renderer, audio system, level editor, cinematics manager, and serialization/encryption framework.
- I designed a high-performance blit rendering architecture for Carnage, replacing Flash's built-in renderer for scenes with many thousands of objects.
- I designed a graphics pipeline that cached each rendering step, including original drawings, scaled versions, tiled versions, filtered versions, and rotated versions, so unchanged work could be skipped.
- I built a real-time animation system by prerendering and caching frames from native animated movie clips, enabling large numbers of animated objects without relying on the Flash animation system.
- I designed collision detection using Quad Tree AABB prediction and impulse-based collision solving, maintaining stable framerates with thousands of game objects.

Solution themes: reusable technical foundations, performance pipelines, cache strategy, runtime constraints, component boundaries, platform-aware design.

### Tooling and Data-driven Gameplay

I have built systems and tools that allow teams to change behaviour, author content, and inspect data with less rebuild friction. This has been useful both in game development and in broader software delivery contexts where the right internal tool can reduce risk and speed up iteration.

Key contributions:

- I built a data-driven state machine for EyePet Move's multi-toy system, allowing gameplay changes to the Move toy behaviour without recompiling the project.
- I built a level editor for AS3 games with grid snapping, freehand placement, property inspection, multi-select, layer locking, and drawing tools for lines, Bezier curves, and rectangles.
- I built an instanced object tool for Unreal Engine 2.0 that enabled prefab-like collections of objects to be placed as a single object in the game world.
- I built a grouped motion sensor array for the EyeToy framework to improve motion detection accuracy and reduce false positives and negatives.
- I built touch-based object manipulation components in Unity3D for Android and iOS, using quaternion-based translation and rotation behaviour.

Solution themes: authoring tools, data-driven behaviour, workflow design, reusable components, runtime configurability.

### Integration and Distributed Systems

I have worked on systems where consistency, timing, latency, and external platform integration had to be designed explicitly rather than treated as incidental implementation details.

Key contributions:

- I built synchronous networked timed events in Unreal Engine 2.0 for Spellborn, enabling large gameplay-driven scenarios such as the Demon Chest event.
- I designed lag-based network prediction for an AS3 SmartFoxServer prototype, extrapolating velocity and acceleration with a fixed five-frame buffer to keep gameplay usable up to 200ms latency.
- I integrated games with Facebook, MeinVZ, Hyves, Netlog, Disney XD, Mochi, Kongregate, and Google Analytics while preserving core game behaviour across platform-specific requirements.
- I built backend systems in NodeJS, PHP, Java, Haxe, C++, ASP.NET, C#, MySQL, and MSSQL for registration, persistence, level saving, community systems, and e-learning workflows.

Solution themes: latency tolerance, integration boundaries, backend design, platform interoperability, event timing.

### AI and Adaptive Systems

I have applied AI and algorithmic techniques both in modern productivity/e-learning contexts and earlier real-time interactive systems.

Key contributions:

- I added AI-driven productivity workflows to everyday tasks to speed up user productivity.
- I applied AI training to e-learning material categorisation and personalised learning path suggestions.
- I built potential-field path planning for EyePet Move, allowing the pet to run away from a lantern projected onto the ground.
- I built AI-driven gameplay behaviour for EyePet toys, including the Hoop and Lantern interactions.
- I designed obstacle AI, boss behaviour, and gameplay systems across commercial and independent games.

Solution themes: applied AI, behaviour modelling, adaptive systems, practical automation, product-facing intelligence.

## Selected Technical Domains

### Cloud, Backend, and Platform

- Microservices architecture
- Kafka-based event-driven systems
- Azure services and Azure Bicep
- Docker-based services
- Virtual machine scale sets
- SCORM and LTI e-learning functionality
- NodeJS, PHP, Java, Haxe, C#, ASP.NET, C++, JavaScript
- MySQL and MSSQL

### Data and Integration

- Data-driven database architecture
- Encryption and decryption layers for sensitive data
- Serialization frameworks for XML, JSON, ByteArray, and BA64
- Persistence provider abstraction
- Social platform and game portal integration
- Google Analytics integration

### Engine, Runtime, and Performance

- AS3 engine architecture
- Blit rendering pipelines
- Animation caching
- Quad Tree AABB collision prediction
- Impulse-based collision solving
- Quaternion-based movement and rotation systems
- Network prediction and latency compensation
- Unreal Engine, Unity, Flash, EyeToy, PS3 Move

### Tools and Workflow Systems

- Level editors
- Property inspectors
- Multi-select editing workflows
- Instanced object tooling
- Data-driven state machines
- Motion sensor arrays
- Touch manipulation components

## Project Evidence for CV Appendix

### E-learning and Business Platforms

- I created and implemented microservices-based e-learning architecture, translating product and customer requirements into scalable technical solutions.
- I led development work for customer-driven e-learning requirements while balancing architecture, implementation, and operational reliability.
- I designed backend services for SCORM and LTI progress tracking and review workflows.
- I created AI-assisted workflows for course categorisation, learning path suggestions, and productivity improvements.

### WeirdBeard and Commercial Games

- I built reusable AS3 engine systems used across NFS Hot Pursuit, Sims Medieval Web-Game, Phineas and Ferb: Out to Launch, and Carnage.
- I created rendering, animation, collision, serialization, encryption, level editing, and persistence systems that allowed multiple games to share technical foundations.
- I integrated shipped games with portals and social platforms while keeping core game logic insulated from platform-specific APIs.

### EyePet and PlayStation Move

- I built data-driven state machine architecture for EyePet Move's multi-toy behaviour.
- I built gameplay and AI behaviour for Hoop and Lantern toys.
- I improved motion detection accuracy through grouped sensor arrays.
- I designed quaternion-based wheel behaviour for more realistic trampoline wheel motion.
- I prototyped potential-field path planning and rhythm-based interaction systems.

### Spellborn and Unreal Engine

- I built synchronous timed event systems for large gameplay scenarios.
- I created prefab-like instanced object tooling in Unreal Engine 2.0.
- I reworked boss fights and scripted gameplay behaviour, converting scripted functions to C++ where necessary.
- I implemented tutorial UI events and effects in collaboration with UI design.

### Independent and Serious Games

- I built Synthwave Riders, a racing and shooting game with procedural environments, story mode, multiple characters, and multiple weapons.
- I built Masterpiece Mosaic, a puzzle game using public-domain images with configurable difficulty, comfort features, and scoring mechanics.
- I built museum, marketing, and touchtable games with interaction models tailored to public or campaign-specific environments.
- I built community systems for RebelSquadrons.org using PHP, MySQL, JavaScript, HTML, CSS, and a client-side mIRC launcher script.

## Research

- Evaluating Programmer Performance: https://baggelaar.com/evaluating-programmer-performance.pdf

Master's thesis on using visualisation tools to analyse large collections of software metrics from a student project, helping educators reason about student progress and programming weaknesses over time.
