Self-directed project
AI-Assisted Code Modernization with IBM
Junior Software Engineer · Software Engineering · August 2026
Based on a public IBM case study · not affiliated with IBM
Built a solid modernization pass for a legacy fleet-maintenance service: fixed the wear calculation so nearly-worn cars are flagged, handled missing service readings safely, corrected the nightly report’s average and crash behavior, and repaired a hidden mileage-conversion bug in the helpers. Also documented the review process in NOTES.md and described a data-driven breakdown-risk analysis that prioritizes km-since-service and driving intensity over total mileage.
Graded against
- Fix and extend the repo with the agent35%
- Diagnose the bug20%
- Direct and audit the AI agent25%
- Explain it like an engineer20%
Passed · pass mark 60/100
What stood out6
- Correctly identified the floor-division bug at the exact wear calculation line and explained the consequence for a nearly-worn car.
- Caught the quiet helper-module mileage conversion bug that no test directly covered, which is strong evidence of a real codebase sweep.
- Wrote a detailed NOTES.md describing what the agent got wrong and how they verified the fixes with acceptance checks.
- Kept the service interval and warning threshold unchanged while fixing the surrounding logic.
- Leakage-Free Feature Engineering
- Honest Model Evaluation
The deliverable
The work I submitted18 tasks
10 tasks · 1.8k characters · JavaScript · 8 written answers · 181 words
- Division Predict72 characters
- Diagnose Line130 characters
- Diagnose Why82 characters
- Scope Prompt66 characters
- Bob Trial Click74 characters
- Bob Ready60 characters
- Template Repo Click82 characters
- Exec PitchJavaScript · 986 characters
- Bob Bonus148 characters
- Repo URL63 characters
- Division Predict1 word
- Diagnose Line10 words
- Diagnose Why15 words
- Scope Prompt1 word
- Bob Trial Click1 word
- Bob Ready1 word
- Template Repo Click1 word
- Exec Pitch151 words
Summarised on purpose — the submitted code and writing stay private so this page cannot be reused as an answer key. The full submission sits behind the verified certificate.