NewFull-timeRemotePosted today
Internship position for World Models for Software Architecture (Constructor Fabric)
Constructor Labs · Remote
#research
About the role
<p><strong>About the Project</strong></p>
<p>Constructor Fabric turns a company's informal knowledge into production software through a pipeline of composable capability units called <em>gears</em>: requirements → architecture → product fit → framework (G1) → application → runtime. We are building a <strong>World Model</strong> over that pipeline — a model that does not just generate code, but predicts the <em>consequences</em> of an architectural decision: total cost of ownership, unintended side effects, latency and failure behaviour, and whether a proposed composition is even admissible.<br>The central object is not a digital twin of the application but its <strong>formal architectural skeleton</strong>: 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 <strong>gap</strong>. All of it is written in a <strong>domain-specific language</strong> 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.</p>
<p><strong>Internship Role</strong></p>
<p>As a Research Intern (Machine Learning for Software Engineering), you will support the data and modelling work behind the World Model — mining code, building datasets, and running baseline experiments. We are looking for students who are keen to collaborate with industrial companies working with AI, open to out-of-the-box topics, and interested in a long-term collaboration.</p>
<p><strong>Key Responsibilities</strong></p>
<ul>
<li>Mine open-source repositories and extract architecture, dependency, and interface graphs from code.</li>
<li>Help build and clean (specification → architecture) datasets, including synthetic project generation.</li>
<li>Implement and evaluate baseline models (heuristic search, graph ML, or LLM generation) for single pipeline steps.</li>
<li>Benchmark models against shared datasets and metrics to compare approaches.</li>
<li>Build evaluation harnesses and track experiments reproducibly.</li>
<li>Assist with documentation and, where relevant, publication activities.</li>
</ul>
<p><strong>Required Qualifications</strong></p>
<ul>
<li>Currently enrolled in a BSc/MSc in Computer Science, Data Science, Mathematics, or similar.</li>
<li>Experience with Python and ML frameworks (PyTorch, scikit-learn).</li>
<li>Interest in machine learning for code, software engineering, or formal methods.</li>
<li>Good English and teamwork skills.</li>
</ul>
<p><strong>Desired Qualifications</strong></p>
<ul>
<li>Predictive models/time-series/etc.</li>
<li>LLM tooling.</li>
<li>Familiarity with graph machine learning (PyTorch Geometric or DGL).</li>
<li>Interest in formal methods, program or static analysis, or working with code structure (e.g. AST manipulation, tree-sitter, or repository mining).</li>
</ul>
<p><strong>Application Details</strong></p>
<p>Please submit:</p>
<ul>
<li>CV</li>
<li>Short motivation letter (max. 1 page) explaining your interest and relevant skills</li>
<li>Transcript of records (GPA obligatory)</li>
</ul>Find Jobs in Germany on Arbeitnow
Apply for this role
Apply right here on 9180 — we'll forward your application to Constructor Labs. No external redirects, no lost candidates.
Originally listed on Arbeitnow. View the original posting ↗
