Portrait of Ana-Maria Luisa Mocanu in a white shirt and black tie

Hi! I'm Ana-Maria Luisa Mocanu

Everyone calls me Medi. I'm an NLP researcher and PhD student in computer science at University Politehnica of Bucharest. My research focuses on low-resource languages, especially Romanian. I also work as a data scientist at Endava.

NLP researcher, PhD student in computer science, data scientist, Python teacher and software engineer.

Medi, with long purple hair, walking up a garden path towards a wooden pagoda

About me

My name is Ana-Maria Luisa Mocanu, but everyone calls me Medi. I live in Bucharest, Romania.

I'm a PhD student in Computer Science at University Politehnica of Bucharest, where I also earned a Master's in Artificial Intelligence and a Bachelor's in Mechanical Engineering. My research is in natural language processing for low-resource languages, especially Romanian. I build datasets and annotation tools, work on aspect-based sentiment analysis, and distill what large language models know into small models that work well for Romanian. Alongside that, I've worked on humor retrieval and multimodal learning.

Professionally, I'm a Data Scientist at Endava, applying machine learning and NLP to data-driven problems, from fraud and risk models on card-payment data to LLM solutions and AI agents on Google Cloud, after four and a half years there as a software engineer building fintech services. Beyond research, I teach Python to bachelor's students.

Experience

  1. Data Scientist

    EndavaJun 2026 – present

    I apply machine learning and NLP to data-driven problems. The role builds directly on my research and on the software-engineering background from my fintech projects.

    I build ML models on card-payment data, such as fraud and risk scoring and authorization-rate optimization. I explore, clean and analyse transaction data in Python and SQL, engineer features and present findings to clients, and I build LLM-based solutions and deploy AI agents on Google Cloud (Gemini Enterprise).

  2. Software Engineer

    EndavaDec 2021 – Jun 2026

    I built and maintained fintech applications from scratch in Java and Spring Boot across several projects, one of them nominated among Endava's most successful projects. I grew from feature work into owning test automation, DevOps tasks, deployments, Kong gateway configuration and release preparation, working closely with clients and product owners.

    Clients included a top-3 UK bank, a premium German carmaker's payments system and a European e-invoicing platform, delivered in service-oriented and microservice architectures within an Agile team.

  3. Python Teaching Assistant

    University Politehnica of BucharestOct 2025 – present

    I teach beginner-level Python to bachelor's students in Google Colaboratory, guiding them through lab exercises, projects and tests, and helping them build practical programming skills.

    I design the lab exercises, homework and tests, I've received 12 positive student reviews for making programming concepts easy to understand, and I co-coordinate 2 bachelor's and 2 master's students on their thesis projects. I also built Scholar Rank, the auto-grading platform we use for live lab exams.

  1. PhD in Computer Science

    University Politehnica of BucharestOct 2025 – present

    Research in artificial intelligence: designing models and applying machine learning to complex natural language problems.

    Thesis: Methods and Resources for Low-Resource Languages. Coordinators: Prof. Ciprian-Octavian Truică and Prof. Elena-Simona Apostol; guidance committee: Prof. Liviu P. Dinu and Prof. Mihai Dascălu.

  2. Master's in Artificial Intelligence

    University Politehnica of BucharestOct 2021 – Sep 2025

    Advanced studies in artificial intelligence, machine learning and NLP.

    Thesis: Aspect-Based Sentiment Analysis for Romanian Product Reviews. Coordinators: Prof. Ciprian-Octavian Truică and Prof. Elena-Simona Apostol.

  3. Bachelor's in Mechanical Engineering

    University Politehnica of BucharestOct 2017 – Jul 2021

    A foundation in engineering and technical problem solving.

    Thesis: Study on Remote Monitoring Possibilities for a Refrigeration System. Coordinators: Prof. Valentin Apostol and Prof. Horaţiu Lucian Pop.

Talks and awards

  1. Poster, Best Romanian AI Thesis Awards

    Romanian AI DaysSep 2026

  2. Oral presentation and poster, CLEF 2026

    Conference and Labs of the Evaluation ForumSep 2026

    IROH ranked 1st on JOKER Task 1 English (0.6347 MAP), and our multimodal sexism detection system ranked 29th of 114 on EXIST Subtask 2.2. More under Publications.

  3. Oral presentation, DAWAK 2026

    28th International Conference on Big Data Analytics and Knowledge DiscoveryAug 2026

    Presented ACAT, our collaborative annotation platform. More under Publications.

  4. Poster presentation

    Romanian AI DaysSep 2025

  5. NitroNLP hackathon

    Participant2023

Volunteering

  1. Volunteer, Act for Tomorrow

    Environmental projectsJul 2019 – Sep 2019

    I helped coordinate coastal conservation and community-led waste management, and ran workshops on ecological responsibility and the circular economy.

  2. Volunteer, TEAM (Together Everyone Achieves More)

    Community building2014 – 2016

    I organised workshops and charity events for social welfare and youth development, which taught me a lot about communication and handling logistics on tight schedules.

  3. Volunteer, Caravana Voluntarilor

    Humanitarian projects2014 – 2015

    I worked on large-scale charity events for local communities, learning to take initiative under pressure.

NLP and research

  • Low-resource NLP (Romanian)
  • Aspect-based sentiment analysis
  • Dataset creation and annotation
  • LLM-assisted annotation
  • Inter-annotator agreement
  • Knowledge distillation
  • LLM fine-tuning (LoRA, QLoRA)
  • Information retrieval (BM25, dense, RRF)
  • Cross-encoder reranking
  • Multimodal learning
  • Contrastive learning
  • Label distribution learning
  • Prompt engineering
  • Translation-based data augmentation

