Cabili

SCENE 01 · COVER

GitHub LinkedIn CV

Tel Aviv · תל אביב · English / Hebrew

Amir Cabili

Senior Front-End Developer, Tech Lead & AI Integration Specialist

INT. A DUAL-STACK PRACTICE — DAY. Angular 17+ and React/MERN in the same hands, with OpenAI-backed systems wired into real product work: cybersecurity, fintech, banking.

SCENE 02 · THE THREE GELS

One operator. Three practices.

This is not an Angular-only page. The work is a braid: Angular for dense enterprise product, React for MERN delivery, and AI systems that sit behind a real UI, with fallbacks, service boundaries, and a human still on the set.

Angular practice storyboard still

Enterprise Angular, current tense

At Hub Security I lead front-end on Angular 17+ B2B systems: TypeScript, SCSS, Node, the unglamorous work of making a complex product feel inevitable. Standalone APIs, signals, RxJS where the domain is actually async, and architecture that a team can keep shipping after I leave the room.

  • Angular 17+ with TypeScript, RxJS, and SCSS design tokens
  • Standalone components, route config, and incremental module migration
  • Data-heavy dashboards, filters, and resilient empty/error states
  • Tech-lead ownership: reviews, structure, and delivery against real constraints

Angular 17+ · TypeScript · RxJS · SCSS · Node.js · Design tokens

React practice storyboard still

React is not a side note

I am a certified MERN full-stack developer (Yaniv Arad College, 2022–2023). React is a working practice: component systems, Node services, Mongo where it belongs, and the same accessibility and performance bar I hold on Angular. When a product should be React, I do not force it into an Angular-shaped box.

  • React, Node.js, Express, MongoDB. MERN as a shipped stack, not a course badge
  • Hooks, composition, and UI systems that can be documented and reused
  • MEAN and MERN both in the kit, so mixed estates are not a surprise
  • The same WCAG, performance, and review discipline as the Angular work

React · Node.js · Express · MongoDB · TypeScript · Next-adjacent delivery

AI systems storyboard still

AI as infrastructure, not a demo

At Hub Security the title is AI Integration Specialist for a reason. I design OpenAI-backed workflows into enterprise frontends: prompt systems, copilots, AI-assisted UI generation, and LLM automation in internal tools, always with a UI that still works when the model is slow, empty, or wrong.

  • OpenAI APIs behind service boundaries. Keys never live in the browser
  • Prompt engineering and agentic workflows that a product team can operate
  • AI-assisted development and UI generation, reviewed like any other change
  • Fallback UX: loading, refusal, timeout, and “do it without the model”

OpenAI APIs · Prompt systems · Copilots · Agentic workflows · LLM UX

SCENE 03 · THE REEL

A career told as production, not a badge wall.

Two decades of interfaces that had to work on the day they shipped: advertising, events, banking, trading-adjacent marketing, cybersecurity. The later reels add React and AI. The early reels are why the later ones hold.

  1. 2024–

    INT. HUB SECURITY (BLACK SWAN) — CYBERSECURITY PRODUCT — DAY

    Senior Front-End Developer, Tech Lead & AI Integration Specialist. Angular 17+, TypeScript, Node, SCSS. OpenAI APIs, prompt systems, copilots, and AI-assisted UI generation inside B2B product and internal tools. The current picture: lead the front-end, keep the AI layer honest.

    hubsecurity.com

  2. 2022–24

    INT. ETORO MARKETING — FINTECH — DAY

    Senior Front-End Developer. Angular 16+, TypeScript, Node, Bootstrap/SCSS. Marketing systems, landing pages, email-adjacent web, and mobile-responsive platforms that have to look right in every browser the market actually uses.

    etoro.com

  3. 2017–22

    INT. AMAN GROUP — BANKING & ENTERPRISE — YEARS

    Senior Web Client Developer. Angular 1.5 through Angular 12+, TypeScript, complex multi-user financial platforms. Client work including Discount Bank Israel. Long-form product: the kind of UI that accountants, bankers, and operators live in all day.

    aman.co.il

  4. 2016–17

    INT. MATRIX DIGITAL — CLIENT DELIVERY — DAY

    Senior Web Client Developer. HTML, CSS, Bootstrap/SASS, JavaScript, jQuery, .NET/C#. Agency tempo, client constraints, shipping on other people’s calendars.

    matrix.co.il

  5. 2010–14

    EXT. TEL AVIV PRODUCTION HOUSES — EARLIER REELS

    Kenes International: web developer, event dashboards, multilingual UI. Zarmon Goldman DDB: webmaster / designer-programmer, campaign landing pages, motion, brand. Ness SES: front-end on HTML, SCSS, ASP.NET. The craft years: production, not theory.

  6. 1997–00

    INT. IDF — TEL HASHOMER INFORMATION CENTER — DAY

    Project Manager, Information Center of the Tel Hashomer Recruitment Bureau. Systems, people, and information under pressure. The first production office.

