Hi, I'm Denis Lemayian Kirionki
Software Engineer · AI Developer · Full-Stack Developer
I build full-stack applications and AI systems — from production-grade RAG pipelines to enterprise CRM/ERP platforms — using Python, JavaScript/TypeScript, and frameworks like FastAPI, Flask, React, and Next.js.
About Me



Denis Lemayian Kirionki
Software Engineer · AI Developer · Full-Stack DeveloperI'm a Software Engineer with 4+ years of hands-on experience building full-stack applications and AI systems. Currently completing a Bachelor of Technology in Information Technology at the Technical University of Kenya.
I architected and delivered TUK-ConvoSearch — a production-grade Retrieval-Augmented Generation (RAG) AI assistant that processes institutional documents and returns cited, grounded answers using open-source LLMs and FAISS vector search, running entirely on CPU without cloud dependency.
I care deeply about clean architecture, thoughtful UX, and shipping software that actually works in the real world — whether it's an AI assistant handling student queries or a CRM replacing a 450-file legacy system.
Tech Stack
Languages
- Python
- JavaScript
- TypeScript
- Java
- Kotlin
- PHP
- Go
AI / ML
- RAG
- LangChain
- LlamaIndex
- FAISS
- Sentence Transformers
- Ollama
- NLP
Frontend
- React
- Next.js
- React Native
- Tailwind
- Material UI
- Bootstrap
- Chakra UI
Backend
- FastAPI
- Flask
- Node.js
- Express
- GraphQL
- REST APIs
- WebSockets
Databases
- MySQL
- PostgreSQL
- SQLite
- TiDB Cloud
- Firebase
- MongoDB
Cloud / DevOps
- Docker
- Git
- CI/CD
- Render
- Linux
Experience
ICT Attachment
June 2026 – September 2026NACADA (National Campaign Against Alcohol and Drug Abuse) · NSSF Building, Nairobi, Kenya
- Provide technical support: printer setup/troubleshooting and resolving hardware/software conflicts.
- Diagnose and resolve reported network outages, coordinating with teams to restore service promptly.
- Review the organization's outsourced ERP systems against operational requirements and flag improvements.
- Document system review findings and contribute to internal IT support documentation.
CRM & Systems Developer
Jan 2026 – May 2026Aquashine Limited · Nairobi, Kenya
- Led an end-to-end rewrite of a legacy 450-file PHP CRM/ERP system into a modern Python Flask application, reducing codebase complexity by 90%.
- Architected core modules: job card management, customer database, inventory control, technician scheduling, financial tracking, and margin-based quotation generation.
- Added role-based access control, audit logging, and a responsive Bootstrap UI.
- Integrated PDFShift for document generation and Africa's Talking for automated SMS notifications.
- Maintained the live system on Render (MySQL/TiDB Cloud), sustaining 99.9% uptime, and shipped Excel/CSV export plus dynamic dashboards for management reporting.
Developer Advocate Intern
Jun 2024 – Dec 2025Prisma Data Services · Remote
- Created and maintained Prisma examples and technical articles to aid developer onboarding.
- Built community relationships through content creator engagement and open-source contribution.
Microsoft Learn Student Ambassador
Jan 2023 – Dec 2024Microsoft · Kenya
- Led a technical writing team and organized hackathons and job-readiness events for computing students.
Featured Case Study
TUK-ConvoSearch
AI-Powered RAG Student Support Assistant · Technical University of Kenya · Nov 2025 – Jun 2026
Architected and shipped a full RAG pipeline: document ingestion (PDF/DOCX/TXT) → chunking (500-char, 100-char overlap) → 384-dim vector embeddings (Sentence Transformers) → FAISS semantic search → llama3.2:1b response generation via Ollama — running entirely on CPU with no cloud dependency.
Solved a critical asyncio event-loop blocking bug by running the synchronous Ollama stream generator in a background thread, bridging to the async SSE endpoint via queue.Queue and run_in_executor. Built a React admin panel (JWT auth, document upload/delete with auto-reindex, query logs) and a vanilla JS streaming chat interface. Added SQLite persistence with WAL mode for concurrent-safe access alongside the FastAPI server.
My Projects
⭐TUK-ConvoSearch
Production-grade RAG AI assistant for TUK students. Full pipeline: document ingestion → chunking → vector embeddings → FAISS semantic search → llama3.2:1b response generation via Ollama, with a React admin panel and streaming chat interface.
View on GitHub →Real-Time Personalization Engine
Content recommendation system delivering real-time, user-specific personalization.
View on GitHub →Livestock Outbreak Detection
AI-powered system for detecting and monitoring disease outbreaks in livestock populations.
View on GitHub →Code Review AI
AI-powered code review assistant that gives automated feedback on pull requests.
View on GitHub →Student Management App
Native Android app for student records with Room database and modern architecture.
View on GitHub →Education
Bachelor of Technology in Information Technology
Technical University of Kenya · Nairobi, Kenya · Expected Graduation 2026
Final Year Project: TUK-ConvoSearch — RAG-based AI Student Support Assistant (defended before a panel of academic lecturers).
- Relevant coursework: Artificial Intelligence, Data Structures & Algorithms, Machine Learning, NLP, Database Systems, Software Engineering
- Python Programming Certificate — Institute of Advanced Technology, Nairobi
Get In Touch
I'm always open to discussing new opportunities, collaborations, and projects — whether it's a full-time role, a contract engagement, or a technical conversation about AI and full-stack engineering.
What I'm Looking For
- Junior software engineering or AI development roles
- Backend or full-stack positions using Python, FastAPI, or React
- Contract or freelance work on AI systems and RAG pipelines
- Collaboration on open-source projects in AI, EdTech, or developer tooling
What You Can Expect
- A reply within 24–48 hours on weekdays
- A direct, honest conversation about fit and expectations
- Clear timelines on any work I take on
- Comfortable working across time zones for remote roles
The fastest way to reach me is by email. If you'd rather start with a quick conversation, send over a short note about what you're working on — I read every message.
Send Me an Email