~/paras-karki · portfolio

Loading portfolio

Skip to content
PK

Work

Projects.

12 projects across IT support, cloud and infrastructure, AI, software and testing. Pick what you’re hiring for and the most relevant come first.

Projects

  • Testing & QASoftwareIT Support

    Testing and defect tracking

    Where I started: testing every document upload and API end to end, and turning failures into clear, reproducible Jira tickets.
    Problem
    An extraction platform can return a confident answer that is wrong. No tool can reliably check a scanned PDF, and the AI models themselves can hallucinate, so the final check has to be a person.
    Approach
    Upload real documents through the API in Postman and compare every extracted field with the scanned source. Log each mismatch in Jira with the file, the field, the expected value and steps to reproduce. Re-test after every prompt or model change to catch regressions.
    Outcome
    Defects anyone on the team could reproduce, and accuracy that was measured instead of assumed.
    Stack
    Postman · Jira · REST APIs · Python · Log analysis
    How it works, step by step →
  • AI & AgentsTesting & QACloud & Infrastructure

    Choosing the right model: GPU benchmarks

    Tested open-source OCR and vision models against a managed AI service on the same documents, then matched each document type to the model that earned it.
    Problem
    The managed AI service was accurate, but it was billed per call, so the cost grew with every document.
    Approach
    Deployed 5+ open-source OCR and vision-language models on Akamai Cloud and Google Cloud GPUs (NVIDIA L4, RTX 6000 Pro), ran the same labelled documents through each, and scored every field by hand. Checkboxes got their own benchmark because they were the hardest part. Also evaluated AWS Bedrock Knowledge Bases for document Q&A; made-up answers on missing checkbox marks were the blocking issue.
    Outcome
    A hybrid setup chosen by measured accuracy and cost: NuExtract 3 and Docling for dense forms, PaddleOCR then Kimi for tables and general PDFs.
    Stack
    Akamai Cloud · Google Cloud · NVIDIA L4 · RTX 6000 Pro · Docker · SSH tunnels · Python · AWS Bedrock
    Full write-up →
  • IT SupportCloud & InfrastructureTesting & QA

    Troubleshooting a live platform, often overnight

    When uploads failed or results came back wrong during releases, I traced the logs to the cause and confirmed the fix.
    Problem
    A multi-service platform can fail in many places: an upload, a queue, a model endpoint, a database write. What the user sees rarely points at the cause.
    Approach
    Reproduce with the same file, follow its record ID through each service's logs over SSH, check the model endpoint and the network (ports, IPs, firewall), and narrow it to one service. Then write up the cause, the fix and how it was verified in Jira, and explain it to the team in plain terms.
    Outcome
    Each failure traced to its cause, and each fix confirmed and written up.
    Stack
    Linux · SSH · Application and server logs · Postman · Jira · Azure · Docker
    How it works, step by step →
  • AI & AgentsSoftware

    Document-extraction pipeline

    Insurance documents in, structured records out: classified, read by vision and language models, checked, and saved.
    Problem
    Documents arrive by email in dozens of layouts and versions. Reviewers were reading them by hand and retyping the fields that mattered into another system.
    Approach
    Attachments land in blob storage, and a classifier routes each document by type. Accuracy first reached about 98% with Azure Document Intelligence and OpenAI vision models. We then benchmarked open-source models to cut cost and moved to a hybrid: NuExtract 3 with Docling for checkboxes on dense forms, and PaddleOCR then Kimi for tables and general PDFs.
    Outcome
    Documents that used to be keyed in by hand arrive as structured records. Every value links back to its bounding box on the page, and low-confidence fields go to a human.
    Stack
    Python · FastAPI · PostgreSQL · Azure Document Intelligence · Azure OpenAI · NuExtract 3 · PaddleOCR · Docling · Kimi · Next.js
    How it works, step by step →
  • IT SupportCloud & Infrastructure

    Hands-on support: repairs and PC builds

    I diagnose and fix Windows PCs and laptops, build desktops from parts, and set up the devices people work with every day.
    Problem
    People bring me a blue screen, a laptop whose battery dies in an hour, or a PC that says "no boot disk found", usually with no idea what's wrong.
    Approach
    I ask what changed, reproduce the fault, then work from the simplest cause up: power and connections, then drivers and updates, then disk and memory health, and only then a repair or clean reinstall, with files backed up first. Before handing it back, I explain what went wrong and how to avoid it.
    Outcome
    Machines back in use, files kept, and people who understand what happened.
    Stack
    Windows 10/11 · Windows Recovery Environment · Safe Mode · Device Manager · BIOS/UEFI · Disk and memory diagnostics · SFC/DISM
    Full write-up →
  • IT SupportCloud & Infrastructure

    Active Directory administration

    Running a Windows domain: users, groups, OUs and Group Policy, plus the tickets help desks handle every day.
    Problem
    Most organizations still run on Active Directory. Support and sysadmin work means knowing it well enough to fix access problems quickly and safely.
    Approach
    Set up a domain controller with DNS, organized users and computers into OUs by department, created security groups for access, joined a Windows client to the domain, and used Group Policy for password rules, mapped drives and desktop settings. Then practised the common tickets: lockouts, password resets, new starters, department moves and leavers.
    Outcome
    Hands-on practice with the everyday Active Directory tasks that support and sysadmin roles handle.
    Stack
    Windows Server · Active Directory Domain Services · DNS · Group Policy · ADUC · PowerShell (basic)
    How it works, step by step →
  • IT SupportCloud & InfrastructureSoftware

    User access: Microsoft 365, Entra ID and AWS

    Adding users, granting and removing access, and connecting Microsoft Entra ID sign-in to the platform's services.
    Problem
    A growing team and several services meant access had to be granted, checked and removed reliably, in more than one cloud.
    Approach
    Users and groups live in Entra ID, and every service checks the same identity through Microsoft Graph. In AWS, each person or service gets an IAM user with only the permissions it needs.
    Outcome
    One place to add or remove a person in Microsoft's cloud, and limited access in AWS.
    Stack
    Microsoft 365 admin · Microsoft Entra ID · Microsoft Graph · AWS IAM · OAuth 2.0 / OIDC
    How it works, step by step →
  • Cloud & InfrastructureAI & Agents

    Self-hosted GPU servers for AI models

    Custom and open-source models served from GPU servers we run, in development and production, instead of paying a metered API per call.
    Problem
    Every extraction call was billed per request by a managed AI service, and documents left our network to be read. The cost grew with every document.
    Approach
    Provisioned GPU instances on Akamai Cloud for development and production, and on Google Cloud for evaluation. Packaged the models in containers, served them behind an authenticated private endpoint, and tunnelled ports so accuracy could be tested against the real serving path from a laptop.
    Outcome
    Models run on GPU servers the team controls, so cost no longer scales per call and documents stay in-house.
    Stack
    Linux · Docker · SSH tunnels · Firewall/ports · NVIDIA L4 · RTX 6000 Pro · Akamai Cloud · Google Cloud
    Full write-up →
  • AI & AgentsSoftware

    Search and answers over the document archive

    Embeddings in PostgreSQL, an Azure AI Search index, and a RAG layer on top: ask in plain English, get an answer that cites its source.
    Problem
    Answers lived in years of archived policy wordings, guidelines and claim files. Finding one meant searching folders and reading PDFs end to end, and keyword search missed anything phrased differently.
    Approach
    Documents are chunked and embedded. Vectors live beside the records in PostgreSQL with pgvector, so similarity search is plain SQL. The same chunks are indexed in Azure AI Search for hybrid retrieval: keyword and vector scores fused, then a semantic reranker. An LLM answers from the top chunks only, citing each one, and says so when nothing scores high enough.
    Outcome
    Questions over the archive can be asked in plain English, and each answer cites the passage it came from so it can be checked.
    Stack
    PostgreSQL · pgvector · Azure AI Search · Embeddings · RAG · Python · FastAPI · AWS Bedrock · Amazon S3
    How it works, step by step →
  • AI & AgentsSoftware

    Agent workflow: research-to-publish pipeline

    A LangGraph workflow that finds trending topics, researches them, writes and illustrates a post, and publishes it to WordPress.
    Problem
    Running a content site by hand takes hours per post: finding topics worth writing about, researching, writing, making images and publishing.
    Approach
    A LangGraph graph passes state between steps: topic discovery scored for demand, web research through Tavily, drafting with Azure OpenAI (GPT-5 mini/nano), a pgvector check so the site doesn't repeat itself, image generation with Gemini, then publishing through the WordPress API.
    Outcome
    Version 2 in progress.
    Stack
    Python · LangGraph · Azure OpenAI (GPT-5 mini/nano) · PostgreSQL + pgvector · Tavily · Gemini · WordPress REST API
    How it works, step by step →
  • Cloud & InfrastructureSoftware

    Containerized deployments and CI/CD

    Every service ships as a container: YAML pipelines build and check it, and shell scripts deploy it to Azure and Google Cloud VMs.
    Problem
    Several services and several developers: every change had to build, pass checks and deploy the same way.
    Approach
    Work lands through pull requests into dev. A YAML pipeline builds each service, runs the SonarQube gate and builds its Docker image. A .sh script then runs on the VM over SSH and brings the services up with Docker Compose. The same flow deploys to Azure and Google Cloud, and a scheduled pipeline keeps each VM's packages updated.
    Outcome
    One path from commit to running container for every service on both clouds, issues caught before they merge, and VMs patched without logging in by hand.
    Stack
    Azure DevOps · YAML pipelines · Docker · Docker Compose · Bash scripts · SonarQube · Git · Linux VMs · Azure · Google Cloud
    How it works, step by step →
  • Software

    Step-by-step policy submission

    A multi-screen policy-creation flow that saves every step as it's submitted and sends it to the policy system.
    Problem
    Creating a policy took several long forms; losing progress halfway meant starting again.
    Approach
    Split the flow into steps (account, locations, loss history, property and values). Each step's payload is saved when submitted and sent to the submission service, so a session can stop and resume.
    Outcome
    Underwriters can pick up a half-finished submission where they left it.
    Stack
    React · Next.js · TypeScript · Django · PostgreSQL · External system API
    How it works, step by step →

Paras Karki · CV

page 1 of 2