SCENE 04 · SELECTED SETS

Rooms I have actually worked in.

Enterprise work is mostly private. These are not case-study metrics. They are the sets: what kind of product, which stack, which constraints. Illustrations are production stills, not screenshots of client systems.

Illustrated cybersecurity product war-room, analog film lighting

SET 01 · CYBERSECURITY

Hub Security

B2B web applications on Angular 17+. AI-integrated infrastructure: OpenAI APIs, prompt optimization, copilots, intelligent UI generation. Tech-lead ownership of the front-end so the AI layer has a product to land in.

Angular 17+ · TypeScript · OpenAI · SCSS · Node

Illustrated fintech marketing studio with abstract charts

SET 02 · FINTECH MARKETING

eToro

In-house marketing platforms: landing pages, web-based tools, mobile-responsive sites. Angular 16+, TypeScript, Node. Cross-browser, cross-device, the unforgiving surface of a public brand.

Angular 16+ · TypeScript · SCSS · Node · Responsive web

Illustrated banking platform workbench with dense forms

SET 03 · BANKING

Aman Group · Discount Bank

Multi-user financial web applications for local banks, including Discount Bank Israel. Angular across major version jumps. The long job: keep a living system coherent while the stack underneath it changes.

Angular 1.5 → 12+ · TypeScript · Complex financial UI

Training that is on the call sheet

Not a trophy wall. The certificates that changed what I could take onto a set.

Software architectureDevOps Experts College · 2024

MERN full-stackReact & Node.js · Yaniv Arad College · 2022–2023

C# & .NETJon Bryce College · 2010–2012

Webmaster / .NETJon Bryce College · 2008–2009

Interactive web designSELA College · 2007

Software developmentSELA College · 2001–2004

Management & CSOpen University of Israel

SCENE 05 · TABLE READ

Twenty questions. Straight answers.

A table read, not a FAQ accordion of marketing. Angular, React, and AI systems in the same conversation, because that is how the work actually shows up.

Q01How does a typical engagement start?

A 30–45 minute discovery call: the product, the constraints, the stack you already have, and what “done” means. I come back with a short plan: milestones, risks, and what I would actually build first. No theatre. If I am the wrong person, I say so.

Q02Do you work in Angular, React, or both?

Both. Current day-job depth is Angular 17+ as tech lead at Hub Security. React is a certified, working practice: MERN full-stack (React, Node, Express, MongoDB). MEAN and MERN are both in the kit. I will not pretend a React product should be rewritten in Angular to match my comfort.

Q03How do you choose Angular vs React for a new product?

I start from the team you can hire, the estate you already run, and the kind of UI. Dense, long-lived enterprise with strong typing and a batteries-included platform often wants Angular. Product surfaces that want a thin runtime, a React-shaped talent pool, or a Node-native full stack often want React. The wrong reason is “what the last agency used.”

Q04What does “AI systems” mean in your day-to-day work?

Not a ChatGPT tab. At Hub Security it means OpenAI APIs in the architecture: prompt systems, copilots, AI-assisted UI generation, LLM automation in internal tools, and the frontend contracts around them (loading, refusal, timeout, review, and a path that still works when the model is down).

Q05How do you put OpenAI APIs into an enterprise frontend without leaking secrets?

The browser never holds the key. Calls go through a service you own, with auth, rate limits, logging that strips PII, and a schema for what the model is allowed to return. The UI treats the model as an unreliable dependency: typed responses, timeouts, and a manual fallback. Prompt text is product code, versioned, not a string in a ticket.

Q06What does your Angular 17+ practice actually look like?

Standalone components, route config, functional providers, signals where they clarify, RxJS where the domain is a stream. Incremental module → standalone migration rather than a weekend rewrite. Strict TypeScript. Change-detection hygiene. The point is a system a team can keep, not a demo of the newest API.

Q07What does your React / MERN practice look like?

React on the client, Node/Express on the server, Mongo when the data shape wants it. Hooks and composition over ceremony. Shared UI as a small system, not a folder of one-off components. TypeScript preferred. The MERN diploma (2022–2023) is the formal layer; the professional layer is the same review bar I use on Angular: a11y, performance, and boringly clear PRs.

Q08How do you use AI for UI generation without shipping generic interfaces?

