- model
- Sudha Rani MaddalaApplied AI/ML Engineer · Data Scientist
- architecture
- MSc Data Science, University of Bristolon a BTech Electronics & Communication backbone
- training data
- 6 internships, 2 consulting roles, 1 freelance role, 1 university partner project, 1 independent research project · UK & India, 2021 – 20264 Real Consulting, Labmentix, Personifwy, DataMites, a University of Bristol project with Lloyds Banking Group and more
- intended use
- Data Scientist · Applied AI Engineer · Machine Learning Engineer · Data Engineer roleswhere models need to work for real people, not just on a benchmark
- evaluation
- Top 100, Google Solution Challenge 2024 (team) · Bristol PLUS Award · university hackathons
- ethical considerations
- Blind screening and explainable scores, number-checked AI output, licence-audited datasets, limitations stated up front
- deployment
- Bristol, UK · open to relocating to the netherlands or germanyRight to work in the UK on a Graduate visa. Would need a work permit for the Netherlands or Germany.
- languages
- English, Hindi, Telugu

Sudha Rani Maddala
Open to workBristol, UK · Open to relocating to the Netherlands or GermanyApplied AI/ML Engineer & Data Scientist
I build and evaluate AI applications and data products: LLM-integrated and retrieval tools, computer vision, and data-driven web software in Python, FastAPI and React. MSc Data Science, University of Bristol (January 2025).
- Looking for
- Graduate and junior Data Scientist, Applied AI Engineer, Machine Learning Engineer and Data Engineer roles in the UK, the Netherlands and Germany
- Core stack
- Python
- SQL
- PyTorch
- scikit-learn
- LangChain
- YOLO · OpenCV
- FastAPI
- PostgreSQL
- React · TypeScript
- Recent work
- A FastAPI/PostgreSQL analytics platform with a grounded LLM assistant, an assistive-vision dataset pipeline, and a LangChain CV-screening tool. See the case studies.
About
Documented like a model, built like a person.
ML teams publish a model card to explain what a model is for, what it learned from and where it can go wrong. Here is mine.
I started in electronics engineering, moved into data science consulting in Bengaluru, then did my MSc in Bristol. There I worked on fraud detection in a university project with Lloyds Banking Group. Since graduating I've built a full-stack analytics platform as a freelancer and continued research into assistive computer vision for blind and low-vision people.
- National-level kabaddi for England
- Writes on Medium
- Campus Ambassador, E-Summit IIT Bhubaneswar
- Speaks English, Hindi & Telugu
Skills
From raw data to deployed models.
Grouped by area. Everything listed is used in a project or role on this page.
LLMs & GenAI
- LangChain
- Anthropic Claude API
- OpenAI API
- LLM output validation
- RAG (LlamaIndex, TruLens)
- HuggingFace
Machine & Deep Learning
- PyTorch
- TensorFlow / Keras
- scikit-learn
- XGBoost
- Transformers from scratch
- Anomaly detection
Computer Vision
- YOLO (Ultralytics)
- OpenCV
- CNNs, VGG-16, DenseNet
- Dataset curation & licence audit
NLP & Speech
- BERT / DistilBERT
- TF-IDF retrieval
- Sentiment & emotion
- AssemblyAI speech-to-text
Data & Analytics
- Python
- SQL
- PostgreSQL
- pandas
- Time series
- Statistical analysis
- Tableau
Engineering & Cloud
- FastAPI
- React / TypeScript
- Pydantic
- pytest
- Alembic
- GitHub Actions
- Vercel
- Azure PostgreSQL
- Google Cloud APIs
- AWS
- Streamlit
- Flask
- Git
Featured projects
Three projects, with the evidence.
Each one sets out the problem, my part, the architecture, what was measured, what wasn't, and the limitations.
Vision Assist
Object detection for blind and low-vision pedestrians: a 2024 team prototype, now a research project on how assistive vision fails.
Research in progress · baseline model not yet trained
- Problem & intended user
- Blind and low-vision pedestrians need early warning of hazards such as bollards, bins, stairs and vehicles. Detectors are usually judged on aggregate mAP, which can hide misses on rare but dangerous classes. Intended users: blind and low-vision pedestrians, as a complement to a cane or guide dog, never a replacement.
- My contribution
- 2024 prototype (Google Solution Challenge, team project, Top 100): I worked on the speech-to-text voice-command part of the team's web app.
- Research phase (independent, Nov 2025 – now): defined a 14-class safety-oriented taxonomy and annotation standard.
- Audited public datasets: 5 sources approved, 4 rejected with documented reasons, and a per-image licence check of 17,858 COCO images.
- Wrote reproducible conversion, class-harmonisation and validation scripts that build a 7-class YOLO dataset of 9,800 images and 37,619 boxes.
- Set up the training environment (PyTorch 2.5, Ultralytics) and a Kaggle notebook for baseline YOLO11n training.
Evaluation & measured results
- 2024 prototype detectormAP50 0.774 · mAP50-95 0.518YOLOv8n fine-tuned for 100 epochs at 640 px on the WOTR walking-route dataset. Ultralytics validation split, from the team's training log. Precision 0.827, recall 0.691.
- 2026 dataset QC0 structural errors · 0 exact duplicates9,800 images, 37,619 instances, 7 classes. Result PASS_WITH_WARNINGS: image decoding was not checked in that run.
Not yet measured: Latency and FPS on a phone · Per-class recall and hazard miss rate on the 7-class dataset (model not yet trained) · Robustness to low light, motion blur, glare and occlusion · Testing with blind and low-vision users
Architecture, limitations
Technologies & architecture
- 2024 prototype: browser camera → Flask-SocketIO server → YOLOv8n detection and OCR → spoken alerts through browser speech synthesis, with voice-driven walking directions.
- Research pipeline: preserved source snapshots → source-specific converters → class harmonisation → unified YOLO dataset → validator (label format, box ranges, image/label pairing, SHA-256 duplicates, split leakage) → JSON QC report.
- Planned runtime: on-device inference on a phone, with camera frames kept off any server by default.
Trade-offs & limitations
- A research prototype, not a safety device. No clinical or user safety trials.
- Training images are web photos and street-level shots, not walking footage from the user's viewpoint.
- Each source labels only some classes, so unlabelled objects are not verified negatives.
- The 2024 prototype's voice output did not work in some mobile browsers.
Python · PyTorch · Ultralytics YOLO · OpenCV · Flask · Kaggle
The research code is in a private repository. I can share access or walk through it on request.
Resume Screener
Ranks CVs against a job description with blind screening and an explainable score. Deterministic and offline: no generative model.
Working tool · public code · unit tests
- Problem & intended user
- Recruiters with a large pile of CVs need a first-pass ordering they can audit. Intended user: a hiring manager who still reads every application and makes every decision.
- My contribution
- Sole developer: loaders, anonymiser, scorer, command-line tool, Streamlit app and tests.
Evaluation & measured results
- Tests6 pytest unit testsAnonymisation, loaders for every format, either/or requirements, ranking and the end-to-end pipeline.
- Sample run6 fictional CVs, scores 85 → 15A sanity check on a deliberate spread of profiles, not an accuracy measure.
Not yet measured: Agreement with human reviewers' rankings on a labelled set · Anonymisation recall on real CVs · Processing time per CV
Architecture, limitations and how to reproduce
Technologies & architecture
- Ingestion: custom LangChain BaseLoaders turn PDF (pypdf), DOCX, TXT and Markdown files into Documents.
- Blind screening: names, emails, phone numbers, links and personal fields (date of birth, gender, nationality) are redacted before scoring.
- Scoring: required skills 60%, nice-to-haves 15%, TF-IDF cosine similarity 25% (scikit-learn). Either/or requirements such as “PyTorch or TensorFlow” count once.
- Output: a validated Pydantic CandidateAssessment per CV (score, verdict, matched and missing skills), shown in a CLI with CSV export and a Streamlit UI.
- Not RAG and not generative: no embeddings, vector store or LLM calls. I removed an optional Claude assessment step so it runs offline at no cost.
Trade-offs & limitations
- Keyword-based: a strong candidate who describes a skill differently can score lower.
- Anonymisation reduces bias but cannot guarantee that identifying details in free text are removed.
- Automated screening is regulated (UK GDPR Article 22; the EU AI Act treats recruitment AI as high-risk), so it is decision support only.
Reproduce
pip install -r requirements.txt
python -m resume_screener --job samples/job_description.md --resumes samples/resumes --csv ranking.csv
streamlit run app.py
pip install -r requirements-dev.txt && pytestPython · LangChain · scikit-learn · Pydantic · Streamlit · pytest
Social-Impact Analytics Platform
Full-stack reporting platform for a UK charity: FastAPI, PostgreSQL and React, with an AI assistant whose numbers are checked against the data.
Freelance via 4 Real Consulting · deployed · private client code
- Problem & intended user
- The charity's reporting data (attendance, service activity, strategic missions and finance) lived in spreadsheets and staff workbooks. Staff, managers and trustees needed one dashboard with figures they can trace back to the source.
- My contribution
- Lead developer: backend, data model, importers, React frontend, test suite, CI and deployment.
Evaluation & measured results
- Backend tests1,193 passingpytest against a PostgreSQL 17 service container. One documented known failure (2 Oct 2026 baseline), and CI fails on any new one.
- CI gatesSecret scan · tests · type-check · lint · buildBrowser end-to-end tests run locally because they need real client data, which never goes to GitHub.
Not yet measured: Quality of AI answers against a labelled question set · API and page latency under load
Architecture, limitations
Technologies & architecture
- Backend: Python 3.12 and FastAPI on PostgreSQL 17, with Alembic migrations and Azure Database for PostgreSQL in production.
- Frontend: React, Vite and TypeScript. KPIs, comparisons, activity heatmaps, quarterly reports and revenue split, plus an accessibility panel (text size, high contrast, keyboard controls).
- Data validation: the workbook importer follows every formula in the summary sheet and flags rows that read the wrong quarter, mission or activity instead of importing them. Source figures are kept separate from business-case estimates.
- AI features (Anthropic Claude API) go through one gateway with a kill switch, rate limiting and metadata-only logging. The server sends only aggregated figures, every number in an answer must appear in that data, and contact-like details are blocked before display.
- Delivery: GitHub Actions runs the checks, then deploys to Vercel. Nothing ships unless they pass.
Trade-offs & limitations
- Client code and data are confidential, so there is no public repository, screenshot or demo.
- AI summaries are assistive. Deterministic metrics stay the source of truth.
- One known backend test failure is still open.
Python · FastAPI · PostgreSQL · Alembic · React · TypeScript · Claude API · GitHub Actions · Vercel
Private client project. I can walk through the architecture and code in an interview.
Other projects
Earlier, smaller or private work. Links appear where the code is public.
Speech Intelligence App
Audio upload, YouTube link or microphone → transcript, sentiment labels and chapter summaries.
- Chunk-based transcription of live microphone input
- Sentiment labels and auto-chapter summaries for long audio
- One Streamlit interface for all three input types
Python · AssemblyAI · Streamlit
Transformer for Sentiment Analysis
MSc dissertation: a Transformer implemented from scratch in PyTorch, with an extended encoder for sentiment classification.
- Multi-head attention, positional encoding and encoder–decoder written from first principles
- 82.45% test accuracy on SST-2. Validation loss plateaued (0.456 vs 0.269 training), a sign of overfitting
- Error analysis: sarcasm and context-heavy sentences remained the main failure cases
PyTorch · Transformers · SST-2
Dissertation code is private.
Emotion Analysis in Tweets
BERT and DistilBERT fine-tuned for anger, joy, sadness and optimism on TweetEval.
- Transfer learning with early stopping and learning-rate scheduling to limit overfitting
BERT · DistilBERT · HuggingFace · Transfer learning
Conversational AI for PDFs & Websites
Retrieval-augmented generation pipelines for asking questions about documents and websites.
- Indexing and querying with LangChain and LlamaIndex
- TruLens used to inspect groundedness of answers
LangChain · LlamaIndex · TruLens · OpenAI API
Code not public. No formal evaluation results to report.
AI-MedVision
Image classifiers for brain-tumour MRI, retinal OCT and COVID-19 / pneumonia X-rays, behind one Streamlit app.
- Custom CNN for MRI, DenseNet121 for OCT and VGG-16 transfer learning for chest X-rays
- Trained on public datasets with rotation, scaling and flip augmentation
- Educational prototype: not clinically validated and not for diagnostic use
TensorFlow · Keras · CNN · DenseNet121 · VGG-16 · Streamlit
Code is private.
Fraud Detection & Customer Value
University of Bristol project with Lloyds Banking Group as industry partner: spend classification, anomaly detection and CLV segmentation.
- Random Forest classifier for spend categories, including Health & Wellness and Fashion & Apparel
- Isolation Forest and One-Class SVM for unsupervised fraud detection
- Customer lifetime value calculation and segmentation for targeted marketing
Python · Random Forest · Isolation Forest · One-Class SVM
University partner project. Data and code are not public.
Retail Sales SQL Analysis
PostgreSQL analytics on a 1,040,200-row synthetic retail dataset: schema, data generator and 20 business queries.
- Questions range from simple counts to window-function analysis
- Synthetic data that mirrors a public Kaggle schema, documented as such
PostgreSQL · SQL · Window functions · Python
Manaswel
Concept and web prototype for a privacy-first mental-health companion.
- Explored BERT, DistilBERT and RAG for context-aware, safe responses
- Web prototype with privacy notice, consent flow and accessibility fixes
Next.js · TypeScript · BERT / DistilBERT (explored) · RAG (explored)
Code is private.
FBI Crime Time Series
Forecasting crime trends from historical records (Labmentix internship).
Python · Time series
Flight Fare Prediction
XGBoost regression with SQL and Tableau EDA.
XGBoost · SQL · Tableau
Music Recommender
Recommendation system served with Flask.
Python · Flask
Digit & Face Recognition
CNNs for handwritten digits and celebrity faces.
CNN · Keras
Experience
Internships, freelance work and project partnerships.
Since 2021: 6 internships, 2 consulting roles, 1 freelance role, 1 university partner project, 1 independent research project. Each role is labelled with its type.
Software Developer (Freelance)
4 Real Consulting Limited
Lead developer of a full-stack social-impact analytics platform for a UK charity client.
- Built the platform end to end with React/TypeScript, Python/FastAPI and PostgreSQL, covering attendance, service activity, strategic missions and financial metrics
- Designed the data model, Alembic migrations and REST APIs that ingest, validate and serve reporting metrics
- Wrote a workbook importer that traces every summary-sheet formula and flags rows that read the wrong quarter or mission instead of importing them
- Kept source data separate from business-case estimates so every figure has clear provenance
- Added AI summaries and Q&A (Claude API) behind a single gateway, with every number in an answer checked against the supplied data
- Set up CI (secret scan, 1,193 passing backend tests, type-check, lint, build) that gates every Vercel deployment
- Shipped accessibility features: adjustable text size, high contrast, keyboard controls and a persistent accessibility panel
Applied AI Research, Vision Assist
Independent research project
Independent research since November 2025, ongoing: why vision-based navigation aids for blind and low-vision people fail. It builds on a separate 2024 team prototype (Google Solution Challenge).
- Defined a 14-class safety-oriented detection taxonomy and annotation standard from accessibility research
- Audited and acquired public datasets with documented licence checks (17,858 COCO images checked individually)
- Built and validated a reproducible 7-class YOLO dataset of 9,800 images and 37,619 instances
- Prepared baseline YOLO11n training on Kaggle and an evaluation plan covering per-class recall, latency and robustness
AI-ML Intern
Labmentix
End-to-end data science projects across public safety, fitness, retail and finance.
- Built predictive models and analysed crime trends for the FBI Time Series project
- Derived user and fitness insights from activity data in Strava Fitness App Analytics
- Analysed store performance for Integrated Retail Analytics
- Applied ML to financial customer data in the Paisabazar project
Artificial Intelligence Intern
Personifwy
Developed and tested ML models and designed practical AI use cases with mentors.
- Developed and tested machine learning models to extract data-driven insights
- Applied AI to automate parts of project workflows
- Designed practical AI use cases together with mentors
Project Development Intern
Streams Learning Hub
Designed flexible learning for neurodivergent students and researched AI for personalised education.
- Created an educational portfolio for flexible learning environments for neurodivergent students aged 12+
- Researched AI for personalised education, including recommender systems and NLP feedback analysis
- Ran market research and literature reviews on emerging education technology
- Visualised findings in Tableau to support recommendations


