Senior Software Engineer
Tech Manager & Senior Software Engineer — Vancouver, BC
00 — About Me
Software Engineer specializing in Web3, with experience building products for both retail and institutional investors across decentralized ecosystems. I work across the full stack, developing responsive and scalable frontends using JavaScript (React.js, TypeScript, Redux-Saga, Electron) and robust backend systems with Go, Node.js (Express), MongoDB, and gRPC. My blockchain expertise includes working with XRPL and Coreum, as well as designing and implementing smart contracts in Rust using CosmWasm.
I focus on delivering clean, efficient, and production-grade code, with a strong emphasis on performance, scalability, and long-term maintainability. Rather than opting for quick fixes, I prioritize building solid, well-structured solutions that can evolve over time. I have contributed to the development of DeFi and blockchain-based applications that bridge complex financial logic with intuitive user experiences.
Driven by a constant desire to improve, I approach every task with the mindset of refining and optimizing it beyond the initial solution—whether in functionality, design, or efficiency. Passionate about learning, coding, and problem-solving, I continuously expand my skill set while building impactful technology in the Web3 space.
01 — Working Style
Full stack + full lifecycle
From CosmWasm smart contract to gRPC service to React component in the same sprint. Managed a project start to handoff — including knowledge transfer documentation and clean final state.
Breadth without losing depth
Dozens of repos across organizations over multiple years. Multiple services per month, consistently. Comfortable navigating large codebases without needing extended onboarding time.
Side project discipline
Pulsara was built consistently alongside full-time work, including new domains added in heavy delivery months. Side projects don't pause when the main job gets busy.
New domains from scratch
The sportsbet service and user-assets gRPC model were net-new domains with no prior scaffolding. Both went from zero to structured, deployed systems quickly.
Consistent delivery cadence
High commit volume across many active months with no long gaps. Activity aligns with feature deliveries, not maintenance bursts. See the Career page for metrics and charts.
Honest about gaps
Doesn't avoid talking about skill gaps. Prefers transparency over managing perception. Open about what's been learned on the job vs studied deliberately.
02 — AI + Tooling
The workflow isn't prompt-and-paste. It's plan first, delegate implementation, then audit. Cursor handles boilerplate and repetitive structural work. Claude handles architecture discussion, research synthesis, and document generation. ChatGPT fills in edge cases. The throughput gain comes from staying in the design and review seat rather than the typing seat.
Cursor
Primary coding environment. Used for implementation of services, protobuf models, and frontend components. Plan the work manually — Cursor implements — then audit line by line. Not autopilot; more like a fast typist with context.
Claude
Architecture discussions, document generation, research synthesis. Used for longer-context reasoning and design decisions. Also used to generate this report from raw git history data.
ChatGPT
Quick lookups, syntax edge cases, library-specific questions. Picked based on which model has better recall for the specific tech at hand: Go stdlib behavior, CosmWasm quirks, protobuf edge cases.
The actual workflow
Plan the service or feature manually. Write down the data flow, the gRPC contracts, the failure modes. Then open Cursor and implement with AI assistance. Every output gets reviewed — the same way you'd review a PR from a junior dev who writes fast but doesn't always understand the system. AI removes friction on implementation; I still own the architecture and the decisions.