Generation is a first draft, never a ship button. I keep tokens, constraints, and examples in the prompt so the model copies your system, not the internet’s average dashboard. Then a human review: spacing, copy, focus order, empty states. If it looks like every other AI layout, it failed. Rewrite it or throw it away.

Q09Can you run a design system across Angular and React?

Yes, if you treat tokens as the contract and components as adapters. Color, type, space, and motion live in a language both stacks can consume (CSS variables / SCSS). Each framework gets primitives in its own idiom (Angular standalone components, React function components), documented in Storybook. Do not share a single runtime component across both unless you have a very good reason.

Q10How do you make accessibility survive a real delivery schedule?

It is in the definition of done, not a phase at the end. Semantic HTML first, ARIA only when the HTML is not enough, visible focus, keyboard paths, name/role/value. axe and Lighthouse as CI smoke, plus manual NVDA or VoiceOver on the journeys that matter. This page is set in Atkinson Hyperlegible for the same reason I argue for WCAG 2.1 AA on product work: reading is the product.

Q11Performance: Angular change detection vs React rendering. How do you budget?

Same budgets, different knobs. LCP, CLS, INP as the public numbers. On Angular: OnPush/signals, trackBy, lazy routes, less work in templates. On React: memo where it earns its keep, lists that do not re-render a city, split the bundles you actually load. Images in modern formats, fonts with display swap, no hero video pretending to be atmosphere.

Q12State management: signals, NgRx, React Query. When?

Local UI state stays local. Server state wants a cache with invalidation: React Query (or similar) on React, a clear data layer on Angular. NgRx when the domain is genuinely event-sourced or many features share a contract; not because the template included it. Signals and component store cover a surprising amount of product UI without a global store.

Q13Testing and CI. What actually gates a merge?

Unit tests on logic that can fail quietly. Component tests on the interactions you cannot see in a type checker. A thin Playwright layer on the journeys that lose money or trust. Visual checks on design-system primitives. Lint, types, and a11y smoke in CI. I keep PRs small so the gate is a conversation, not a hostage situation.

Q14Have you worked in mixed Angular + React estates or micro-frontends?

Yes. The hard part is not Module Federation. It is the contract: routing, auth, tokens, and a shared idea of what a button is. Independent deploys only help if the design language and the performance budget are pacts, not hopes. I would rather a boring iframe with a clear boundary than a clever runtime that nobody can debug at 2 a.m.

Q15Hebrew, English, RTL. How do you handle i18n?

I work in English and Hebrew. Copy lives outside the component. Logical CSS properties instead of left/right. Angular i18n or Transloco on Angular; a proper message catalog on React. Test the layout in RTL, not just the dictionary. Numbers, dates, and names are locale problems, not afterthoughts.

Q16What does tech-lead work look like for you?

I still write the important paths. Around that: architecture that a team can draw from memory, reviews that teach, ADRs for the decisions that will be argued in six months, and a bias for small PRs. Mentorship is pairing and checklists (a11y, perf, security), not motivational Slack. At Hub Security the lead title is operational, not ceremonial.

Q17Security for LLM features at the UI boundary?

Treat model output as untrusted. Encode it. Do not eval it. Do not let a prompt instruct the UI to exfiltrate. Keep tenant data out of logs. CSP, dependency audit, and no secrets in the client. The ordinary OWASP work still applies, plus prompt injection as a first-class abuse case. If a feature cannot fail closed, it does not ship.

Q18What do you hand over at the end of a sprint?

Production UI in the stack we agreed (Angular or React), plus tokens/components, the a11y and performance work, and a short handover: what changed, what is deferred, how to run it. Loom or notes when the team is distributed. I do not vanish behind a zip file of undocumented SCSS.

Q19Engagement models, timezones, languages?

Fixed-scope sprints when the outcome is clear; a retainer when the product is still moving. I embed with product, design, and backend. Based in Tel Aviv, remote-friendly, English and Hebrew. I typically reply within a day. Send the brief even if it is messy.

Q20If we are not sure where to start, what should we send?

A link or PDF of the current UI, the stack (Angular, React, or both), whether AI is in scope, three priorities, and a date. I will answer with a short, usable plan, even if you do not hire me. That is a cheaper way to learn if we should work together than a deck.

SCENE 06 · CALL SHEET

Put me on the next slate.

If you need a senior who can walk into an Angular estate, a React product, or an AI-shaped workflow without pretending they are the same job: write. Tel Aviv, remote-friendly, English and Hebrew.

Contact

What to send

  • The problem in two sentences
  • Angular, React, AI: which are in play
  • Users and the journeys that matter
  • Constraints: stack, timeline, access
  • What good looks like in 90 days