ApexShell
A UNIX shell in C that I built with two teammates. Background jobs sit in a min-heap by priority, and the shell pauses and resumes them with SIGSTOP and SIGCONT. Under heavy CPU load, high-priority jobs finished 20% faster without hurting overall throughput.
C, Linux
Hex game agent
An agent that plays the board game Hex, written in C++. It runs Monte Carlo Tree Search with UCT and RAVE, uses union-find to spot a winning path quickly, and has to pick each move in 150–300 ms with no more than 64 MB of memory.
C++
Healthcare claims testing
Most of my work at Cedar Gate was testing a US healthcare claims platform with millions of generated records. I checked the data and processing times with SQL and went through 837/835 EDI files for accuracy. For automation I wrote suites in Selenium with TestNG, Protractor-Jasmine and Katalon.
SQL, Selenium, TestNG, Katalon, Protractor-Jasmine, EDI 837/835
Test automation framework
I built an internal Spring framework at Cedar Gate so testers could automate a case just by saving its XPath, without writing a full script. Regression testing got 33% faster, and other QA teams started using it.
Java, Spring
Cooperative loan system
A loan system for cooperatives that I built in Java and Angular at Radiant Info Tech. Members were verified with biometric devices, and reports came out automatically instead of being put together by hand. It cut manual processing time by 38% and took in more than 1,000 applications a month.
Java, Angular
Digital signature app
A desktop app that banks and government offices used to sign documents with a hardware token. I maintained it and handled the integrations, which meant a lot of time with PKCS#11 and Java Swing.
Java, Swing, PKCS#11
Event Lookup System
My final-year project for my bachelor’s, built with four classmates. It’s a web and mobile app for finding events nearby, with filters and online payments. I led the backend work and designed the database.
Laravel, PHP, JavaScript, Java, MySQL
ownCloud open source contribution
My first time working on a real codebase. As a test automation trainee at Jankari Tech, I wrote Selenium tests for ownCloud, an open source file-sharing platform, using Behat and Gherkin. They turned up bugs in validation, file compatibility and access permissions, and helped cut critical bugs by 8%. Every pull request went through code review with ownCloud’s developers on GitHub.
PHP, Selenium, Behat, Gherkin