Frontend Developer · Tehran, Iran Open to senior frontend roles

Mohsen Azar

Seven years building web interfaces, the last three inside Tabdeal — Iran's largest crypto exchange by trading volume — where I moved from writing the trading screens to owning Special Margin, its flagship leveraged-trading product, end to end.

Experience 7+ yrs
Platform users 7M+
Trading revenue ~2×
Browser memory 54%

Selected work

Tabdeal · 2023—now
Context

For my first year I was the only frontend developer on the main Trading screens and Classic Leverage. When Special Margin was conceived, its frontend became mine alone — every order form, position panel, margin calculation and risk indicator on the screen.

What I did
  • Built and maintained the entire Special Margin frontend as its single owner, from first release through every iteration since.
  • Took on project management for the product-excellence initiative — creating, coordinating and tracking every task across backend, design and frontend, and holding the roadmap together.
  • Made the architecture calls for trading-related frontend work, and reviewed every merge touching trading anywhere on the platform.
  • Ran frontend technical interviews alongside the Head of Frontend as the team grew.
Outcome

Trading revenue roughly doubled, and the product grew to several thousand active traders inside a 7M+ user base. Leverage is the highest-stakes surface on the platform — a wrong number on screen is a real loss for a real person.

Vue 3Nuxt 3PiniaTailwind CSSWebSocketProject management
The problem

Setting a take-profit or stop-loss meant leaving the chart, reading a number off it, and typing that number into a form — while the price kept moving. The chart is where the decision actually happens; the form was in the way.

What I built
  • Interactive TP/SL lines drawn onto the TradingView chart, draggable in place, with order state staying in sync in both directions.
  • Live reconciliation between the chart, the order form and the incoming WebSocket price stream, so the numbers never disagree mid-drag.
  • Designed and shipped independently — from the interaction idea through to production.
Outcome

The first implementation of its kind among exchanges in Iran, and now one of the features users single out when they talk about the platform.

TradingView charting libraryWebSocketVuePointer events
The problem

Traders keep the platform open all day. With continuous WebSocket streams feeding prices, order-book depth and charts, memory climbed steadily through a session and took stability and responsiveness down with it.

What I did
  • Profiled the trading pages and traced the growth back to the JavaScript logic handling high-frequency updates.
  • Reworked that logic — how streamed data is stored, reused and released — rather than patching symptoms.
  • Used AI assistants as part of the profiling and optimization loop across many pages of the platform, with every change verified against a real measurement.
Outcome

Browser memory on the affected pages fell from roughly 350MB to 162MB — a 54% reduction — with a matching improvement in stability over long sessions.

JavaScript profilingWebSocketMemory managementAI-assisted development
Context

Years of fast shipping across trading, wallet, KYC, campaigns and the Telegram mini-app had left the frontend inconsistent in appearance and risky to modify.

What I did
  • Led implementation of a Design System Language — shared tokens and components that made the interface consistent and new screens fast to assemble.
  • Refactored legacy code into a modular clean architecture, so responsibilities are separated and changes stay local.
  • Kept accessibility a habit rather than a checklist: semantic HTML, ARIA labels, keyboard navigation, and interface animation that serves the interaction.
Also part of the job

Being the person the team asks when a design decision feels wrong or a piece of product copy reads badly — a habit carried over from years of content writing before this career.

Design systemsClean architectureCode reviewAccessibilityTechnical interviewing

Ground covered at Tabdeal

Special MarginSole owner · PM
Main tradingSole developer
Classic LeverageSole developer
Easy LeverageContributor
WalletContributor
Transaction historyContributor
KYC & authenticationContributor
Telegram mini-appContributor
Campaign pagesContributor
SEO landing pagesContributor
Owned = sole developer and maintainer Reviewer for every trading-related merge, platform-wide

Where I've worked

2019 — now
Jul 2023 — present

Frontend Developer · Tabdeal Exchange

Iran's #1 exchange by trading volume, 7M+ users. Owner of the leverage products, primary code reviewer and architecture decision-maker for trading, and interviewer for frontend hires.

Vue 2/3 · Nuxt 2/3 · Pinia · Vuex · Vue Router · Tailwind CSS · WebSocket

Sep 2021 — Jul 2023

Frontend Developer · International Complex of Tehran Tandis

Second frontend engineer after the Lead, overseeing three developers including onboarding and interviews, while leading frontend for internal systems — ITSMS, ticketing, reporting, asset management, user management, SSO and real estate — and building responsive, data-intensive dashboards.

Vue.js · Bootstrap-Vue · Chart.js · Axios

Jun 2020 — Sep 2021

Frontend Developer · IRMALL — Online Shop

Sole frontend developer for an e-commerce platform and its CMS admin panel, owning the full cycle from architecture through deployment.

Nuxt.js · Vue.js

2019 — 2020

Frontend Developer · MATYN

Where the Vue.js foundations were built: a full-featured online grocery store and its CMS, from the ground up.

Nuxt.js · Vue.js

What I work with

Core

Vue 2 / 3 and the Composition API, Nuxt 2 / 3, JavaScript (ES6+), HTML5, CSS3.

Real-time data

WebSocket streams for prices, order books and charts. REST APIs, GraphQL, Axios.

State & styling

Pinia, Vuex. Tailwind CSS, Sass/SCSS, Less, Bootstrap, Bootstrap-Vue.

UI, animation & accessibility

Semantic HTML, ARIA labels, keyboard navigation, CSS and JS animation, responsive design.

Architecture & practice

Clean architecture, design systems, code review, Agile/Scrum, technical interviewing, Git, Docker.

Working knowledge

React, Next.js (production maintenance), TypeScript, Vite, Webpack, Jest, Redux, Antd, MUI.

How I work

I own the thing, not the ticket

Special Margin went from a feature I was assigned to a product I ran. Ownership meant the roadmap and the coordination across three teams, not only the code.

AI as leverage, verified

I use AI assistants deliberately — profiling and optimizing performance across the platform, and writing Django hotfixes so a small backend dependency doesn't hold up a release. Every result gets checked against a measurement.

Design and copy are part of frontend

Coming from a content-writing background, I'm the person the team asks about an interaction that feels wrong or a sentence that reads badly. I'd rather raise it than ship it.

Numbers on screen are somebody's money

Leveraged trading leaves no room for a rounding error or a stale price. That standard shapes how I test, review and refactor.

Education & languages

2019

Web Design Pack · Tehran Institute of Technology

Official certificate — the start of the switch into software.

2017

Master's in Architectural Engineering · Azad University, Semnan

Where the habit of thinking in structures and systems came from.

Languages

Persian native · English intermediate