David
Czartoryski

AI Infrastructure Researcher@Northeastern University HPC Research Lab

I build AI infrastructure, distributed systems, and the products around them. Software engineer, AI infrastructure researcher at Northeastern University's HPC Research Lab, and founder. I build cross-vendor GPU training and runtime-diagnosis systems using Explorer at MGHPCC, alongside shipped products and AI agents. Studying Computer Science and Business Administration, graduating December 2027; looking for a new-grad software engineering role.

The Palace of Culture and Science in Warsaw, lit violet at night, with a person standing in the square in front of it.
Warsaw · WAW52.23°N 21.01°E

The work that actually pulls me in is making things faster. Load balancing, cutting latency, runtime, and cost: profiling a system until the bottleneck shows itself, then optimizing the code around it. Most of what I have shipped is a version of that same problem — a 5-second poll down to 120 ms, 70% off deployment time, 30% off query latency, and now GPU clusters: a cross-vendor all-reduce 2.7x faster, and a detector that finds the one slow GPU holding a training job back.

Graduating
Dec 2027 · Northeastern University
Studying
B.S. Computer Science & Business Administration, Corporate Innovation
Based in
San Francisco · Boston · Warsaw
Open to
  • New-grad software engineering, starting after December 2027
  • Private equity and venture roles
  • Front-office, people-facing finance

By the numbers

02Experience

Where I've worked.

05 roles
  1. Oct 2026 – Present Boston, MA · MGHPCCCurrent

    Northeastern University HPC Research Lab.

    AI Infrastructure Researcher
    bit-exact floating-point comparisons, Rust vs Python
    4.1M+bit-exact floating-point comparisons, Rust vs Python
    • Develop gpubridge and a runtime GPU straggler detector and workload rebalancer, using Northeastern's Explorer cluster at the Massachusetts Green High Performance Computing Center (MGHPCC). The projects began independently and led to this research role.
    • Own the work across distributed communication, GPU kernels, statistical diagnosis and native Rust execution. Evaluate changes with hardware benchmarks, reference-based differential tests and fault injection, preserving numerical behavior and asynchronous resource lifetimes.
    • PyTorch
    • Rust
    • CUDA
    • ROCm
    • NCCL / RCCL
    • Triton
    • Slurm
  2. Sep 2026 – Present Boston, MACurrent

    Pawtograder.

    Software Engineer
    weekly active users on the platform I help run
    5,000+weekly active users on the platform I help run
    • Operate a production coding and grading platform serving 5,000+ weekly active users across ten Northeastern CS courses, as one of 15 engineers shipping through daily standups and peer code review on a subteam of four that owns one service end to end.
    • Set up telemetry for the Next.js and Supabase platform with the OpenTelemetry library, exporting metrics to Prometheus and visualizing them in Grafana dashboards.
    More from this role04More
    • Raised survey error-text contrast from 3.98:1 to 5.06:1 after finding 2 WCAG 1.4.3 failures the CI accessibility gate excluded, and extended the axe-core sweep to scan pages mid-interaction, now covering 40 routes.
    • Measured the CI accessibility gate's recall across 82 axe-core scans with 8 seeded defects: it caught 1 of 8, which made the case for scanning with every rule and in interaction states.
    • Traced 2 test suites crashing on import to a missing jsdom global, exposing 5 real failures hidden in the LLM-hint rate-limiting tests and a CI config that gated only 2 test files.
    • Capstone with Prof. Jon Bell. The platform covers submissions, similarity checking, grading workflows, a gradebook with its own query language, a forum, polling, and real-time office hours. Other schools have asked to adopt it.
    • Next.js
    • TypeScript
    • Supabase
    • OpenTelemetry
    • Prometheus
    • Grafana
    • Playwright
    • axe-core
  3. Jan 2026 – May 2026 Boston, MA

    Mosaiq Software.

    Full-Stack Software Engineer
    update latency, down from a 5-second polling loop
    120 msupdate latency, down from a 5-second polling loop
    • Cut update latency to 120 ms by replacing a 5-second polling loop with a WebSocket transport, unblocking live updates and interactive multi-user workflows the product could not support before.
    • Moved the React frontend and Node/Express backend onto shared TypeScript API contracts in a monorepo package, so a breaking change fails the compiler instead of reaching production as a runtime data-flow bug.
    • React
    • Node
    • Express
    • TypeScript
    • WebSockets
  4. Jul 2025 – Dec 2025 Menlo Park, CA

    Summit Partners.

    DevOps Engineer Co-op
    off deployment time at a $42B+ AUM growth equity firm
    70%off deployment time at a $42B+ AUM growth equity firm
    • Cut deployment time 70% at a $42B+ AUM growth equity firm by automating infrastructure provisioning in Python, Bash, and Azure CLI, reclaiming 12 engineer-hours per week from manual runbooks.
    • Diagnosed international server connectivity failures through firewall and routing configuration alongside the firm's lead architect, inside a security-compliant private equity environment.
    More from this role03More
    • Provisioned 50+ company-issued devices into the firm's zero-trust endpoint stack (Zscaler, Proofpoint, ThreatLocker), maintaining hybrid fleet compliance in Jamf Pro and NinjaOne.
    • Cut 4 hours per deal review by shipping AI extraction and summarization into the deal spreadsheet workflow, owned end to end from pitch to production as the intern project.
    • Reduced query latency 30% with a Python and SQL service that deduplicated redundant datasets and rewrote the calculation pipelines reading from them.
    • Python
    • Bash
    • Azure CLI
    • SQL
    • Jamf Pro
  5. Jun 2023 – Aug 2024 Southwick, MA

    Whalley Computer Associates.

    Network Engineer Intern
    • Configured hundreds of Cisco switches per rollout with a Python script parameterized for each site's requirements, replacing switch-by-switch CLI work across state agency and municipal deployments.
    • Cut inter-site latency 35% by migrating government sites off 1990s Cat 3 cabling to Cat 8 and replacing the switch hardware behind it.
    More from this role01More
    • Set up firewall policy, BGP peering, and IP addressing at each site, standardizing configuration that had drifted into a different security posture per location.
    • Cisco
    • Python
    • BGP
    • Firewalls
