Skip to content

Skills

Technologies, and how I actually use them

Rather than a list of logos, here's how each area of my skill set shows up in real projects — with no invented proficiency percentages.

Category

Backend Engineering

This is where most of my time goes: designing REST APIs with FastAPI and Flask, modeling databases with SQLAlchemy, and building auth systems with JWT and role-based scoping. On Uzima Link, this meant middleware-level authorization across four distinct roles; on the Student Progress Tracker, it meant tracing a data-isolation bug back to an unscoped query and fixing it at the source.

PythonFastAPIFlaskREST APIsAuthentication & AuthorizationJWTAPI ArchitectureMicroservicesDatabase DesignSQLPostgreSQLSQLiteSQLAlchemyData ModelingSystem DesignCachingBackground JobsAPI SecurityTesting

Category

AI & Machine Learning

I use AI/ML primarily as an extraction and reasoning layer on top of a solid backend — turning unstructured input (consultation notes, documents) into structured, validated data via LLM APIs like Gemini. That includes writing structured prompts, defining evaluation criteria for output quality, and building fallback paths for when a model's output doesn't meet expectations.

Machine LearningDeep LearningNatural Language ProcessingLarge Language ModelsAI Model EvaluationPrompt EngineeringData PreparationModel EvaluationModel Performance AnalysisRecommendation SystemsPredictive AnalyticsNeural Networks

Category

Frontend

Frontend work supports the backend systems I build rather than standing alone — building the Next.js clients that consume my own APIs means I design endpoints with the actual UI consumption pattern in mind, which is part of why response-contract consistency matters so much to me.

JavaScriptReactNext.jsHTMLCSSResponsive Design

Category

Data

Data work underlies Dataloom directly: understanding how inconsistent schemas and semantic mismatches break reporting across SME tools. I use Python, pandas, and SQL to clean, reconcile, and analyze data before it's usable for any downstream feature.

PythonPandasNumPyData AnalysisData VisualizationSQLData Cleaning

Category

Testing & Quality

QA training runs alongside my engineering work, not separate from it. I've written a layered Cypress suite (fundamentals through Page Object Model and request interception) against a live platform, and I test my own backend endpoints for contract correctness and access-control boundaries before calling a feature done.

PyTestJestUnit TestingIntegration TestingTest-Driven DevelopmentAPI TestingQuality Assurance

Category

Tools & Engineering Practices

Git and GitHub for version control across every project, Agile/Scrum rhythms from team projects like TraceVolt and EWaste Hub, and a habit of writing down technical decisions — like why a given auth pattern or environment tool was chosen — so the reasoning survives past the moment I made the call.

GitGitHubAgileScrumCI/CDDocumentationCode ReviewsDebuggingSystem Architecture