// power platform & power bi developer

Harithas Harikaran

I build business apps, workflow automation and reporting on Microsoft 365, and the Python tools around them. Three years of Power Apps, Power Automate, SharePoint and Power BI, from freelance projects to apps in daily use on construction sites.

Open to junior Power Platform, BI and data roles in Germany and Italy.

Hildesheim, GermanyWorking student at S01 Projektmanagement GmbHM.Sc. Data Analytics, University of Hildesheim

stack.json
// what I ship with, most days
{
  "platform": ["Power Apps", "Power Automate",
               "SharePoint", "SPFx", "Copilot Studio"],
  "data":     ["Power BI", "DAX", "SQL", "Python"],
  "ai":       ["RAG", "spaCy", "Tesseract OCR", "LLM APIs"],
  "tooling":  ["Power Platform CLI", "PnP PowerShell",
               "Git", "Playwright"],
  "languages": { "en": "C2", "it": "A2",
                 "de": "A1", "ta": "native" },
  "since":    "2022"
}
01 / selected work at S01

Apps that inspectors and project managers use every day

Working student at S01 Projektmanagement GmbH since July 2025. The website demos are public. The other apps are internal, so they are shown here as clickable demos under a fictional company name with invented data.

Screenshot of one S01 website redesign demo with a full-screen hero
website redesign demoslive

S01 website demos

Six fully navigable redesign demos of s01-pm.de in German and English, generated from one bilingual content source by a Node static generator with a component kit and a motion system. Unit tests and an output checker validate links, translations and colour contrast on every push to main; Playwright scripts measure the layout at up to seven viewport widths.

Node 22static generatorPlaywrightGitHub ActionsGitHub Pages
power apps · in use since september 2026internal

QS Baustelle, site inspection app

Offline-capable Power Apps canvas app for site inspectors, covering quality inspections and schedule tracking: photo capture, video upload, automatic SharePoint sync, and 45 app revisions shaped by supervisor feedback. Behind it: a SharePoint data model of 9 lists and a document library, and 11 Power Automate flows for observation numbering, photo and video filing, Excel imports, route export and Word reports e-mailed to a chosen recipient.

Power AppsPower FxPower AutomateSharePointPower Platform CLI
spfx · in productioninternal

CRM as a SharePoint Framework web part

A full CRM built with SPFx in TypeScript on SharePoint lists: leads pipeline, companies, contacts, tasks, reports (hit ratio, activity, quarter results) and OKR scoring, lead creation from a pasted email, CSV, Excel-paste and vCard import, CSV export, English and German interface. Versioned releases that the supervisor deploys by dropping one file into a library.

SPFxTypeScriptSharePoint RESTPnP PowerShell
python desktopinternal

Document anonymization tool

Portable, offline Windows app that permanently removes client names, personal data, logos and signatures from PDF, Word, PowerPoint and Excel files before they leave the company: signature lines automatically, signature images on request. Automatic client-name detection, German NLP for person names, an interactive preview to keep or redact single spots, and a four-part quality check, including OCR, that marks every output PASS or FAIL. 106 automated tests.

PythonPySide6PyMuPDFspaCyTesseractPyInstaller
copilot studio · prototypeinternal

Standards assistant for inspectors

A Copilot Studio assistant that answers inspectors' questions on technical standards and cites chapter and page, built on a self-made chapter index of the standard documents. Compared five routes (Copilot Studio, Microsoft 365 Copilot with a SharePoint agent, Azure AI Foundry with Azure OpenAI and AI Search, the Claude API, and AI Builder) against licence and data-residency limits and wrote the decision paper. Also repaired an existing invoice-archiving flow in Power Automate and fixed the root cause of its failures.

Copilot StudioRAGSharePoint
application assignmentdemo

Solution portfolio: CRM and QA app

Two take-home assignment solutions presented as one interactive page: a sales CRM on SharePoint lists with Power Apps screens, and a construction-site QA app that captures photo, defect and comment and generates a structured report. Both are playable inside the presentation.

Power AppsSharePoint ListsPower AutomatePower Fx
02 / open-source projects

Things I built on my own time

