LOCH Technologies
Geospatial analytics, visualization architecture, and performance.
Senior Frontend Software Engineer, 2023-2024
Overview
At LOCH Technologies, I built frontend experiences for geospatial analytics and visualization-heavy workflows. The product needed to make dense technical data readable, interactive, and useful for people making decisions from live or complex datasets.
My Role
I worked as a Senior Frontend Software Engineer, building React and Preact interfaces, interactive maps, reporting flows, and reusable visualization patterns. I collaborated closely with backend engineers to connect frontend views with geospatial and analytics data sources.
Technical Highlights
The application was built on a Ruby/Jinja architecture. Rather than migrating the entire application to React, we introduced Preact for new interactive features because it provided a lightweight integration with the existing stack. I also built visualizations with Mapbox GL, D3.js, Canvas.js, and eCharts, and implemented dynamic PDF reporting features.
Challenges
As data density increased, the D3 implementation began creating too many DOM elements, causing browser performance issues. I evaluated alternatives and replaced that visualization with a Canvas-based implementation that handled continuous streaming data much more efficiently.
What I've Learned
Building complex visualizations taught me that good frontend engineering isn't just about making interfaces look good. It's about making difficult technical problems feel effortless to the user.
Interview Q&A
Tell me about the Mapbox project.
The work involved building geospatial interfaces where users could inspect and reason about complex location-based data. Mapbox GL provided the map foundation, while the frontend architecture handled interactive layers, filtering, and related analytics views.
Why did you use Preact instead of a full React migration?
The existing app used Ruby and Jinja, so a full migration would have been expensive and risky. Preact gave us a pragmatic path to add modern interactive features without disrupting the whole system.
How did you handle large datasets?
When DOM-heavy D3 rendering began to strain performance, I moved the dense visualization work to Canvas. That reduced the number of DOM nodes and made the interface better suited for continuous streaming data.
What was the biggest frontend challenge?
The biggest challenge was turning dense technical data into an interface that felt responsive and understandable. That meant thinking about rendering performance, interaction design, and data clarity together.