
Full-Stack Developer
LLMs & Human-Centered UX
— Bonn, Germany
Hi, I'm MahshidI build intelligent thingsthat actually work
I'm a Computer Scientist building full-stack web systems with Python, React, and human-centered UX, using LLMs to turn complex material into clear guidance.
Most engineers pick a side. I didn't. Years of UI/UX design, LLM research at Universität Bonn, and production work at Fraunhofer IEM taught me that the best products get built by people who understand both the model and the interface it powers.
Currently pursuing an M.Sc. in Computer Science at Universität Bonn while working as a Software Developer at Fraunhofer IEM.
Where I've shipped
real things
Fraunhofer IEM
Software Developer (Werkstudentin)
- Built a full-stack AI platform that turns lecture slides and PDFs into AI-illustrated educational escape rooms, growing a NiceGUI kiosk prototype into a product on FastAPI, Celery, PostgreSQL, and Redis with document ingestion and JWT authentication.
- Designed a provider-agnostic LLM gateway (structured outputs, vision, image generation) turning course material into facts, questions, and scenes.
- Delivered a React/TypeScript admin panel with a drag-and-drop scene editor, real-time team play, analytics, and English/German localization, shipped via Docker and GitLab CI.
- Modernized engineering dashboards: migrated CRA to Vite (~20× faster cold start), unified 20+ pages on MUI and a Figma design system, and built 5 data dashboards on Flask APIs and SQL with virtualized tables for 1,000+ rows.
Pishma Company
UI/UX Designer (Part-time)
- Created Figma interfaces and prototypes for 3+ digital products, improving consistency and iteration speed.
- Built a Design System adopted across 4 products and translated usability research into UI improvements.
Where I've learned
to think better
Universität Bonn
M.Sc. in Computer Science (Informatik)
Research Projects
Studied cross-lingual bias in LLM judges across 14 languages and 33K score pairs; fine-tuned LoRA adapters with Qwen2.5-14B, reducing Arabic scoring bias by 72%.
Fine-tuned RoBERTa and XLM-RoBERTa to classify 40+ narrative labels on multilingual datasets, designing preprocessing pipelines for robust cross-lingual transfer and minority class performance (F1 up to 0.69).
Azad University, Science and Research Branch
B.Sc. in Computer Engineering
What I've published
Mohammaderfan Koupaei, Amir Esmaeili, Mahshid Khanali, Florian Mai, Patrícia Schmidtová
Frontend & UI/UX
I build interfaces people can actually use. At Fraunhofer IEM, I delivered a React/TypeScript admin panel with a drag-and-drop scene editor, real-time team play, and English/German localization, migrated a legacy CRA codebase to Vite (~20× faster cold start), and unified 20+ pages on MUI and a Figma design system.
Backend & Infrastructure
Products need backends that hold up. I grew a NiceGUI kiosk prototype into a production platform on FastAPI, Celery, PostgreSQL, and Redis, with document ingestion and JWT authentication, shipped via Docker and GitLab CI. Before that, Flask APIs and SQL powering 5 engineering data dashboards.
LLM Systems & Research
I use LLMs to turn complex material into clear guidance. I designed a provider-agnostic LLM gateway (structured outputs, vision, image generation) that turns course material into facts, questions, and scenes. In research at the University of Bonn, I fine-tuned LoRA adapters on Qwen2.5-14B, reducing Arabic scoring bias in LLM judges by 72% across 14 languages. This work was accepted as a long paper at INLG 2026.
Design Systems
Design systems are engineering problems. At Pishma, I built a design system adopted across 4 products and translated usability research into UI improvements. At Fraunhofer IEM, I unified 20+ pages on a shared Figma and MUI foundation. The goal is always the same: make good design the path of least resistance.
What I stand for
The principles I keep coming back to, the ones that shape how I think, build, and collaborate.
01
Systems over chaos
I build infrastructure meant to outlast me. Reusable components, typed interfaces, and design systems that new teammates can read in an afternoon. The structural work nobody notices is usually the work that saves thousands of hours.
02
Evidence beats intuition
I don't ship on gut feeling. Every decision, whether it's an NLP fine-tuning choice or a UI layout, is backed by data, testing, or research. Opinions are starting points. Results are the argument.
03
Rigour without jargon
Code that works isn't enough if nobody can use what it powers. Engineering precision and interface clarity aren't competing values. They're the same standard applied at different layers.
04
Research informs. Shipping teaches.
I work at the intersection of LLM research and production software, which means I'm always a student in one direction. Curiosity compounds. The fastest way to learn something is to ship it.