Available to hire
I am a software engineer with 12+ years building interactive web experiences and audio-driven prototypes for public-facing projects.
I specialize in JavaScript-based interactive storytelling, rapid prototyping in Twine and web frameworks, and integrating short-form audio into branching narratives. I deliver playable prototypes that are testable with real users and easy for content teams to update.
Skills
Experience Level
Expert
Expert
Expert
Expert
Expert
Expert
Expert
Expert
Expert
Intermediate
Intermediate
Intermediate
Work Experience
Senior Software Engineer at John Deere
April 1, 2025 - PresentLed development of a Twine prototype that integrates 30–60s audio clips into branching passages (SugarCube), enabling multiple replay paths and persistent user choices. Implemented audio preloading and cross-fade with Howler.js to ensure seamless transitions. Built a JSON-driven scene map enabling content editors to add clips, text, and images without editing Twine code. Implemented replay and rewind controls and tracked path state to revisit decision points. Collaborated with producers to map branching outcomes and ensure support for alternate endings and conditional prompts. Built responsive UI and image handling for desktop, tablet, and mobile breakpoints. Conducted manual accessibility checks and keyboard navigation fixes for audio-first interactions. Set up repository, automated build with npm, and deployed prototype to Netlify for stakeholder review. Led playtests with frontline volunteers and iterated node text and timing based on feedback.
Senior Software Engineer at Andersen
January 1, 2023 - February 28, 2025Led integration of short-form audio into an interactive web training tool using Twine and a custom loader to coordinate clip start times. Authored a modular story format layer in Harlowe exposing variables for learner state and decision-tracing for analytics exports. Worked with voice producers to define naming and encoding standards (mp3, 44.1kHz) and automated asset bundling during builds. Implemented image lightbox and inline media captions; built a lightweight CSV importer mapping rows to Twine passages for non-technical editors. Improved load time by lazy-loading non-immediate audio and CDN-backed hosting for larger media files. Mentored mid-level engineers on Twine formats and testing. Prepared prototype release and handoff package with build scripts and deployment steps.
Senior Java Software Engineer at InKnowTech
August 1, 2019 - March 31, 2023Developed interactive training modules combining Java backend services with front-end Twine prototypes to simulate workflows. Built a node mapping tool exporting story graphs to JSON for visualization. Integrated HTML5 audio controls with custom playback logic for replay, skip, and timed prompts. Optimized media delivery by transcoding source files to web formats and adding cache headers for faster loads. Collaborated with UX designers to wireframe decision trees and implemented responsive passage templates in Twine. Added logging of user choices to a lightweight REST endpoint for analytics and scenario coverage validation. Wrote test scripts and performed cross-browser checks to ensure consistent audio playback across Chrome, Firefox, and Safari. Produced developer-facing documentation explaining how to add new branches, audio clips, and images to the prototype.
Java Web Developer at EPAM Systems
May 1, 2016 - July 31, 2019Implemented Java-backed web pages serving story metadata and media manifests consumed by front-end Twine prototypes. Built front-end components to display images and text alongside embedded audio, ensuring synchronized playback controls. Created tooling to batch-upload media assets to S3 and generate JSON manifests for the interactive player. Participated in sprint planning and pair-programmed with UX to iterate passage layouts based on early user feedback. Executed manual QA on scenario branches to fix dead-ends and incorrect links. Maintained build pipelines and deployed demo prototypes to staging. Contributed to release checklists and trained content authors on updating passage text and replacing audio files.
Junior Java Backend Developer at Infopulse
January 1, 2014 - April 30, 2016Developed backend endpoints in Java to serve media metadata and user-session tokens for early interactive demos. Assisted in building simple web players with HTML5 audio and basic controls for play, pause, and seek. Helped convert recorded audio to web formats and verified timings matched scripts. Performed cross-browser testing and reported playback discrepancies to senior engineers for fixes. Supported content teams with a spreadsheet-driven workflow mapping audio files to scenario nodes. Learned Twine basics and produced small interactive passages used in user research. Maintained project tickets and contributed to onboarding documentation for new team members.
Education
Bachelor's Degree in Computer Science at Singapore Management University
January 1, 2010 - January 1, 2013Qualifications
Industry Experience
Software & Internet, Media & Entertainment, Professional Services
Skills
Experience Level
Expert
Expert
Expert
Expert
Expert
Expert
Expert
Expert
Expert
Intermediate
Intermediate
Intermediate
Hire a Web Developer
We have the best web developer experts on Twine. Hire a web developer in Rzeszow today.