About
Opus artificem probat: AI, systems, graphics, cloud and dev tools.
Selected personal and open-source projects.
-
- Forward pass traced once into a backend-neutral graph of primitive tensor ops, not opaque hand-written kernels.
- Fused regions get kernels generated for them, while imported Rust kernels cover the shapes the generator does not (decode GEMV, flash fallback, gathers).
- GPU dispatch sequence captured once and replayed per token (CUDA graph replay, cached wgpu re-encode), to cut launch overhead rather than compute.
- Kernels written as real Rust
#[kernel]functions lowered to SPIR-V/PTX/AMDGPU, with no cuBLAS or cuDNN. - Models are a
Modeltrait plus a family registry: each architecture traces its own graph from a GGUF or safetensors checkpoint, with GPTQ/AWQ packed quantization kept resident. - One executor contract shared by the wgpu, ROCm and PTX backends, each checked against a CPU oracle.
- Serving capabilities: an OpenAI-compatible HTTP API with embeddings, reranking, LoRA adapter management and metrics; text generation is being reconnected to the new single-sequence driver.
-
mfw repo
A local-first orchestrator that runs fleets of coding agents across your projects, from goals to verified, merged work.
typescript · multi-agent orchestration · mcp · acp · git worktrees- Board (
mfwb): a CLI and library that keeps project work as plain markdown files in your repo. Custom document types, dependencies checked for cycles, lock-safe claiming for parallel agents. - Orchestration: a service that runs a fleet of agents across projects. A per-project brain plans work, picks the harness and model, runs parallel or competing attempts, and settles results, with every decision audited and overridable.
- Fleet: Claude Code, Codex CLI and others in isolated git worktrees, locally or on remote hosts. Verified before an autonomous merge, within budgets, rerouted when a subscription runs out.
- UI: a local web app: lane board, flow view, inspector, docs and repo browsers, fleet usage and spend. Works on a phone.
- Also: host resource coordinator, RunPod and OpenRouter providers, triggers, MCP server.
- Board (
-
ntfs-reader repo
Fast in-memory scans of the NTFS master file table and a reader for the USN change journal.
rust · windows · ntfs · mft · usn journal · filesystems- $MFT read straight off the raw volume into memory and parsed in one pass, not through Windows file-enumeration APIs.
- Full-volume iteration with resolved paths in 3.9s, down from 12.3s uncached.
- USN change journal read live, with event-mask filtering and a choice of start position (beginning, next, or a specific USN).
- Renames tracked across journal events by matching the new name back to the old path from an in-memory history.
- Deleted files supported: resolve their old paths, read their data back, and check whether it survived.
- Memory-bounded modes for huge volumes: stream the table in chunks, load a compact form that uses 30 to 70 percent less memory, or cap the path cache.
-
jevmon repo
A Linux process monitor for machines that run agent swarms. Instead of hardcoded rules, a decision model judges what runs and flags suspicious or malicious activity and dangerous commands.
python · rust · ebpf · jev · laya · decision models · fine-tuning- Built for machines where AI agents run commands on their own. A small decision model looks at each process in context and rates it safe, warn or crit, with no hardcoded rules or name lists.
- Runs as a background service fed by an eBPF exec feed (a /proc poller is the alternative), with a live terminal client to follow the verdicts and add allow rules.
- Five selectable judge models (Laya by default, Ettin-1B, Qwen3-Embedding-8B, and LoRA-tuned Laya and Ettin): linear heads on frozen embeddings or small LoRA adapters merged at load, trained and scored on lab scenarios, synthetic launches and public command datasets.
-
vuldir repo
A unified rendering API for Vulkan and DirectX 12, built without third-party libraries.
c++ · cmake · graphics · vulkan · directx 12 · hlsl- One bindless API over Vulkan 1.3 and DirectX 12, omitting either backend's native binding model entirely.
- Device-owned descriptor heaps for stable resource indices that mean the same thing on both backends.
- Resource state is tracked virtually while recording and published atomically on submit, so contexts record and submit concurrently.
- Resource management, math, and PNG/HDR/JSON/glTF loaders are all from scratch, no third-party rendering libraries.
-
- Deterministic pipeline: state machine, world-state validation, geometric grasp/placement, MoveIt planning, then execution.
- Learned components as optional adapters that can only select among already-authorized primitives, never bypass planning or command joints.
- Success verified against world state, not self-report; an unproven run stopped safely, with the reason stated.
- Autonomous restocking campaign: shelf and tray surveyed, deficits worked out, and transfers chosen and repeated until no compatible pair is left.
- Lane routing that scores a real cost across compatible lanes, avoiding occupied ones and ones obstructed by something overlapping.
- Obstacles absent from every model and scenario file changing what may be executed; execution refused, joints unmoved, when scene geometry is stale.
- Seeded, byte-deterministic scenario replay for reproducing a specific failure exactly.
- Product identity from vision, with the barcode optional: the barcode when readable, then label text matched against registered products, then another look from a different side. Look-alike products are never confused: a product is named only when the evidence confirms it, otherwise it asks for another look or a human.
- Per-lane stock counted from depth, and inventory totals that separate confirmed, assumed and reported counts, saying so when a lane cannot be read.
- Round and box-shaped products from a generated catalogue of fictional brands, each measured against acceptance bounds set before the held-out run, with failed and inconclusive results published.
-
orgonzola repo
Local-first GitHub organization intelligence for engineering leads, teams, and project health.
rust · typescript · tauri · react · github · sqlite · rag- GitHub activity indexed into teams, sprints, and work items as real linked records, not just labels.
- Code and threads chunked and embedded into a vector store for RAG-based semantic retrieval.
- Deterministic rules applied first and cheaply (stale PRs, merges without review, failing CI).
- LLM limited to fuzzy judgment; the tool stays useful with it switched off.
-
Obsidian plugins Habit Tracker repo · Voice Journal repo
Focused, local-first additions to Obsidian for daily habits and AI-assisted voice journaling.
typescript · obsidian · markdown · local-first · speech-to-text- Kikijiki Habit Tracker. A compact desktop and mobile panel that records configurable habits as tags on the current note. Install from Obsidian Community Plugins.
- Kikijiki Voice Journal. Imports recordings, transcribes them through a configured speech-to-text service, and asks a selected coding agent to create or update Markdown notes in the active vault; keeps original audio, transcripts, resumable run state, and a live filterable activity timeline so every automated vault edit remains traceable. Source on GitHub.
Software engineer with 10+ years of experience across game development and digital twin platforms, building the foundations other teams depend on: data formats and SDKs, storage and data pipelines, 3D viewers, React UIs, and CI/CD, mostly in Rust, Python, and TypeScript, from design through production release. Hands-on experience running workloads on AWS.
Currently a hands-on lead of a 6-person team: building core systems myself while owning requirements, scheduling, and security audits, and working with solutions engineers to deliver for factory customers in Japan and overseas. Design and build AI agents end to end (RAG, tool calling, tracing, evals), with an understanding of AI from the underlying math to current techniques. Beyond work, build substantial AI systems of my own, such as a from-scratch LLM inference engine.
Work Experience
-
Lead Software Engineer – Digital Twin Platform Oct 2025 – PresentWoven by Toyota · Tokyo, Japan
- Lead the Visualizer and Data Pipeline teams (6 people in total): requirements gathering, coordination with other teams, task and schedule management, reviews and planning, security audits
- Work with solutions engineers to gather needs directly from multiple factories (external companies) in Japan and overseas and feed them into development
- Built a modular viewer engine (data components, logic, signals, rendering) with plugins for 3D models, Gaussian splats, shapes, text, and images, plus a React panels API with ready-made timeline, annotation, inspection, and profiling panels; adopted by multiple teams to build their own visualizers
- Improved rendering performance for large files and heavy scenes, and playback and seek performance through data streaming and snapshot support; improved documentation and templates and hardened security
- Continued evolving the data format and SDK with spec improvements and advanced features including snapshots, sharding, and async I/O; improved dataframe/Databricks integration
- Implemented a graph-based object storage and data layer that serves every service on the platform and makes onboarding new services fast; supports deduplication, versioning, tags, queries, and recursive operations, backed by an extensive test and fuzzing suite
- Ported a C#/Unity simulation engine to Rust (Bevy), eliminating licensing fees and improving execution speed by 100x, memory usage by 50x, and binary size by 20x
- Developed a fully working tech demo presented at Toyota's public Kakezan showcase in Woven City, combining project management, simulation editor and execution, visualizers, KPI dashboards, and an integrated AI agent
- Agent present throughout the multi-tool, multi-panel app, working seamlessly with the editor, visualizers, and dashboards; RAG, telemetry DB queries, and file/data search integrated as tools
- LLMs via AWS Bedrock; OpenTelemetry tracing of turns and tool calls; evals measuring accuracy on common tasks to improve prompts and context design
-
Senior Software Engineer – Digital Twin Platform Aug 2024 – Sep 2025Woven by Toyota · Tokyo, Japan
- Designed a unified data format specification, now the core technology used across the Digital Twin Platform for telemetry data streaming and storage; implemented the SDK with a Rust core and bindings for C#, Python, and WebAssembly (JavaScript/TypeScript); added CLI tools and dataframe support; integrated with viewers, simulation engines, and data pipelines
- Developed a React SPA (TypeScript/Three.js/WebGL) for 3D simulation-data playback, with a 3D viewport, UI overlays, frame and asset streaming, tests, and CI/CD; met all security requirements and shipped
- Added real-world telemetry playback with time-series streaming, asset animation, and custom visualizations; contributed to the design of the mapping from telemetry to viewer entities and animations
- Designed a data model based on an ECS-style architecture where components are the semantic unit of data; implemented the component registry, plus related tooling, documentation, and frontend/backend support
- Coordinated GitHub migrations for multiple projects; implemented CI/CD pipelines for build, test, benchmarking, audit, SBOM scanning, publishing, documentation websites, and releases
-
Lead Tools Programmer Sep 2018 – Jul 2024Square Enix · Tokyo, Japan
- Led a five-person team developing a company-wide asset platform with ML-powered tagging and captioning
- Designed a scalable backend using Rust, PyTorch, and PostgreSQL, and built the web interface with Axum and Leptos
- Developed a visual issue-tracker plugin for Unreal Engine, adopted by three projects (150–300 users total)
- Created a flexible Jenkins CI/CD template for Unreal Engine projects, reducing setup time by weeks per project
- Served as technical project manager for a procedural cutscene generation project; pioneered the adoption of Rust for tools
- Led tools and infrastructure development for a 50-person tech demo team, covering Perforce setup, Jenkins CI, server administration, and Sentry integration
- Mentored engineers, managed task allocation, handled stakeholder requests, and collaborated with cross-functional teams
-
Game Programmer – Elden Ring Apr 2015 – Sep 2018FromSoftware · Tokyo, Japan
- Implemented the full vegetation system pipeline: a 3ds Max DCC tool, BVH exporter, runtime streaming, and rendering
- Converted the AI system from single-threaded to multi-threaded execution and improved Havok pathfinding for the open world
- Created open-world map-building tools that merge assets, events, and metadata across LODs
- Led the Git migration and GitLab deployment for the engine repositories
-
Programmer (Internship) Apr 2014 – Oct 2014Cygames · Tokyo, Japan
- Developed the mobile app "O'REILLY COLLECTION" using Unity and Adobe AIR
- Implemented a custom Yammer-based chat client for internal use
- Received a commendation from the department lead for outstanding performance
Publications
-
Believable Fighting Characters in Role-Playing Games Using the BDI Model Feb 2015Matteo Bernacchia, Jun'ichi Hoshino · Information Processing Society of Japan (IPSJ) · cir.nii.ac.jp
-
AI Platform for Supporting Believable Combat in Role-Playing Games Nov 2014Matteo Bernacchia, Jun'ichi Hoshino · Information Processing Society of Japan (IPSJ) · cir.nii.ac.jp
Skills
- LanguagesRust, C++, Python, TypeScript/JavaScript, C#, SQL
- Engines & FrameworksUnreal Engine, React, Three.js, Node.js, DirectX/Vulkan, CUDA
- AI & MLLLMs/GenAI (Amazon Bedrock), AI agents (tool calling, workflows), MCP, ACP, RAG, prompt/context engineering, evals, PyTorch, MLOps
- Tools & InfraAWS (EKS), Git, Perforce, GitHub Actions, Jenkins, Docker, Kubernetes, Terraform, OpenTelemetry, Nix, Linux (NixOS)
- Spoken LanguagesItalian (Native), English (Professional; TOEFL iBT 110, TOEIC 940), Japanese (JLPT N1)
Certifications
-
AI & Machine Learning
-
Deep Learning SpecializationFeb 2023DeepLearning.AI (Coursera) · Verify
-
Natural Language Processing SpecializationApr 2023DeepLearning.AI (Coursera) · Verify
-
Generative AI with Large Language ModelsAug 2023DeepLearning.AI & AWS (Coursera) · Verify
-
Generative AI for Software Development Professional CertificateOct 2024DeepLearning.AI (Coursera) · Verify
-
PyTorch for Deep Learning Professional CertificateNov 2025DeepLearning.AI · Verify
-
Deep RL CourseApr 2023Hugging Face
-
Getting Started with Deep LearningOct 2025NVIDIA (DLI) · Verify
-
Introduction to AI in the Data CenterJan 2024NVIDIA (Coursera) · Verify
-
Generative AI Essentials: Overview and ImpactJan 2024University of Michigan (Coursera) · Verify
-
Fine Tune BERT for Text Classification with TensorFlowApr 2023Coursera Project Network · Verify
-
The PyTorch Basics You Need to Start Your ML ProjectsMar 2023Coursera Project Network · Verify
-
Building Towards Computer Use with AnthropicJan 2025DeepLearning.AI · Verify
-
AI-Powered Software and System DesignOct 2024DeepLearning.AI (Coursera) · Verify
-
Team Software Engineering with AISep 2024DeepLearning.AI (Coursera) · Verify
-
-
Cloud, DevOps & Security
-
Container Orchestration using KubernetesJun 2023Coursera Project Network · Verify
-
AWS Cloud Solutions Architect Professional CertificateAmazon Web Services (Coursera)
-
Infrastructure as Code with TerraformJul 2026Google Cloud (Coursera) · Verify
-
Cybersecurity Professional CertificateDec 2023Google (Coursera) · Verify
-
Education
-
University of Tsukuba (Graduate School) Apr 2013 – Mar 2015Master's Degree, Systems and Information Engineering, Intelligent Interaction Systems · Tsukuba, Ibaraki, Japan
- Researched believable AI characters for role-playing games, based on the BDI (belief–desire–intention) agent model
-
Marche Polytechnic University Jul 2010Bachelor's Degree, Information and Automation Engineering · Ancona, Marche, Italy
- Thesis: Study of a Software Agent Platform for Healthcare Information Systems (2010, Faculty of Engineering)