MSc Data Science
University of Bristol · Bristol, UK
- Bristol PLUSUniversity of Bristol award for skills and experience gained outside the degree
- Top 100Google Solution Challenge 2024 (team)
- WinnerUniversity hackathons
Core modules
- Software Development
- Programming & Algorithms
- Large-Scale Data Engineering
- Visual Analytics
- AI & Text Analytics
- Ethics
Beyond the classroom
- Google Developer Student Club
- Data Science Society
- Volunteer Coordinator, Women in Leadership
- 2018 BTech begins · Kalaburagi, India
- 2022 First-class BTech, then data science consulting
- 2023 MSc Data Science · Bristol, UK
- Jan 2025 Graduated MSc, University of Bristol
BTech Electronics & Communication Engineering
Central University of Karnataka · Kalaburagi, India
First Class · CGPA 8.22 / 10
- Data Structures
- Algorithms
- Machine Learning
- Signal Processing
- Internet of Things
- IEEE student member
Certifications
- GenAI MastermindGrowth School
- AI Skills Challenge: Azure MLMicrosoft Build
- Certified Data ScientistDataMites
- Google Data AnalyticsCoursera
- Python for Data ScienceNPTEL
- Design ThinkingNPTEL
- Python 101 for Data ScienceIBM
Hackathons & competitions
- Google Solution Challenge 2024 (Top 100, team)
- IBM Call for Code
- AI Healthcare Hackathon (Encode)
- Google Developer Student Clubs 2024
- University of Bristol Datathon
- BrisHack
- RSA Student Design Awards
Retrieval demo
Search my CV.
A small keyword-retrieval demo, not a generative model: it scores short passages from my CV against your question and shows which section each answer came from. It runs entirely in your browser, so nothing you type is sent anywhere.
Contact
Let's build something useful together.
Open to graduate and junior Data Scientist, Applied AI, ML Engineer and Data Engineer roles in the UK, the Netherlands and Germany. If you're building AI that has to work for real people, I'd love to hear from you.
sudhamsr23@gmail.com