Source on GitHub, live where a browser is enough.

Orbit desktop app, Today page in the dark Obsidian theme
electron desktop appsource

Orbit, a local career workspace

Electron app on top of the open-source Career Ops engine: profiles with isolated workspaces, pipeline, discovery, CV intake, agent sessions with the Claude or Codex CLI, practice interviews and five themes. React and Vite renderer, Electron main process, 896 unit tests.

ElectronReactViteNode
ML demos page with six demo cards
browser · machine learninglive

ML demos in the browser

Six small machine-learning demos that run entirely client-side, each on its own page with the interactive part next to the maths: TF-IDF retrieval for RAG, a transformer attention heatmap, a LoRA parameter and memory calculator, an optimiser race on a loss surface, step-by-step k-means, and a naive Bayes sentiment classifier.

JavaScriptCanvasKaTeX
node · reactsource

Document parser

Upload a PDF passport, ID card or driving licence and get surname, given name, dates and document number extracted into an editable form. Express API with multer uploads and regex extraction over the PDF text layer; React and TypeScript front end with drag-and-drop.

NodeExpressReactTypeScript
python · computer visionsource

Facial recognition attendance

Desktop tool that recognises known faces from a webcam with OpenCV and dlib, marks attendance with timestamps and exports CSV, with a Tkinter interface and a dlib-free simple version for machines where dlib will not build.

PythonOpenCVdlibTkinter
python · text-to-sql benchmarkv0.1.1

Energie-SQL-Bench

Text-to-SQL benchmark in German and English on a SQL Server energy data warehouse. 70 reference questions with gold SQL (drafted by a language model, verified by execution), a fail-closed SQL guard with a read-only login, six prompt variants, scoring with an error taxonomy, Anthropic and Ollama adapters and a DuckDB sample in CI. Live model runs are still pending; until then the results page shows only the pipeline test.

PythonSQL ServerDuckDBsqlglotGitHub Actions
python · probabilistic forecastingin progress

Netzlast-Prognose

Probabilistic day-ahead forecast of German grid load (SMARD, CC BY 4.0) with LightGBM quantile regression and conformal calibration. Pre-registered backtest protocol (tag protocol-v1) over 730 test days: CRPS 42 % below the seasonal-naive baseline, with 80 % and 90 % intervals covering 80.1 % and 89.8 %. FastAPI service in a Docker image and a daily live run into a forecast-log branch. Tag v0.1.0 is still to come.

PythonLightGBMstatsforecastFastAPIDockerGitHub Actions
python · rag evaluationin progress

RAG-Prüfstand

Evaluation bench for retrieval-augmented generation on five German energy laws (public domain, § 5 UrhG). 240 questions drafted by a language model, human review still pending; six retrieval variants times two chunkings, scored with Recall@k, MRR and nDCG with bootstrap intervals. In the published run, hybrid plus reranker reaches Recall@5 of 0.71 against 0.54 for BM25, and the gain comes from the reranking. LLM layer with Anthropic and Ollama backends and record and replay. Results page and tag v0.1.0 follow; answer and judge runs are pending.

Pythonsentence-transformersBM25CPU
analytics engineering · dbtin progress

ANAC Appalti dbt

Analytics-engineering pipeline for Italian public procurement data (ANAC Open Data, CC BY-SA 4.0): an immutable raw archive with checksums, a landing layer that redacts personal data of natural persons before writing, dbt layers with 40 models and contract tests, a star schema and nine marts for a later Power BI report, a data quality report and Dagster orchestration. The dbt docs are on GitHub Pages. The full 2024 to 2026 run and tag v0.1.0 follow.

Pythondbt-coreDuckDBDagsterGitHub Actions
03 / research

Master's thesis, explained from zero

My thesis asks whether the scope of positive selection in SelfPatch's patch-level loss changes the label-free object masks that a spectral decoder reads out of a self-supervised Vision Transformer. To understand the method before writing it up, I built an interactive course on the two papers behind it and on the thesis's own rule.

Start page of the Pixels to Islands course
interactive course · nine pageslive

Pixels to Islands: DINO, SelfPatch and my thesis rule

