Hi, I'm Hayk Petrosyan.

I build web applications end to end, from data-heavy interfaces to event-driven backends.

Senior Software Engineer (full-stack) with 7+ years of experience building production systems in TypeScript, Node.js, and React/Next.js for enterprise and SaaS products, with hands-on experience in event-driven backends (Kafka, RabbitMQ) and PostgreSQL performance.

Open to remote work, relocation, and B2B contracts · Yerevan (UTC+4)

7+
years of experience
6M
users of Zangi messenger
75%
faster reporting endpoint
3
engineers mentored

What I Do

The systems and engineering challenges I specialize in.

Frontend & UI/UX Engineering

I build data-heavy React, Next.js, and Angular interfaces, real-time D3 visualizations, Electron desktop apps, and canvas-based editors, and I work directly with clients on user flows and UX.

Full-Stack Product Engineering

I build web applications end to end with TypeScript, React, Next.js, Node.js, NestJS, and Express.js, from complex user workflows to REST and GraphQL APIs and server-side business logic.

Distributed Systems & Backend Architecture

I design microservices and event-driven backends with Kafka and RabbitMQ, using the transactional outbox, idempotent consumers, retries, and dead-letter queues, with JWT, OAuth 2.0, and role-based access control.

Data, Performance & Cloud

I optimize PostgreSQL queries, indexes, and Redis caching, improve frontend rendering and data transformations, and work with Docker, Nginx, Linux, AWS S3, and CI/CD.

Featured Project

A multi-tenant order platform demonstrating event-driven microservices, reliable messaging with Kafka and RabbitMQ, role-based access, and PostgreSQL performance work.

OrderHub architecture: a React and Vite web app calls a NestJS monorepo with orders, inventory, and notifications services. The orders service publishes through a transactional outbox to Kafka topics orders.events, stock.events, and the dead-letter topic orders.events.dlq; the inventory service consumes events idempotently. Docker Compose runs two PostgreSQL databases, Redis, and RabbitMQ.React + Vite web appREST · GraphQL · JWTNestJS monorepoordersinventorynotificationsoutboxidempotent consumerKafkaorders.eventsstock.eventsorders.events.dlqDocker ComposePostgreSQL ×2two databasesRedisrate limiter · cacheRabbitMQemail jobs · retries · DLQ

Project Screens

OrderHub, Multi-Tenant Order Platform

NestJS · Kafka · RabbitMQ · PostgreSQL · Redis · React

A multi-tenant order platform built as a NestJS monorepo with three microservices (orders, inventory, notifications) and a React + Vite frontend, where each tenant sees only its own data. Services communicate through Kafka with a transactional outbox, and email jobs run on RabbitMQ.

  • Multi-tenant data model: each tenant sees only its own data
  • Role-based access with admin, manager, and viewer roles
  • JWT authentication with email/password and Google login
  • REST and GraphQL APIs
  • Web app pages for orders, new orders, stock, notifications, and team management

Technical Highlights

  • Transactional outbox publishing to Kafka topics orders.events and stock.events, with a dead-letter topic (orders.events.dlq)
  • Idempotent inventory consumer that skips duplicate events
  • Email jobs on RabbitMQ with retries and a dead-letter queue
  • Redis rate limiter and cache
  • Cut a reporting API endpoint's response time by ~75% (from ~1.2s to ~300ms) by restructuring PostgreSQL queries, adding indexes, and caching results in Redis
  • Docker Compose for all infrastructure: two PostgreSQL databases, Redis, Kafka, and RabbitMQ
  • Vitest unit and e2e tests, plus a load-test script

Skills

Technologies and engineering practices I use to design and build web, desktop, and backend applications.

Frontend & Cross-Platform

  • React
  • Next.js
  • Angular
  • RxJS
  • Zustand
  • TanStack Query
  • React Hook Form
  • D3.js
  • Electron

UI & Styling

  • Tailwind CSS
  • Angular Material
  • MUI
  • Bootstrap
  • styled-components
  • SCSS
  • Storybook
  • Responsive Design

Backend & Data

  • TypeScript
  • Node.js
  • NestJS
  • Express.js
  • REST
  • GraphQL
  • Kafka
  • RabbitMQ
  • PostgreSQL
  • Redis

Architecture & Security

  • Microservices
  • Distributed Systems
  • Event-Driven Design
  • Clean Code
  • SOLID
  • DRY
  • KISS
  • YAGNI
  • OAuth 2.0
  • JWT
  • RBAC

Cloud, Testing & Tools

  • AWS S3
  • Docker
  • Nginx
  • Linux
  • CI/CD
  • Jest
  • Vitest
  • Git
  • GitLab
  • Jira
  • Webpack
  • Vite

Also Worked With & AI Tools

  • Redux Toolkit
  • Axios
  • Formik
  • WebSockets
  • Stripe
  • Vue.js
  • AngularJS
  • PHP/Laravel
  • MySQL
  • Claude
  • Cursor
  • ChatGPT

Experience

Professional experience building web, desktop, and backend applications across frontend, backend, and cross-platform environments.

Senior Software Engineer

Intetics

Mar 2022 – Present

Remote

Design and build web applications for clients in Europe and North America, across frontend and backend.