03Ventures

Companies I've started.

03 under HH

Hercules Holdings LLC.

Founder & CEO · Venture studio & holding company
2024 – Present

Hercules Holdings — HH — is the venture studio and holding company behind my govtech fare platform, consumer fintech app, and the AI tooling for the commerce brands. It has had employees and interns. My GPU infrastructure work is now part of my Northeastern research role.

  • 22,000+riders under contract
    HH-001B2B govtech · transit fares

    EternalTap.

    A wallet-native fare platform for universities and transit agencies, built with a cofounder.

    How it was built03More
    • Verifies rider eligibility against a university roster sync, prices MBTA fare rules, and ships a signed Apple Wallet pass. Next.js, TypeScript, Postgres.
    • Wrote the eligibility engine across 9 MBTA reduced and free fare categories, auto-verifying, rejecting, or routing each application to review, plus the entire rider web app and the native SwiftUI app, which reads date of birth from an ID with Vision OCR.
    • Secured a conditional contract covering 22,000+ riders and drew venture interest. Now working go-to-market: university B2B contracts and MBTA partnership sequencing.

    A transit pass that lives in the phone you already unlock.

    The problem

    University transit programs are an eligibility problem wearing a fare problem's clothes. A school negotiates discounted passes for enrolled students, and then somebody has to actually prove who is enrolled, apply the right agency fare rule, issue a physical card, and take it back when the student graduates or drops. Most of that is manual, and the plastic makes it worse.

    There is no consumer-facing site to point you at, because this is sold to universities and transit agencies rather than to riders.

    How it works

    The platform syncs against the university's roster as the source of truth on who is currently enrolled, prices the ride against MBTA fare rules, and issues a signed Apple Wallet pass straight to the student's phone.

    Because eligibility is derived from the roster rather than from a card somebody is holding, a pass can be revoked the moment enrollment lapses, instead of staying valid until a piece of plastic is physically returned.

    What I built

    The eligibility engine: 9 categories, 5 free and 4 reduced, where each application is auto-verified, auto-rejected, or sent to human review, each category has its own re-verification period, student eligibility expires with the semester, and inspector-reported mismatches revoke it at two strikes. The MBTA's reduced-fare and Semester Pass rules live in code, with fares in integer cents.

    Also the family accounts (guardian and dependent riders, a 30-minute claim code, an atomic account merge), magic-link login, about 70% of the database schema, the entire rider web app, and the entire iOS app: a SwiftUI mirror of the web flow with a Keychain-backed API client and Vision OCR that reads date of birth from an ID.

    Where it stands

    Built with a cofounder. It has a conditional contract covering 22,000+ riders and has drawn venture interest.

    Current work is go-to-market: university B2B contracts, and sequencing the MBTA partnership.

    • Next.js
    • TypeScript
    • Prisma
    • Postgres
    • Swift
    • SwiftUI
    • Apple Wallet
  • 800+transactions per window
    HH-002B2C fintech · iOS

    CrediMax.

    Aggregates your credit cards through Plaid and tells you which one to tap at checkout.

    How it was built03More
    • An AI engine over 800+ Plaid-aggregated transactions per rolling three-month window prices missed rewards and surfaces the best card at the point of purchase.
    • Built solo end to end, with about 280 production deploys in six weeks: a SwiftUI app whose one location-triggered pipeline feeds lock-screen widgets, Live Activities and an Apple Watch complication, a FastAPI and Postgres backend on Plaid's production environment, and a Claude advisor grounded in card and transfer-partner data.
    • Negotiated seed terms with venture firms and senior American Express leadership, then walked away from the round.

    You are holding four cards. Only one of them is the right one.

    The problem

    Rewards cards are only worth anything if you use the right one at the right merchant, and the rules are deliberately hard to hold in your head: rotating quarterly categories, capped bonus spend, different multipliers per card. Most people default to whichever card is in front and quietly leave rewards on the table at every checkout.

    How it works

    The app aggregates your cards through Plaid and reads roughly 800+ transactions per rolling three-month window to learn where you actually spend.

    An AI engine prices what you left behind — the gap between the card you tapped and the best card you were carrying — and then surfaces the right card at the point of purchase, before you pay rather than on a statement a month later.

    How it is built

    Solo, end to end: 183 commits, about 12,800 lines of Swift and 6,700 of Python, and about 280 production deploys in six weeks, on Plaid's production environment.

    On the phone, one location-triggered pipeline feeds four Apple surfaces: the app, home and lock-screen widgets, Live Activities, and an Apple Watch complication. A geofence wakes a background task that fetches the recommendation and writes it where the widgets and the watch can read it.

    Behind it, a FastAPI and Postgres backend with a rewards engine across 16 cards and 12 spending categories, a Plaid sync that saves its cursor only after every page succeeds, tokens encrypted at rest, and a Claude advisor grounded in card and transfer-partner data, rate-limited behind authentication. Stripe billing, Sign in with Apple, and CCPA delete and export round it out.

    Where it stands

    The site and backend are live at credimax.app with the waitlist open, and the app is on its way to TestFlight.

    Negotiated seed terms with venture firms and with senior American Express leadership, then walked away from the round.

    • Swift
    • SwiftUI
    • WidgetKit
    • FastAPI
    • Postgres
    • Plaid
    • Claude
    • Stripe
  • $180Krevenue driven
    HH-003AI tooling · ecommerce

    The creative engine.

    The software behind the DTC brands: an autonomous storefront builder and an ad creative pipeline.

    How it was built03More
    • The storefront builder regenerates a whole shop per product category and tunes it against live sales, feeding heatmap and Meta Conversions API data back into its redesign decisions. $180K in revenue across the brands.
    • The creative pipeline (Higgsfield MCP plus a Python Pillow compositor) takes ad production from days to 6 minutes, about 40 variants a week, with AI UGC video prompted through Kling 3.0 and Seedance 2.0. Shopify theme work in Liquid, JSON, and JS.
    • AdForge, the pipeline as a FastAPI and React service: Claude turns customer research into validated ad copy, the image model renders a text-free scene, and the compositor sets every word, so copy is always legible and exactly as written.

    The storefronts and the ads that sell on them, mostly building themselves.

    The storefront builder

    Rather than hand-designing a shop per product category, the builder regenerates the whole storefront and then tunes it against live sales, feeding heatmap data and Meta Conversions API results back into its own redesign decisions.

    The creative pipeline

    Higgsfield MCP plus a Python Pillow compositor takes ad production from days down to about 6 minutes, roughly 40 variants a week. AI UGC video is prompted through Kling 3.0 and Seedance 2.0.

    AdForge runs it as a FastAPI and React service. Claude reads the customer-avatar and ad-angle research and returns validated JSON copy and a palette, Nano Banana Pro renders a scene with no text in it, and a custom Pillow compositor sets every word: outlined headline, auto-placed subhead, benefit callouts. Because the image model never draws text, the copy is always legible and exactly as written.

    The agent-run version follows a per-product spec through the Higgsfield MCP server with locked settings, which is how a test run caught the provider silently swapping image models and halted before compositing.

    Underneath it is ordinary Shopify theme work: Liquid, JSON, and JavaScript.

    Result

    $180K in revenue across the brands it runs.

    • Python
    • FastAPI
    • React
    • Pillow
    • Claude
    • Higgsfield MCP
    • Shopify
    • Liquid
    • Meta CAPI