A from-zero course for a reader who has never met a neural network: numbers and vectors, the Vision Transformer, DINO's student and teacher, SelfPatch's patch-level loss, and the contrastive selection rule my thesis studies. Every equation is walked with numbers you can check, every design decision gets a "why" card, and the labs run on real photographs with features from DINO, the released SelfPatch model and my own training runs. Four marks keep facts, real computations, toy simplifications and readings apart.

self-supervised learningVision TransformerDINOSelfPatchinteractive labs
04 / experience

Where I have worked

07/2025 — present

Working Student, Power Platform, Automation & AI Assistants

S01 Projektmanagement GmbH, Germany

  • Built and own QS Baustelle, an offline-capable Power Apps inspection app in live use by site inspectors; 45+ releases from user and supervisor feedback.
  • Designed the SharePoint data model (10 lists, one document library) and built 12 Power Automate flows for numbering, photo filing, Excel imports, GPS route export and emailed Word reports.
  • Introduced application lifecycle management: source-controlled builds with the Power Platform CLI, Python-generated flows and versioned solution deployment; resolved production incidents through flow-run analysis.
  • Built a Copilot Studio assistant that answers questions on technical standards with exact citations; evaluated Copilot Studio, Azure OpenAI, the Claude API and SharePoint agents and wrote the decision paper.
  • Developed a CRM as an SPFx web part (TypeScript, React): leads pipeline, contacts, tasks, KPI reporting, email lead capture, CSV and vCard import and export, EN/DE.
  • Built an offline Python tool that permanently anonymizes PDF and Office documents, with NLP-based detection, OCR-based quality checks and a German/English interface.

02/2022 — 05/2025

Freelance Power Platform & Python Developer

Upwork and Fiverr, remote, international clients

  • Delivered nine client projects end to end, from requirements to handover; four clients came back for further work.
  • Built custom Power Apps and Power BI dashboards that digitised client processes, data capture and reporting.
  • Developed Python scripts and algorithms to client specifications, including tests and documentation.
05 / skills

What I work with

// power platform

  • Power Apps (canvas, Power Fx, offline)
  • Power Automate
  • Power BI (DAX, Power Query)
  • Copilot Studio
  • AI Builder
  • Power Platform CLI
  • ALM & solution deployment

// microsoft 365

  • SharePoint Online (lists, libraries, permissions, REST)
  • SharePoint Framework (SPFx)
  • Microsoft Graph
  • PnP PowerShell
  • Excel, Outlook, Word

// programming & data

  • Python (pandas, NumPy, scikit-learn, FastAPI, Streamlit)
  • SQL
  • TypeScript
  • React
  • HTML/CSS
  • Git & GitHub
  • data modelling, dashboards, KPI reporting

// ai & ml

  • LLM APIs
  • RAG
  • LangChain
  • vector databases (Chroma)
  • embeddings
  • NLP (spaCy, German NER)
  • OCR (Tesseract)
  • MLflow, Docker, GitHub Actions
  • self-supervised learning, Vision Transformers

// desktop & documents

  • PySide6 / Qt
  • PDF processing (PyMuPDF)
  • Office file processing
  • Windows packaging (PyInstaller)

// languages

  • Tamil (native)
  • English (C2)
  • Italian (A2)
  • German (A1)
06 / education

Education and certifications

10/2022 — present

M.Sc. Data Analytics

University of Hildesheim, Germany

  • Coursework completed (90 ECTS), focus on data science and language processing.
  • Thesis completed: "Does the scope of positive selection matter in SelfPatch? A pre-registered, label-free study of row, image-pooled and batch-pooled positive selection for object discovery on COCO and VOC." Paired training runs on COCO without annotations on a compute cluster, evaluated on COCO and VOC.

12/2018 — 06/2022

B.Sc. Information and Communication Technologies

Riga Technical University, Latvia

  • Grade 8.01 / 10.
  • Thesis: comparison of the NLTK and spaCy NLP libraries.
07 / contact

Let's talk

Based in Hildesheim, Germany, open to relocation. Email is the fastest way to reach me; LinkedIn works too.