Skip to content
Go through the DevLicense journey
Real work. What 2026 actually hires for.

AI can write the code. It can't make the call.

Go through the DevLicense journey. Then decide if it is for you.

raise PRStart Thursday 24 Sepchanges requestedSee the journey first

Not a job. ₹4,999, once. Fabrix is not real — the work is.

A certificate.
A link.
01
the ticket

You're hired. Sort of. Here comes your first ticket.

Employee #47. Your manager is Sebastian. Tickets are given to you, with a clock, by someone who expects them back. Read the docs first — some are wrong on purpose, like real ones.

02
your call

Claude reads the code with you. Then you decide.

The real tool, with the AI budget your tickets need. It is fast, confident, and sometimes wrong. Make the call on the right → Sebastian answers.

03
the review

Two reviews. The code, and how you asked for it.

Nothing merges until the corrections are made. Prompts get reviewed like code: what did Claude get wrong, and did you catch it?

04
the incident · unannounced

One day, production breaks.

You get the ping. Mid-ticket. It is not on your list. Write it up: what broke, where the bug wasn't, what you'd change.

05
your 45 days · ~100 hours

Seven kinds of work. You draw three.

~18 tickets, 2–8 hours each. Nobody gets the same 45 days. Every ticket on the right is an actual ticket from the Fabrix backlog.

~18 tickets, 2–8 hours each. Nobody gets the same 45 days. Every ticket below is an actual ticket from the Fabrix backlog.

06
the record

You don't get a certificate. You get a link.

Every PR and every review — one URL, corrections included. We could hide them. We don't. Keep scrolling — the panel zooms in to the whole page a recruiter sees.

Every PR and every review — one URL, corrections included. We could hide them. We don't. This is the page a recruiter sees.

devlicense.com/p/ananya-iyer-00047 · EXAMPLE
chat.fabrix.internal · #storefront
# storefront
PR
Priya
Koramangala says the site sold two shirts they'd already sold at the counter. Again.
DV
Dev
the sync job? it's on a 15-min timer since the retrofit
SB
SebastianDM
@you — FAB-2291. Customer bought 3, we had 1. Stores are shouting. It's yours. Due Thursday.
FAB-2291bug · storefrontdue in 2d 14hCustomer bought 3. We had 1.Online order for 3 × Ivory Tee (M) went through. Koramangala had already sold 2 at the counter. Stock page said 3.
Message #storefront
checkout.jssync.js
// storefront/checkout.js- if (item.stock_total >= qty) {+ if (item.stock_online >= qty) {+   item.stock_online -= qty    reserve(item, qty)  }
Claude wrote this in 40 s. Your call:
Sebastian · a little later
Changes requested. This makes the storefront subtract from its own copy of stock. The store sold those two through the POS. The copy is 15 minutes old — check the sync job, not the checkout. Your fix hides the bug for 15 minutes.

Correction logged. That's the job. Now do 18 of them.
Sebastian · a little later
Good call. You reviewed Claude before Claude reviewed you. The number the storefront reads is 15 minutes old — the POS sync runs on a timer. That's where this lives. Write it up, then fix the right thing.

That's the job. Now do 18 of them.
Claude Code
fix the stock check
Read storefront/checkout.js
Update storefront/checkout.js +2 −1

Found it. The storefront checks total stock, not online stock. I've switched the check and decremented the online count on reserve. Want me to add a test?

40 s2 files
Reply to Claude…
FAB-2291: Customer bought 3. We had 1. #318
Openyou want to merge 1 commit into main from fix/fab-2291
Conversation 2Commits 1Checks 1Files changed 1
SB
sebastian requested changesChanges requested
The fix moves the bug, it doesn't remove it. Read inventory/sync.js — why is the copy 15 minutes old? Add the RCA to the PR description.
SB
sebastian reviewed your promptsPrompt review
You asked "fix the stock check". You did not tell Claude two systems hold stock. It answered the question you asked. Caught after the review — your second prompt named the sync.
Changes requestedMerging is blocked until the corrections are made.
Merge pull request
# incidentslive
SB
Sebastian
Checkout is returning 500s on empty carts since the 14:30 deploy. Drop what you're on. @you — you touched checkout last week. Go.
PR
Priya
PayZen webhook retries are piling up too. Might be related. Might not.
SB
Sebastian
Write it up when it's down: what broke, where it wasn't, what you'd change.
Message #incidents
Your 45 days~18 tickets~100 h
ononbugbugbugststmigmigmigmigstrepreprepreprepinc
Bugs · a return accepted against another store's bill
Business feature · one invoice series for the company
Vendor integration · ShipKart webhooks out of order
Migration · get the POS off its own stock table
Legacy retirement · retire two-manager discount approval
Data & reporting · store and online totals never reconcile
Policy change · the returns page says one policy, the code another
EXAMPLEDevLicense · verified record
Ananya Iyer
NO. DL-2026-00047
COMPANY FABRIX · storefront, inventory, orders
HOURS 100 · TICKETS 18 · CORRECTIONS 23 · RCA 1
ISSUED 30 OCT 2026
ANANYA<IYER<<DL2026<<00047<<<
Ananya worked the Fabrix backlog for ~100 hours.Fabrix is a simulated company. The tickets, the reviews and every merged PR below are real and on GitHub. Every row opens the PR and the review thread.
100hours
18tickets merged
23corrections

the record · 18 tickets · every row: PR · review