OrderHub, Multi-Tenant Order Platform

TypeScript, NestJS, Kafka, RabbitMQ, PostgreSQL, Redis, GraphQL, React

  • Designed and built a multi-tenant order platform as a NestJS monorepo with three microservices (orders, inventory, notifications) and a React (Vite) frontend, where each tenant sees only its own data.
  • Implemented event-driven flows on Kafka with the transactional outbox pattern, idempotent consumers, and a dead-letter topic; email jobs run on RabbitMQ with retries and a dead-letter queue.
  • Built REST and GraphQL APIs with JWT authentication (email/password and Google login), role-based access (admin, manager, viewer), and a Redis rate limiter.
  • Cut a reporting endpoint's response time by ~75% (from ~1.2s to ~300ms) by restructuring PostgreSQL queries, adding indexes, and caching results in Redis.
  • Set up the full environment with Docker Compose (two PostgreSQL databases, Redis, Kafka, RabbitMQ) and added Vitest unit and e2e tests and a load-test script.

Hecht Kontaktlinsen, APEX Lens Visualization System

Angular, RxJS, TypeScript, D3.js, Electron

  • Built an Electron desktop app in a team of 4 for a German contact-lens company, visualizing lens fit and fluorescein (tear-film) data to help propose the right lens, with English and German localization.
  • Developed interactive D3 visualizations in Angular and RxJS, including fluorescein scale, depth, and two-line charts with real-time updates.

MSH News, News Website Frontend

Next.js, React, TypeScript, Redux Toolkit, styled-components

  • Built frontend features for a news website for MSH, a German media software company, rendering CMS-driven page layouts and article content with Next.js and an OpenAPI-generated API client.
  • Developed section and sub-section pages, header navigation, sliders, and ad integrations (native, Revive, Taboola), with Redux Toolkit for state management.

MSH OPAL, Digital Asset Management

Angular, Angular Material, RxJS, TypeScript, WebSockets

  • Built frontend features for a digital asset management web app for MSH Medien System Haus, a German media software company, with English and German localization.
  • Worked on the main dashboard (directory tree, file preview, versions and history, saved search profiles) and the admin area (asset types, workflows, user privileges, audit logs).
  • Worked with JWT authentication (route guards, HTTP interceptors) and real-time updates over STOMP and SockJS; delivered through Jira tickets and GitLab merge requests.

Dynamic Portfolio Strategies (DPS), Investment Analytics Platform

React, TypeScript, Zustand

  • Built data-intensive dashboards and visualizations for a US investment platform used by financial advisors, with Zustand for state management.
  • Improved initial page load and frontend responsiveness by profiling rendering, optimizing data transformations, and removing unnecessary re-renders.

Mentoring

  • Mentored 3 junior engineers and reviewed architecture and pull requests; used AI coding tools (Claude, Cursor, ChatGPT) to speed up refactoring, test writing, and code review.

Other projects at Intetics

  • Leveren, AI-Powered Job Search & CV Builder (React, TypeScript, AI APIs): built AI-assisted CV creation, job search, and filtering features, in a team of 3.
  • JIRA Data Export Tool (Electron, Node.js, JIRA REST API): independently built an internal desktop app for Intetics that exports JIRA project data for reporting.
  • TypeScript
  • Node.js
  • NestJS
  • React
  • Next.js
  • Angular
  • RxJS
  • D3.js
  • Electron
  • Kafka
  • RabbitMQ
  • PostgreSQL
  • Redis
  • GraphQL
  • Docker
  • Nginx

Software Engineer

Zangi

Feb 2021 – Mar 2022

Yerevan, Armenia

Developed production features in a team of 10 developers for a secure cross-platform SaaS communication platform with 6 million users, supporting private messaging, audio/video calls, real-time presence, notifications, and subscription-based access.

  • Refactored the frontend architecture to separate UI, state, business logic, real-time communication, and Electron-specific code, improving maintainability and cross-platform stability.
  • Implemented secure Electron IPC and WebSocket workflows for presence, reconnection, message sync, and failure recovery; contributed to audio/video call state, signaling, and device handling.
  • Built Node.js and Express.js backend features, including file storage on AWS S3, and Stripe recurring subscriptions with tiered pricing, plan changes, renewals, cancellations, and webhooks.
  • Improved authentication, session management, and reliability; added automated tests and contributed to CI/CD and release validation.
  • Electron.js
  • React
  • Node.js
  • Express.js
  • WebSockets
  • Stripe
  • AWS S3
  • Nginx
  • JavaScript

Full Stack Developer

Evistep

Jan 2019 – Nov 2020

Yerevan, Armenia

Built full-stack web applications with Vue.js, React, AngularJS, Laravel, and MySQL.

  • Built a collaborative project-management app (Vue.js, Vuex, Laravel, MySQL) with drag-and-drop boards, tasks, assignees, comments, REST APIs, and authorization.
  • Built a tender-monitoring platform (React, Redux, Laravel, MySQL) that scrapes, normalizes, and deduplicates procurement data, with search and multi-criteria filtering.
  • JavaScript
  • Vue.js
  • Vuex
  • React
  • Redux
  • AngularJS
  • PHP
  • Laravel
  • REST APIs
  • MySQL