Skip to content
View ckwame-jpg's full-sized avatar

Block or report ckwame-jpg

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Content in all repositories owned by your account will be closed.
Maximum 250 characters. Please don鈥檛 include any personal information such as legal names or email addresses. Markdown is supported. This note will only be visible to you.
Report abuse

Contact GitHub support about this user鈥檚 behavior. Learn more about reporting abuse.

Report abuse
ckwame-jpg/README.md

Christopher Prempeh

Backend and systems engineering. Python, C++, Java.

Computer Science graduate building production-style APIs, and algorithmic and concurrent systems, with tests and CI on every project. By day I keep broadcast-critical Linux infrastructure online for live MLS matches and the FIFA World Cup 2026, which is where I learned that the interesting part of a system is what happens when it breaks at the worst possible moment.

馃搷 Dallas-Fort Worth, TX 路 馃寪 chrisprem.xyz 路 馃捈 LinkedIn 路 鉁夛笍 ckprempeh@outlook.com


What I'm building

Exact salary-cap roster optimizer for daily fantasy. A 0/1 knapsack per position convolved over the salary axis, with legal roster shapes precomputed by bipartite matching, which is what makes overlapping FLEX slots need no special case at all.

C++17 CMake GoogleTest The first version was branch and bound: 16.8 billion nodes and 126 seconds on a 300-player pool. The DP returns the same answers in 3.8 ms, a 33,000x speedup, verified against a brute-force oracle over every legal 9-player subset.

Monte Carlo fantasy season simulator that is bit-for-bit reproducible no matter how many threads it runs on. Three separate things break that guarantee: shared random state, floating-point accumulation order, and partitioning that follows the thread count. The last one was a real bug, caught by the test suite.

Java 17 Maven JUnit 5 4.3M simulated seasons/sec at 5.1x scaling on 8 threads. Tests assert cross-thread determinism to exactly 0.0, not "close enough".

A full fantasy football platform, not a toy. Mock draftboard with ADP tiers, VORP-based trade analyzer, waiver-wire rankings, weekly lineup optimizer, matchups, projections and league sync, for 15 feature areas in total.

Next.js 15 React 19 TypeScript FastAPI Tailwind Roughly 12,400 lines of TypeScript over a FastAPI backend exposing 31 endpoints, with dedicated Sleeper and ESPN integrations.

Real-time collaborative task board. Card moves propagate to every connected client instantly over a WebSocket channel, on top of 17 REST endpoints and role-based permissions for owner, editor and viewer.

FastAPI Next.js PostgreSQL WebSockets Docker Three-service Docker Compose stack, 16 pytest tests, CI covering both the frontend build and the backend suite.

Redirects stay fast because the analytics never block them. Click data is handed to Celery workers that parse device type, referrer and IP out of band.

FastAPI Celery Redis PostgreSQL Docker Four-service stack (API, worker, PostgreSQL, Redis), JWT auth across 7 endpoints, 16 tests in CI.

Habit-tracking REST API with bcrypt-hashed credentials, JWT authentication and streak computation.

FastAPI SQLAlchemy pytest Docker 10 endpoints, 16 tests, ruff-linted, enforced by GitHub Actions on every push.


Stack

Languages Python 路 TypeScript 路 JavaScript 路 SQL 路 Java 路 C++ Backend FastAPI 路 SQLAlchemy 路 Celery 路 PostgreSQL 路 Redis 路 REST 路 WebSockets 路 JWT Frontend Next.js 路 React 路 Tailwind CSS Infra Docker 路 Docker Compose 路 GitHub Actions 路 Linux 路 CMake 路 Maven 路 pytest 路 GoogleTest 路 JUnit 5 路 Vercel


Currently

Looking for backend, full-stack, and platform engineering roles.

Everything above runs its test suite in GitHub Actions on every push, and everything runs standalone. Clone any of the Python services and make test puts 16 tests green with no database and no environment setup, because the fixtures use in-memory SQLite and mock the external services. lineup-optimizer needs only CMake and a C++17 compiler; season-sim needs only a JDK.

Popular repositories Loading

  1. Habitual-Habits Habitual-Habits Public

    Habit tracking REST API with JWT auth, streak tracking, and Alembic migrations. FastAPI, SQLAlchemy, Docker, pytest.

    Python

  2. draft-lottery draft-lottery Public

    NBA-style draft lottery simulator with animated ping pong ball physics for fantasy leagues.

    JavaScript

  3. taskboard taskboard Public

    Real-time collaborative task board with WebSocket sync and role-based permissions. FastAPI, Next.js, PostgreSQL, Docker.

    Python

  4. url-shortener url-shortener Public

    URL shortener with async click analytics via Celery workers. FastAPI, PostgreSQL, Redis, JWT, Docker Compose.

    Python

  5. gh-stats gh-stats Public

    CLI that pulls GitHub profile data into your terminal: repos, stars, activity, and side-by-side user comparisons.

    Python

  6. sports-etl sports-etl Public

    ETL pipeline pulling NFL stats from the ESPN API, computing PPR fantasy points, and loading PostgreSQL. Includes CLI.

    Python