FAB-2291Customer bought 3. We had 1.
bug · storefront · 6 hPRreview
merged2 corrections
FAB-2304Return accepted against a bill from another store
bug · pos · 7 hPRreview
merged1 correction
FAB-2310Reservation expires mid-checkout; the customer pays for nothing
bug · inventory · 8 hPRreview
merged3 corrections
INC-0412Production: checkout 500 on empty cart
incident · unannounced · RCA writtenPRRCA
RCA accepted1 correction
FAB-2331ShipKart store-to-store transfers — webhooks arrive out of order
vendor integration · orders · 26 h in 4 ticketsPRreview
merged5 corrections
FAB-2352Get the POS off its own stock table
migration · pos → inventory · 24 h in 3 ticketsPRreview
merged4 corrections
12 more rows — onboarding, warm-up, the rest of the bug block

prompt reviews · how she asked, and what Claude got wrong

FAB-2291Asked "fix the stock check". Did not tell Claude two systems hold stock. Claude answered the question asked. Not caught on the first pass; caught after the review.
FAB-2331Told Claude the webhooks can arrive out of order before asking for code. Claude proposed idempotent handling. Caught before merge that "delivered" must not overwrite "shipped".
INC-0412Asked Claude for the cause. Claude blamed the cart. Read the deploy log instead; the cause was the 14:30 PayZen change. Overruled Claude, correctly.

what was done · seven categories, she drew three

3bugs
1vendor integration
1migration

Plus onboarding, warm-up tickets, and one unannounced incident. Every student draws three of the seven; no two records are the same.

45 days · ~2 hours a day

day 1incidentday 45
onboarding & warm-upbugsvendor integrationmigrationincident

links

github.com/ananya-iyer · LinkedIn (optional, the student's choice)

● Verified on DevLicensedevlicense.com/p/exampleissued 30 Oct 2026EXAMPLE

A page like this one is yours in ~45 days at ~2 hours a day.

raise PREnroll — ₹4,999one payment · refund before your first PR
after the journey · the debrief

That's the journey. Sebastian has a few things to say before you pay.

Sebastian · DM · read before you pay
SB
Sebastian
Fabrix is not real. The tickets, reviews and merged PRs on your own GitHub are.
SB
Sebastian
I'm not a person. I'm AI on a fixed rubric. I reply in hours and I do not go easy.
SB
Sebastian
There is no job guarantee. There is a record a recruiter can open during the call.
SB
Sebastian
This is not a job. You pay us. We do not pay you. And don't write "worked at Fabrix" on your resume — write the PRs.
SB
Sebastian
Not for you if you want a certificate to upload · can't give ~2 h a day for ~45 days · your laptop can't run two repos · want to be told the answer.
SB
Sebastian
What you'll have on day 45: ~18 merged PRs on your own GitHub, a record with every correction on it, and one link. That is what you're paying for.
what you get · one payment · no upsell

Everything the job comes with.

  • 01

    ~18 tickets, ~100 hours

    Seven kinds of work — you draw three.

  • 02

    AI manager & reviewers

    Fixed rubric. Reviews in hours, not weeks.

  • 03

    PRs on your own GitHub

    Merged under your account. Outlives us.

  • included

    Claude Code included

    The real tool, with the AI budget your tickets need.

  • 05

    Prompts reviewed like code

    What Claude got wrong — did you catch it?

  • 06

    One production incident

    Unannounced. You get the ping.

  • 07

    A public record

    Every PR and correction, at one URL.

questions · before you pay

Your questions, answered.

Who is this for?

Students in any year, from first year to final year. Freshers looking for their first engineering role. And people moving into software from another job. No work experience needed — just about two hours a day for ~45 days, and a laptop that can run two repos.

What exactly do I get for ₹4,999?

~100 hours of real tickets at Fabrix, Claude Code with the AI budget your tickets need, an AI manager and reviewers on a fixed rubric, every PR merged on your own GitHub, one production incident, and a public record at one URL. One payment, nothing locked.

Is this a job or an internship? Do I get paid?

No. It is simulated work experience — you pay us, we do not pay you, and there is no employer–employee relationship. The company is invented; the repository, tickets, reviews and merged pull requests on your own GitHub are real.

Will this get me a job?

No promise — anyone selling a job guarantee for ₹4,999 is selling something they cannot deliver. You get a record a recruiter can open during the call: merged PRs, the corrections you fixed, a written incident report. What you do with it is yours.

Who reviews my work — a person or an AI?

Your manager, reviewer and teammates are AI on a fixed rubric. That is why a review lands in hours instead of a week, and why everyone is held to the same bar. The corrections are specific and you must fix them before anything merges.

How much time does it take? What if I fall behind?

About 100 hours — roughly 45 days at two hours a day, at your pace. Deadlines sit on tickets, not on you: go quiet past about twice a ticket’s estimate and it returns to the pool; you pick up a fresh one when you are back. Exams or a placement drive: apply for leave and due dates extend by up to three weeks.

Can I put this on my resume?

Yes — your work, the merged PRs, and your record link.

Can I get a refund?

Yes, until your first PR: a full refund within 7 days of paying, as long as you have not raised your first pull request. Once your first PR is raised, it is non-refundable — each ticket set is authored for one engineer. Refunds go back through Razorpay in 5–7 working days.

Still not sure? Leave your number.We call you back within 24 hours and answer anything — including whether this is right for you.

Only used to call you about DevLicense. Or write to hello@devlicense.com.

Practice problems.
Real work. Reviewed. Merged.

Be the one who makes the call.

raise PRStart Thursday 24 Sepchanges requestedSee an example record