04Projects

Research & featured work.

04 projects
  • Featured
    faster 1 GB all-reduce across NVIDIA + AMD
    2.7×faster 1 GB all-reduce across NVIDIA + AMD
    slowdown detected in calibrated simulation
    2%slowdown detected in calibrated simulation
    bit-exact float comparisons, Rust vs Python
    4.1M+bit-exact float comparisons, Rust vs Python
    seeded jobs in the scoring validation corpus
    3,000seeded jobs in the scoring validation corpus
    P/01Aug 2026 – Present

    gpubridge + straggler detector.

    AI infrastructure research · Mixed-vendor GPU trainingGPU-tested collectives · RDMA in progress

    Two complementary systems: an open-source PyTorch backend that joins NVIDIA and AMD GPUs in one training job, and a runtime detector and workload rebalancer that identifies what slows that job down.

    • Designed hierarchical collectives that keep NCCL on NVIDIA and RCCL on AMD while bridging vendor-specific GPU groups. Implemented asynchronous collectives, GPU-stream synchronization, DDP/FSDP2 integration and Triton compression kernels across separate CUDA and ROCm software stacks. Hardware coverage spans six GPU models.
    • Cut a 1 GB cross-vendor all-reduce 2.7x, from 1.67 s to 0.61 s, with fp8 compression on a V100 + MI50. In a separate LLaMA-style training benchmark, fp8 raised mixed data-parallel throughput from 4,549 to 9,523 tokens/s. These results used the TCP bridge.
    How it was built03More
    • Built hardware-aware diagnosis that separates expected GPU differences from degradation, and slow computation from communication delays when they overlap. Calibrated simulations with 100-step windows detected 2% slowdowns under 5% timing jitter, with no false flags across 250,560 healthy rank-windows. Rebalancing preserves sample-weighted gradient averaging.
    • Ported the stateful scoring engine to Rust and verified bit-exact numerical agreement across 3,000 seeded jobs and over 4.1 million floating-point comparisons. Differential tests, fault injection and hardware regressions check correctness across numerical, scheduling and failure boundaries.
    • Current work: hardening a Rust/libibverbs RDMA prototype with NVIDIA GPUDirect and AMD GPU-memory registration, NIC-counter-based fabric diagnosis, and polling policies that trade latency against CPU use. Preparing a reproducible cluster-validation package; real GPU-direct transfers and their training benefit remain hardware-validation targets.
    The straggler detector, in depth07More

    A training cluster only moves as fast as its slowest GPU.

    Why it is hard to catch

    Nothing crashes. The job runs, the loss goes down, the dashboards look healthy. A straggler does not announce itself as a failure, it just shows up as a training run that is quietly costing a third more than it should, for weeks at a time.

    The usual way you find out is after the fact, reading timings once the run is already paid for, and even then a job spans so many nodes that working out which one was slow is its own investigation. Detecting it while the job is live is what makes it actionable: you can drain that machine and reschedule mid-run instead of eating the tax to the end.

    Watching the collectives

    Distributed training synchronizes at collective operations, like the all-reduce that averages gradients every step. When one rank is slow, every other rank reaches the collective early and waits for it.

    The tool monitors that collective communication through NCCL on NVIDIA and RCCL on AMD, so the rank everyone is waiting on stands out at runtime. For stock jobs, a profiler plugin written in C records device-side timing for every collective into a shared-memory ring, so the rank that arrives last is found even when only its forward or backward pass is slow.

    The mixed-vendor problem

    These clusters are not uniform, so the tool works across both vendors instead of locking into one. NVIDIA and AMD expose performance counters differently and have different baseline timing behavior, so a naive cross-vendor comparison reads an ordinary hardware difference as a fault and flags healthy machines.

    The signal has to be normalized per vendor before a real straggler is separable from routine variance. Each rank is scored against its peers on the same vendor and against its own baseline, so a vendor that is slower by design reads as load imbalance rather than as bad GPUs, and hardware classes keep mixed generations (V100, A100, H200, MI50) from misflagging. Getting that boundary right is most of the work.

    Fast enough to run alongside training

    Cross-rank summary exchange runs on a background thread over the job's own store, so training never waits for a missing rank's summary. In a CPU simulation with 10 ms steps, the direct detector cost was about 0.2% of step time; this is not a measured overhead guarantee for GPU training.

    The complete stateful scoring update runs in Rust, with one native boundary call per window. The validation corpus matched the Python reference bit for bit across 3,000 seeded jobs and over 4.1 million floating-point comparisons.

    From finding to fix

    Every finding carries its cost in milliseconds per step and, through NVML and AMD SMI telemetry, a likely cause such as thermal throttling or a clock drop. Hangs are reported with a flight recorder that names the stuck rank and every rank's collective phase.

    Imbalance turns into per-vendor batch sizes with exact gradient averaging: with AMD 20% slower, simulated step time falls 5.5%. One command attaches the detector to an unchanged training script, with a Prometheus exporter and a Grafana dashboard.

    Where it stands

    In calibrated simulations with 100-step windows, it detected 2% slowdowns under 5% timing jitter, with no false flags across 250,560 healthy rank-windows. The next validation stage exercises the integrated Rust RDMA transport and NIC diagnosis on allocated hardware; mock and CPU results are kept separate from real GPU measurements.

    Where it comes from

    It started with following the work Meta and AMD have been doing on distributed training reliability. Hyperscalers are tackling this problem internally, and it matters most at supercluster scale: the more GPUs a job spans, the more places a straggler can hide, and the more every slow step costs.

    • PyTorch
    • NCCL
    • RCCL
    • Triton
    • CUDA
    • ROCm
    • C / C++
    • Rust
    • libibverbs
    • Slurm
  • P/02Sep 2026 – Present

    HuskyClaw.

    In beta · 1st place, AI Builder Blitz

    An agentic assistant built for Northeastern students. Text it a task (find co-ops, pick classes, prep for an interview) and it plans the work across registration, coursework and recruiting, with every real-world action behind the student's approval.

    How it was built03More
    • Won 1st place among 250+ participants at Microsoft's AI Builder Blitz, the launch challenge for Northeastern's AI Makerspace; now in beta with student testers.
    • Working with the Dean of Khoury College, Northeastern's Chief of AI and the Board of Trustees toward a university-wide launch on Northeastern's existing Anthropic partnership.
    • Designed a staging layer that turns every agent action into a reviewable diff the student approves, modeled on Terraform's plan and apply, which caps the blast radius and blocks prompt-injected actions.
    • Claude
    • Agents
    • Human-in-the-loop
  • P/03Sep 2026 – Present

    inbox-triage.

    Public · MIT

    A Python agent that runs a student's job hunt from the inbox: it flags assessments, interviews and offers, files bulk mail by moving it rather than deleting, puts interviews on the calendar, scouts new postings, and on a yes tailors a one-page résumé.

    How it was built03More
    • Sends just 2 of 25 messages to the model on a real mailbox sample by putting allowlists, a weighted header prefilter and a verdict cache in front of Claude, and halved idle run time from 18.7 s to 9.0 s on a 4,046-message mailbox.
    • Scanned 1,535 job postings in 85 s: free filters first, then Claude ranks the remaining 428 against the résumé and recommends the best 20.
    • Sandboxed a headless Claude Code session that tailors résumés from untrusted job descriptions: writes confined to one build folder, shell limited to the build script and read-only git, and the run fails if the source résumé changes. 90 offline tests.
    • Python
    • Claude
    • Claude Code
    • AppleScript
    • IMAP
    • GitHub Actions
  • P/04Sep 2026

    SixthDegree.

    Private

    A local-first Claude agent on macOS that builds a private graph of everyone you know from Contacts, iMessage, LinkedIn exports and dictated notes, finds the shortest chain of people to whoever you need to reach, and drafts the first text.

    How it was built02More
    • A hand-written tool-use loop over 5 read-only tools and a SQLite graph with FTS5 search, where every fact and edge cites its source. Claude Opus reasons; Claude Haiku mines message history in bulk through the Message Batches API.
    • Entity resolution turns "Jordan's uncle" into a placeholder that merges once someone names him, and an iMessage bridge lets the agent answer texts from the owner's phone, with human approval before anything is sent.
    • Python
    • Claude
    • SQLite
    • FastAPI
    • Pydantic
