Internship position for World Models for Software Architecture (Constructor Fabric)
At a glance
Junior AI Research role at Constructor University. Bremen · full-time.
Pay not stated AI Research salary
aimlroles summary, based on the employer's posting.
What you'll do
- Mine open-source code to map architecture, dependencies and interfaces as connected graphs
- Prepare specification-to-architecture datasets, including generating synthetic projects and cleaning the data
- Build and test baseline approaches for individual pipeline steps, then compare them on shared data and metrics
- Create reproducible experiment tracking and evaluation tools, and help with documentation or publications
What you bring
- You are enrolled in a bachelor’s or master’s program in computer science, data science, mathematics or a related area
- You have used Python and machine-learning frameworks such as PyTorch or scikit-learn
- You are interested in applying machine learning to code, software engineering or formal methods
- You can work in English and collaborate with a team
Who this fits
This internship suits students keen to explore open-ended research topics and collaborate with industry partners on AI. The role is based in Bremen, Germany.
From the employer
About the 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.
Internship Role
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.
Key Responsibilities
- Mine open-source repositories and extract architecture, dependency, and interface graphs from code.
- Help build and clean (specification → architecture) datasets, including synthetic project generation.
- Implement and evaluate baseline models (heuristic search, graph ML, or LLM generation) for single pipeline steps.
- Benchmark models against shared datasets and metrics to compare approaches.
- Build evaluation harnesses and track experiments reproducibly.
- Assist with documentation and, where relevant, publication activities.
Required Qualifications
- Currently enrolled in a BSc/MSc in Computer Science, Data Science, Mathematics, or similar.
- Experience with Python and ML frameworks (PyTorch, scikit-learn).
- Interest in machine learning for code, software engineering, or formal methods.
- Good English and teamwork skills.
Desired Qualifications
- Predictive models/time-series/etc.
- LLM tooling.
- Familiarity with graph machine learning (PyTorch Geometric or DGL).
- Interest in formal methods, program or static analysis, or working with code structure (e.g. AST manipulation, tree-sitter, or repository mining).
Application Details
Please submit:
- CV
- Short motivation letter (max. 1 page) explaining your interest and relevant skills
- Transcript of records (GPA obligatory)
We look forward to your application! The review of applications will begin immediately and will continue until the position is filled.
Please note that only applications submitted through the official application portal will be considered for recognition.