Joshua Finnis
Senior Frontend Engineer | Building Modern Web Applications | React / TypeScript | Developer Tooling
Senior Software Engineer at Bunchball
Highlights
Full profile
Career: 4
Bunchball
Remote
Admin dashboard modernization: Led the conversion of a 15-year-old Backbone SPA on a Python/Flask backend that was often determined as too risky to modernize. Implemented a series of incremental prototypes to prove that we could do both old and new dual-served on one instance, cross-page integration via webpack/Apache, while making full reuse of existing SSO/auth. Each prototype would become the shipped v2, now a fully server-rendered SSR app. Customer-facing dashboard architecture: Architected our greenfield dashboard as a server-rendered React Router app (the team's first SSR), from design sprint through rollout. Set the patterns the whole team follows: auth for third-party iframe embeds, routing/repo structure for multiple embeds, and new standards for CSS and semantic HTML. Stack modernization: Moved the team TypeScript-first with Vite and biome.js, and overhauled frontend testing: modernizing unit tests to Vitest and introduced browser-level end-to-end tests with Cypress.
Software Engineer
VirtuOps, an MKAdvantage, Inc. company
Software Engineer
Research Assistant
Publications: 7
Tweak: New Jujutsu Tug and Push Alias
joshfinnis.leaflet.pub
Tweaks: Refreshing Neovim Config for v0.12
joshfinnis.leaflet.pub
Improving My Neovim Spellcheck Workflow
joshfinnis.leaflet.pub
Tweaks: Zsh Startup Time (2.5s -> 0.08s)
joshfinnis.leaflet.pub
Other publications
A Location-based Policy-specification Language for Mobile Devices
Journal of Pervasive and Mobile Computing
Prometheus: User-Controlled P2P Social Data Management for Socially-Aware Applications
11th International Middleware Conference
Skills: 40
Other
Education: 2
University of South Florida
Completed 75 hours towards a PhD degree
University of South Florida
Master's Degree
Languages: 1
Also find Joshua Finnis on…
What else would you like to see here?
Missing something? Tell us what would make this page more useful.
Sign in to share an idea.