05Stack

What I build with.

Core · 08 tools
  • Python
  • TypeScript
  • Rust
  • C++
  • PyTorch
  • CUDA
  • ROCm
  • Next.js
Languages
  • Python
  • TypeScript
  • JavaScript
  • Java
  • C++
  • C
  • Rust
  • Swift
  • SQL
  • Bash
  • Racket
  • Liquid
  • HTML/CSS
Frameworks & AI
  • React
  • Next.js
  • Node.js
  • Express
  • FastAPI
  • Django
  • Angular
  • SwiftUI
  • React Native
  • LLM APIs
  • Claude tool use
  • RAG
GPU & distributed
  • PyTorch distributed
  • NCCL
  • RCCL
  • Triton
  • CUDA streams
  • ROCm
  • UCX
  • RDMA / libibverbs (in development)
  • Slurm
Infrastructure
  • Git
  • Linux
  • Docker
  • PostgreSQL
  • Supabase
  • MongoDB
  • Azure CLI
  • GitHub Actions
  • OpenTelemetry
  • Prometheus
  • Grafana
Networking
  • TCP/IP
  • BGP
  • VLANs
  • Routing & switching
  • ACLs
  • Firewall policy
  • DNS
06Education

Northeastern, and off the clock.

Expected Dec 2027 Boston, MA

Northeastern University.

B.S. Computer Science & Business Administration
Concentration in Corporate Innovation
  • Won 1st place among 250+ participants at the 2026 Microsoft x Northeastern AI Hackathon (AI Builder Blitz) with HuskyClaw.
  • Coursework includes Financial Management and CS 4535, the capstone behind the Pawtograder role.
  • President of the Polish Club (previously VP of the Polish Students Association). The club attended an international youth conference in Warsaw in summer 2026 on the future of Poland.
  • Wrestling at Northeastern, and a member of the NU AI Club.
  • CookYourBooks: a Java OOP group project.
Off the clock
Wrestling
Massachusetts state champion, multiple titles. Still wrestles at Northeastern.
Languages
English, Polish at heritage-speaker level, and Russian.
Travel
23 countries so far, with home bases in San Francisco, Boston, and Warsaw.
Interests
Photography · Cars · Chess · Fitness · Warsaw real estate · Shopify freelancing
The stamps, the mat and the photos are in the full site
07Résumé

Résumé PDF.

08Contact

Let's talk.

Graduating in December 2027 and interviewing for new-grad software engineering roles. Email is the fastest way to reach me.

czartoryski.d@northeastern.edu

San Francisco · Boston · Warsaw

RésuméPDF