2022
First lines of production Python
Software development
Started writing Python with the intention of shipping rather than practising. Most of what I use daily I learned by building things that had to work.
Khem Bahadur Lodh, Full-Stack Developer.
Software Engineering: Software Development, Web Development, Mobile Application Development, DevOps, Testing and QA.
"""
I am a software engineer. In practice that means five things, and I do all of them on the same project rather than handing them off.
Software development is the core: the data model, the business rules and the failure cases, designed before the first endpoint is written. Web development is where most of it surfaces, Django on PostgreSQL with a React client when the interface earns one. Mobile application development covers the same systems on a phone, where the constraints are tighter and the network is worse.
DevOps is the part people skip. A system that only runs on my laptop is not finished, so everything ships in Docker with a repeatable deploy and a way to roll back. Testing and QA is the other part people skip. Nine systems in, the bugs that cost real money were never the exotic ones; they were the two-counters-sell-the-same-seat kind that a test would have caught in a second.
Most of my work is for the Nepali market, where the constraints are real: slow connections, small budgets, and users who will not forgive a booking that gets lost. If you are building something that has to be correct rather than just demoable, we will get along.
"""
The five disciplines first, then the tools underneath them. Each one carries the evidence rather than a number, because a percentage on a bar chart says nothing a hiring manager can check.
The five disciplines, carried on the same project
Software Development
Data model and failure cases before the first endpoint
Web Development
Django and React, six production systems
Mobile Application Development
The same systems where the network is worse
DevOps
Repeatable deploys, and a way back out
Testing & QA
The bugs that cost money are never the exotic ones
Where most of the work actually happens
Python
Primary language since 2022
Django
Six production systems shipped on it
Django REST Framework
APIs behind React and mobile clients
Celery
Background jobs for bookings and email
Interfaces that have to survive real users
JavaScript
ES modules, no framework where none is needed
React
AwasarHub client, feed and profiles
TailwindCSS
Design systems on three projects
Vite
Build tooling for the React work
Schemas designed before the first endpoint
PostgreSQL
Default database on every Django build
MySQL
Legacy work and shared hosting deployments
Redis
Caching and Celery broker
Getting it off the laptop and keeping it up
Docker
Reproducible environments across projects
Git
Daily, with a readable history
GitHub Actions
Test and deploy pipelines
Linux
Deployment target for everything I ship
Applied, not academic
TensorFlow
Model training for the phishing classifier
scikit-learn
Feature engineering and evaluation
Pandas
Dataset preparation and analysis
NumPy
Numerical work underneath the models
Booking platforms, a healthcare access tool, a partner ledger and an ML classifier. Each one solved a problem someone actually had.
Professional networking and opportunity platform
A networking platform for Nepali professionals, with authentication, a feed, job posting and profiles.
Offline assistant built around real automation
A Python assistant that runs without a network connection and automates the tasks I actually repeat.
Machine learning classifier for malicious URLs
A classifier that scores URLs on lexical and host features, wrapped in an interface a non-specialist can use.
Bus ticket booking for Nepali operators
Seat level booking with holds, cancellations and an operator dashboard for routes and departures.
Hotel reservation platform
Room inventory, date range availability and reservations, with a property side for rates and photos.
Restaurant table reservation
Table booking with sitting durations, a floor layout per restaurant and a kitchen facing view of the day.
Emergency healthcare access
Nearest available emergency services, ambulance contacts and hospital capacity, built for the worst minute of someone's day.
Business finance and partner ledger
Double entry style records for small partnerships, tracking contributions, withdrawals and each partner's standing balance.
Swipe the row to see the rest.
Development, deployment and test work, as the repositories actually record it. Pulled from the public GitHub API and cached on the server, so this page never waits on GitHub and GitHub never rate limits it.
0 commits since 2026-05-11
No public pushes in the last 90 days, which is all the events API exposes. The repositories and their languages below are current.
across 20 public repositories
HTML 47.1%
Python 35.3%
JavaScript 17.6%
no recent pushes
Most recently updated
file_checking_django Gym_weight_loss_prediction khem_portfolio sanu_portfolio AwasarHub khemprogrammerDevelopment first, then the web, then deployment and testing, until all five disciplines sat on the same project. Each step is a system shipped, not a course finished.
2022
Software development
Started writing Python with the intention of shipping rather than practising. Most of what I use daily I learned by building things that had to work.
2023
Web development
Shipped something people other than me used. Learned quickly that the code is the easy part and the deployment, backups and error handling are the job.
2023
Software development
Wrote a chat application on raw sockets to understand what the libraries abstract away. Framing and disconnect detection turned out to be the whole problem.
2024 - 2025
Web development, testing and QA
Buses, hotels and restaurants. One underlying problem: reserving a finite resource over time without two people getting the same one. The tests that caught it were worth more than the code that fixed it.
2024
DevOps
Moved every project into Docker with a deploy that runs the same way twice. A system that only works on my laptop is not finished, it is a demo.
2024
Phishing Detector
Built a URL classifier and learned the difference between a good accuracy number and a model that is actually useful.
2025
Web and mobile development
First project where the frontend and backend were genuinely separate systems. Django REST Framework serving a React client taught me more about API design than any amount of reading.
2025 to now
Software engineering, end to end
Carrying all five disciplines on the same project: design, build, ship, operate, and prove it works.
in progress
Four things I have done enough times to quote honestly on scope and timeline.
Most projects that go wrong went wrong in week one. I start with the data model, the failure cases and the deployment story, then write the application against decisions that have already been made.
A complete application: data model, auth, admin, business logic and deployment. The kind of system that runs for years, not a prototype.
Deployed application, source, and a README someone else can follow
Seats, rooms and tables, with the concurrency handled properly. I have built three of these and the hard parts are always the same.
Inventory, holds, cancellations and an operator dashboard
Versioned Django REST Framework endpoints with real authentication, pagination that survives a growing table, and documentation.
Documented API, test suite, and a client that proves it works
Classification and prediction on your data, evaluated on the metric that matters to the decision rather than on raw accuracy.
Trained model, honest evaluation, and a scoring interface
The people who ran the systems after I handed them over.
He rebuilt our booking so two counters cannot sell the same seat. That one problem had cost us money every festival season.
We stopped paying commission on every room. The system is ours and it has not gone down once.
Khem asked what happens when the payment fails before he asked what colour the buttons should be. That told me enough.
He handed over documentation a different developer could follow. In my experience that almost never happens.
He handed over documentation a different developer could follow. In my experience that almost never happens.
Khem asked what happens when the payment fails before he asked what colour the buttons should be. That told me enough.
We stopped paying commission on every room. The system is ours and it has not gone down once.
He rebuilt our booking so two counters cannot sell the same seat. That one problem had cost us money every festival season.
Tell me what you are building and what is in the way. I read every message and reply within a day.