Software engineer. Web, mobile, backend, and lately a lot of LLM tooling.
Experience
3 entries
Feb 2026 — Present
Software Engineer — Illumibot (ArroyoDev)
Ship across four surfaces — Flutter mobile, React web, Deno serverless on Supabase, and a Python/OpenCV service — for a two-sided marketplace with Stripe Connect payouts, Algolia search, and realtime messaging.
Built the projector-to-surface computer-vision pipeline: homography, multi-projector stitching, ArUco calibration, and LoFTR feature matching on Apple-Silicon MPS, running on Cloud Run and consumed in-app through a hand-written GLSL keystone-warp shader.
Sep 2025 — Jan 2026
Software Intern — CloudCrust LLC
Built production web and mobile features around geospatial visualization and location-based data workflows, plus authentication and subscription billing for shipped apps.
Aug 2024 — May 2025
Software Engineer Intern — Woafmeow, Inc.
Built FastAPI and React Native features on PostgreSQL/Azure, improving user engagement by 30%.
Refactored the backend into a modular architecture, removing 200+ lines of duplicated logic.
Work
14 entries
001SugaTypeScript / Fastify / Next.jssuga.cx
A workflow-automation companion that captures and replays user actions, turning observed interactions into reusable automated workflows across 12+ SaaS integrations. Fastify and BullMQ/Redis workers behind a Next.js and React Flow visual builder.
002PonPonReact / TypeScript / TaurimacOS (.dmg)
A small, cute Pomodoro timer that occupies a sliver of your screen and otherwise stays out of the way. Tauri app; Windows and Apple Silicon builds on GitHub.
003AxessProtocolPython / Aptos / Movegithub.com/aniJani/oracleAgent
A marketplace for renting out idle GPUs, with payment settled on-chain. I built the host agent: it detects the machine's specs, registers it on Aptos, launches the renter's job in a Docker container with GPU passthrough, exposes a Jupyter notebook over a Cloudflare tunnel, and claims streaming payments on-chain while the job runs. Move contracts and frontend by Nishan Thapa; four repos, two people.
github.com/aniJani/oracleAgent live frontend contracts (Move)
- My part
- Host / oracle agent — 22 of 24 commits
- Chain
- Aptos · Move modules for escrow + reputation
- Runtime
- Docker with NVIDIA GPU passthrough
- Access
- Jupyter over Cloudflare tunnel, basic auth
- Payments
- Streaming on-chain claims while the job runs
- Shape
- 4 repos · agent, backend, contracts, frontend
004RepoSynthPython / Rust / TypeScriptgithub.com/aniJani/reposynth
A repository-understanding and retrieval platform. It fuses semantic search over SentenceTransformers/FAISS with lexical symbol matching, then feeds an LLM context engine over large codebases. A Rust tree-sitter parsing daemon with commit-keyed multi-stage caching cuts repeated re-analysis from 40s to 2s.
005asbuiltPython / tree-sitter / MCP—
A read-only MCP server that extracts a codebase's backend assumptions — Supabase/Firebase/Postgres calls, tables, auth rules — across TypeScript and Python, then verifies them against the live backend and reports every mismatch with file:line provenance.
- Surface
- Model Context Protocol server
- Languages parsed
- TypeScript, Python
- Backends verified
- Supabase, Firebase, Postgres
- Tests
- 118 — near 1:1 test-to-code
- Mode
- Read-only. Never mutates the backend.
006Permit ProReact Native / Expo / TypeScriptApp Store
A cross-platform app for the construction industry that turns building-permit data into actionable leads, with interactive heat maps, analytics dashboards, and in-app subscriptions. Built with a local business owner and shipped to both stores.
007Jackson Brothers ConstructionNext.js / TypeScript / Tailwind CSSwelikeconstruction.com
A business site for a family-owned general contractor: an interactive D3 service-area map, headless CMS so the owner can edit copy without a developer, and lead-generation forms.
008InfolayaNext.js / Node.js / FastAPIinfolaya.tech
A no-code data processing and visualization platform that turns complex datasets into recommendations and insights, so people without a technical background can analyze and visualize their own data.
009BaagchalNext.js / Node.js / Socket.iobaagchal.com
A digital version of the traditional Nepali board game Baagchal, with real-time multiplayer over Socket.io.
010Guess The NepaliNext.js / Node.js / MongoDBguessthenepali.com
An interactive game that challenges players to guess Nepali people's ethnicities — made as a tribute to the cultural diversity in Nepal.
011Speed Reader TrainerNext.js / Node.jsspeed-reader-trainer.vercel.app
A reading trainer that helps people push their reading speed up without losing comprehension.
012The Designer's TouchReact / Node.js / Three.js—
A creative platform for designing custom t-shirts and merchandise, with a real-time 3D preview rendered in Three.js.
013EmokiReact Native / Node.js / SQLite—
An emotion-tracking app that aggregates how you felt over time, so patterns you would not notice day to day become visible.
014Calorie TrackerReact Native / Node.js / SQLite—
A deliberately plain mobile app for tracking daily calorie intake — the whole point was that logging a meal takes one screen.
Papers
3 entries
Unsupervised Anomaly Detection in OpenStack Logs via Fine-Tuned RoBERTa Embeddings
J. Rajkarnikar, N. Poudel, N. Rahimi
Journal of Cybersecurity, Digital Forensics and Jurisprudence · vol. 1, pp. 9–21
RoBERTa + LoRA/PEFT embeddings · 0.97 F1 · 0.99 ROC-AUC
Macro–Market Fusion with Cross-Attention for Equity Return Prediction
J. Rajkarnikar, S. Joshi, Z. Zhou
Mathematics · vol. 14, no. 8, art. 1361
XAttnFusion · 0.63 AUROC on SPY · +8.1% over best baseline
Ensemble Machine Learning Approach to Phishing Website Detection
D. Precious-Esue, J. Rajkarnikar, B. Bellrose, et al.
Computers and Their Applications (CATA), Springer CCIS · vol. 2435
Bagging ensemble · 98.66% accuracy
Open source
2 entries
Graphify 104k stars · Python
graphify cluster-only ignored the return value of to_json(), so when the shrink guard refused to overwrite graph.json the command still exited 0 and printed “updated” — leaving the report and labels describing a clustering the graph did not contain. Reordered the writes so the graph goes first, checked the refusal, and exited non-zero naming the untouched artifacts. Shipped with a regression test.
Scrapy 64k stars · Python
Fixed a Python 3.14 forward-compatibility break — PEP 649 lazy annotations raising NameError during Scrapy's middleware and stats-collector introspection. Shipped a signature-inspection helper with regression tests, merged after maintainer review.
Info
- Study
- B.S. Computer Science, minors in Mathematics and Data Analysis, University of Southern Mississippi, 2026. GPA 4.0 · President's List every semester.
- GitHub
- github.com/aniJani
- in/janitrajkarnikar