What Building Arcnine Taught Me About Real-Time Interfaces
September 14, 2026
A trading terminal looks simple from the outside: prices move, orders are submitted, and positions update. Underneath that interface, several streams of information are changing independently and must still tell one coherent story.
While working as a Senior Software Engineer at Tradeify, I led development of the Arcnine trading terminal and tenant dashboard. The work reinforced a lesson that applies well beyond trading software: real-time applications are primarily state-management problems.
Every event changes the story
Market prices, working orders, fills, positions, and account balances do not arrive together. Each update may change what the user should see, and events can arrive while the user is taking another action.
We used an event-driven WebSocket architecture so the frontend could respond to those changes as they happened. The difficult part was not opening a socket. It was defining how each event changed application state and making those rules predictable.
Design for reconnection
A real-time connection will eventually be interrupted. A laptop sleeps, a network changes, or a server restarts. Reconnecting is only half the job; the application also needs to determine what changed while it was disconnected.
That means the interface needs a reliable snapshot of current state, followed by live events. Designing that recovery path early makes the normal path more understandable too.
Make confidence part of the interface
In financial software, stale or ambiguous information can lead to expensive mistakes. Loading states, connection status, rejected orders, and delayed data are part of the product, and the interface should communicate them.
Arcnine taught me that the best real-time interfaces do more than update quickly. They help users understand what the system knows, what it is still waiting for, and whether an action actually succeeded.