PhD Position: World Models for Software Architecture Synthesis (Constructor Fabric)
Constructor Labs
Bremen · Onsite · Full Time
Posted
Job description
Supervisor: Prof. Dr. Alexander Tormasov About the Position Constructor Knowledge Labs (CKL), in collaboration with Constructor Technology, invites applications for a PhD position in machine learning for software engineering and formal methods, on the Constructor Fabric project. Constructor Fabric turns a company's informal knowledge into production software through a pipeline of composable capability units called gears : requirements → architecture → product fit → framework (G1) → application → runtime. We are building a World Model over that pipeline — a model that does not just generate code, but predicts the consequences of an architectural decision: total cost of ownership, unintended side effects, latency and failure behaviour, and whether a proposed composition is even admissible. The central object is not a digital twin of the application but its formal architectural skeleton : gear contracts (GearSpec), a typed attributed hypergraph of the application (AppGraph), a composition algebra that defines which assemblies are legal, and several semantic projections (types, protocols, resources, security) over which properties are proved, refuted by counterexample, or reported as an explainable gap . All of it is written in a domain-specific language whose syntax trees and graphs we keep in a projectional editor (JetBrains MPS) — so the DSL is not a convenience layer, it is the thing that defines the model's state space and the boundary of what the model is allowed to propose. What you will work on Depending on your background, one or two of: Formal skeleton and composition — GearSpec as a contract $(Requires, Provides, State, Effects, Assumptions, Guarantees, Parameters)$; AppGraph as a typed attributed hypergraph; an algebra of assembly (sequential, parallel, feedback, refinement); semantic projections and system-level invariants over trajectories. Architecture synthesis as an inverse problem — given a specification, load and constraints, find the composition of gears that realises it. Constraint solving and MCTS as the baseline; a learned transition/value model for ranking and pruning; LLM proposals treated strictly as candidate hypotheses that a DSL parser, type checker and property checks must then admit or reject. DSL design and language engineering — the gear DSL and its glue layer decide which AppGraphs are expressible at all, and therefore where th…