Skip to content
View IxxyDev's full-sized avatar
  • Georgia

Block or report IxxyDev

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Maximum 250 characters. Please don’t include any personal information such as legal names or email addresses. Markdown is supported. This note will only be visible to you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
IxxyDev/README.md

Yaroslav Denisenko

Senior engineer — TypeScript / React in production, Rust and developer tooling in public.

📍 Tbilisi, Georgia · Open to relocation · Senior IC roles · BSc Applied Maths & Physics (MIPT)

I build high-performance UI and Canvas-based rendering — shipped editors, real-time analytics dashboards, and banking tools across AdTech, enterprise software, and EdTech. Full work history on LinkedIn.

Pinned work

  • yoptascript-rs — A full compiler frontend from scratch in Rust: lexer, recursive-descent parser, AST, tree-walking interpreter. Built alongside my Biome contributions — Biome is a large, mature JS/TS parser/linter, so I wanted a small from-scratch counterpart to understand each layer end-to-end.

  • financial-rust — Multi-format financial transaction parser (CSV ↔ text ↔ custom binary), with a library and two CLIs designed around Read/Write traits and a versioned binary format.

  • v8-simple-profiler — A profiler that measures how V8 deoptimizes monomorphic vs polymorphic code paths, using V8 intrinsics and proper statistics for honest measurement.

  • task-tracker-elysia — A task API on Bun + Elysia with strict Clean Architecture / DDD layering, typed error handling via Result unions, and a scheduled worker for due-date notifications.

What I'm exploring

  • 🦀 Contributing to Biome — Rust-based JS/TS linter & formatter. Recent work in its type-inference engine:
    • Fixed overloaded-function resolution (#10585 + #10586) — models TypeScript's overload sets in the module graph and selects the matching signature at the call site, so noFloatingPromises stops misfiring on overloaded calls.
    • Expanded noUnnecessaryConditions to flag type-aware dead conditions: nullish/optional chaining on non-nullable types, always-falsy negations, unreachable switch cases.
    • Earlier: ported noAriaUnsupportedElements and added noRedundantRoles for HTML a11y.

Contact

📧 denisenkoforwork@gmail.com · 💼 LinkedIn

Pinned Loading

  1. financial-rust financial-rust Public

    Rust

  2. task-tracker-elysia task-tracker-elysia Public

    TypeScript

  3. v8-simple-profiler v8-simple-profiler Public

    Simple v8 profiler with deoptimization examples and benchmark

    JavaScript

  4. yoptascript-rs yoptascript-rs Public

    Rust 4

  5. biome biome Public

    Forked from biomejs/biome

    A toolchain for web projects, aimed to provide functionalities to maintain them. Biome offers formatter and linter, usable via CLI and LSP.

    Rust