Models

  • BERT
  • RoBERT
  • XLM-RoBERTa
  • ModernBERT
  • BGE embeddings
  • CLIP
  • NLLB-200
  • Qwen 2.5
  • Gemma 4
  • GPT-4.1
  • Claude

Machine learning and data

  • PyTorch
  • TensorFlow
  • Keras
  • Hugging Face Transformers
  • PEFT
  • Accelerate
  • scikit-learn
  • LightGBM
  • imbalanced-learn (SMOTE)
  • spaCy
  • NLTK
  • OpenCV
  • Pandas
  • NumPy
  • Matplotlib
  • Seaborn
  • Plotly
  • Jupyter
  • Google Colab

LLM tooling

  • Claude API
  • Model Context Protocol
  • Agent Skills
  • Claude Code
  • Ollama
  • Hugging Face Hub
  • Gemini Enterprise
  • Strands Agents

Languages

  • Python
  • Java
  • JavaScript
  • SQL
  • Bash
  • HTML
  • CSS

Frameworks and architecture

  • Spring Boot
  • Spring MVC
  • Django
  • Flask
  • FastAPI
  • Angular
  • Android (Room)
  • REST APIs
  • Microservices
  • Service-oriented architecture
  • Apache Kafka
  • Tomcat

Databases and migrations

  • PostgreSQL
  • MySQL
  • SQLite
  • MongoDB
  • Azure Cosmos DB
  • Amazon DocumentDB
  • Redis
  • Liquibase
  • Mongock

Cloud and DevOps

  • Docker
  • AWS
  • Microsoft Azure
  • Google Cloud
  • Linux
  • WSL
  • SSH
  • Terraform
  • CI/CD
  • GitHub Actions
  • AWS CodeBuild
  • Kubernetes (basic)
  • Kong

Tools and ways of working

  • Git
  • GitHub
  • Bitbucket
  • uv
  • Maven
  • Gradle
  • Jira
  • Postman
  • Swagger
  • Bruno
  • Selenium
  • Cucumber
  • SonarLint
  • Ruff
  • mypy
  • Agile

Spoken languages

  • Romanian (native)
  • English (B2, professional)

Publications

Projects

Research and machine learning

1st place, CLEF 2026 JOKER

IROH: humor retrieval pipeline

BM25 + dense retrieval / cross-encoder reranker / LoRA and QLoRA LLM judges

A three-stage pipeline combining hybrid sparse-dense retrieval, a fine-tuned cross-encoder reranker and an ensemble of LoRA-adapted LLM judges trained on distilled rationales. It ranked 1st on the official JOKER 2026 Task 1 English leaderboard with a MAP of 0.6347.

Top 29 of 114, CLEF 2026 EXIST

Multimodal sexism detection in memes

CLIP + XLM-RoBERTa / FiLM conditioning / cross-attention

A human-centered model that fuses meme text, a generated visual description, the image, annotator demographics and physiological signals. Cross-attention grounds the description in the image, and FiLM conditions the prediction on who is annotating.

Master's thesis

Aspect-based sentiment analysis for Romanian reviews

GPT-4.1 / Claude Haiku / RoBERT / BERT Romanian cased

I created the Romanian Review (RoR) dataset: 30,000+ e-commerce reviews annotated across 14 product aspects, combining manual labels with LLM annotation. Distilled into ~100M-parameter Romanian transformers, the students reached F1 0.787–0.788, on par with their GPT-4.1 teacher.

ACAT: collaborative annotation tool

Flask / PostgreSQL / Docker

A web platform for annotating four aspect-based sentiment tasks of increasing granularity. It computes inter-annotator agreement (Cohen's and Fleiss' kappa) at export time and exports to CSV, JSON and XML. It's currently used by 400+ users.

Fraud detection service

scikit-learn / LightGBM / PyTorch LSTM / FastAPI / Strands Agents

I cleaned a messy 41.6K-row card-transaction dataset and split it by time to prevent leakage, then compared Random Forest + SMOTE, LightGBM and an LSTM at a 1.4% fraud rate. LightGBM reached PR-AUC 0.65 on the held-out month (73% precision at 61% recall). The model is served with FastAPI, and an AI agent calls it as a tool and remembers each conversation.

Abusive language detection

PyTorch / TensorFlow / Django / Twitter API

We trained 7 CNN and transformer models on 5 hate-speech datasets, combined them with soft and hard voting, and packaged the result into a Django web app connected to the Twitter API.

NLP with Disaster Tweets (Kaggle)

Logistic regression / BERT / BERTweet Large

A Kaggle competition on predicting which tweets are about real disasters. My best submission reached 0.84554 accuracy with a fine-tuned BERTweet Large model.

Software

Scholar Rank: Python exam IDE

Flask / PostgreSQL / Docker / Monaco editor

An exam platform where students solve Python problems in a browser IDE and their code is graded automatically in sandboxed Docker containers. It has a professor dashboard, randomized problem pools and anti-cheat measures, and it's used for live lab exams.

Department website and CMS

Django / MySQL / JavaScript

A full-stack Django site for a university department, with an admin-friendly CMS so academic staff can edit pages and manage content without technical help.

Bunny NomNom: Android app

Java / Android Studio / Room

An app that helps bunny owners plan healthy meals and track daily diets, to prevent the health problems that come from the wrong food.

Asame: social media for music lovers

Django / SQLite / Spotify Web API

A small social network built on the Spotify Web API, with full CRUD for posts and a backend designed for future recommendations based on each user's music taste.

Certificates