Software Technology Group

We focus on code intelligence and programming models, applied in artificial intelligence and software engineering, and in programming language design and implementation. We develop models, tools, and platforms for more efficient, reliable, and secure software systems.



Research Topics

AI/Software Engineering

We explore how advances in AI and software engineering can mutually reinforce and enhance the software development process.

Projects: SSM Native • SecureCoder

Programming Languages

We design novel methods, tools, and platforms for programming languages to improve ease of use, reliability, correctness, and efficiency.

Projects: REScala • Bismuth


Team

Head of Group

Prof. Dr. Mira Mezini

Prof. Dr. Mira Mezini

Chair of Software Technology

Administrative, Project and Technical Staff

Claudia Roßmann

Claudia Roßmann

Administrative Staff

Pamela Möller

Pamela Möller

Administrative Staff

Esther Berghoff

Esther Berghoff

ATHENE Project Manager

Boris Scheet

Boris Scheet

System Administrator

Researchers

Dr. Amir Molzam Sharifloo

Dr. Amir Molzam Sharifloo

Artificial Intelligence for Software Engineering

amir.molzam@tu-...

Doctoral Researchers

Patrick Müller

Patrick Müller

Jannis Brugger

Jannis Brugger

Julian Haas

Julian Haas

Abhinav Anand

Abhinav Anand

Daniel Maninger

Daniel Maninger

Timon Böhler

Timon Böhler

Mert Tiftikci

Mert Tiftikci

Shweta Verma

Shweta Verma

Simon Daniel

Simon Daniel

Christian Kuessner

Christian Kuessner

Fabian Meerkötter

Fabian Meerkötter

Benedict Smit

Benedict Smit

Srividya Ravikumar

Srividya Ravikumar


Courses

Our courses put a strong emphasis on integrating with our research activities.

LectureWiSe

Tucan: 20-00-1117-iv

Concepts of Programming Languages (COPL)

Language concepts like functions, scopes, and heap storage, made concrete by implementing a family of increasingly advanced toy languages.

LectureSoSe

Tucan: 20-00-1246-iv

Type Systems (TYPES)

Type systems that statically rule out entire classes of errors: from the typed lambda calculus to polymorphism, type inference, and dependent types, mechanized in Lean4

LabSoSe

Tucan: 20-00-0306-pr

Implementation of Programming Languages (IMPL)

Hands-on project implementing a program from current language research: e.g. DSLs, distributed abstractions, or dependent types.

LabWiSeSoSe

Tucan: 20-00-0673-pr

Software Development Tools (SDT)

Small-group project implementing software development tools: including AI-based approaches: connected to our current research.

Seminar SoSe

Tucan: 20-00-0182-se

Design and Implementation of Programming Languages (DAIMPL)

Try out novel programming languages, libraries, and abstractions from research; write a tutorial paper and present what you learned.

Seminar WiSeSoSe

Tucan: 20-00-1139-se

Artificial Intelligence for Coding Assistance (AI4CA)

AI-powered coding assistance: code completion, bug detection, and the research behind tools like Copilot, explored in small groups.

Seminar & LabWiSe

Tucan: 20-00-1252-se & 20-00-1253-pr

Type Systems, Programming Language and Functional Programming Research

This course is meant for advanced students, after having done the TYPES lecture.

ProjectWiSe

Tucan: 20-00-0989-pp & 20-00-0359-se

Software Engineering Project (SEP)

Plan, manage, and implement a real-world software project in a team of ~5–8, with topics from industry partners.

Thesis

Bachelor & Master Theses

You enjoyed one or more of our courses, and now you are interested in performing some PL or AI/SE research yourself? Follow the steps described here to let us know! Supervision capacity is limited.