← All Magento articles
20 min quiz

45 Magento Frontend Developer Interview Questions — The Interactive Quiz

A frontend developer at a laptop preparing for a Magento theme technical interview.
Forty-five Magento frontend questions, four choices each, scored live. Find out whether you would survive a real Magento theme — or just the docs.

Most Magento interview question lists are trivia. "What preprocessor does Magento use?" "Name the theme files." You can pass that after a weekend and still be unable to ship a fast, maintainable theme.

So this one is different. Forty-five questions, four answer choices each, click to score. It is aimed at frontend / theme developers — Layout XML, .phtml templates and view models, the LESS pipeline, RequireJS, Knockout and UI components, the customer-data sections layer, static content deploy, Core Web Vitals, and where Hyvä and headless take over. Each question is labeled Junior Mid Senior so you can see where the bar is. Click an option, see whether you got it right, read the short explanation, move on. Your score updates live, with a breakdown by topic at the end.

Whether you are prepping for the chair or sitting on the other side of it, the goal is the same — find the gap between people who can ship in a Magento theme and people who can recite the docs.

Answered 0 / 45·Score 0 / 0

A. Theme structure & fundamentals

The foundation. Miss more than two and the candidate has not built a real Magento theme from scratch.

Question 1Junior
Which file makes a Magento 2 theme discoverable by the framework?
Question 2Junior
Where does a theme declare its parent theme?
Question 3Junior
What is the default CSS preprocessor in stock Magento 2?
Question 4Mid
What does etc/view.xml in a theme control?
Question 5Mid
To override a parent theme’s template at app/design level, where do you place the file?

B. Layout XML

The single most Magento-specific frontend skill. This is where you find out if someone really knows the platform.

Question 6Junior
What is the difference between a <block> and a <container> in layout XML?
Question 7Mid
You need to add a block to a page that already exists. Which element do you use?
Question 8Mid
What is a layout “handle” such as catalog_product_view?
Question 9Mid
How do you remove a block from the layout without deleting the original definition?
Question 10Senior
Where are the page layouts like 2columns-left and 1column actually defined?

C. Templates, blocks & view models

Where candidates either write clean, escaped PHTML or smear logic everywhere.

Question 11Junior
Inside a .phtml template, which variable references the current block?
Question 12Mid
What is the recommended way to pass logic/data to a template WITHOUT writing a custom block class?
Question 13Mid
How should you output a user/admin-supplied string in a template to prevent XSS?
Question 14Mid
What does getChildHtml('alias') do in a template?
Question 15Senior
Why is calling an expensive collection load directly inside a .phtml a problem?

D. Styling & the LESS pipeline

The part that separates “I tweak CSS” from “I own the theme build.”

Question 16Junior
What are styles-m.less and styles-l.less in a Magento theme?
Question 17Mid
By convention, where do a module’s theme styles live so @magento_import can collect them?
Question 18Mid
In Magento, what is the difference between server-side and client-side LESS compilation?
Question 19Mid
During active theme development, what tool do you typically run to recompile LESS on file change?

E. RequireJS & JavaScript

How JS actually gets onto a Luma-based page — and where people get lost.

Question 20Junior
What module loader does stock (Luma) Magento 2 use to manage JavaScript?
Question 21Mid
What is the difference between data-mage-init and x-magento-init?
Question 22Mid
How do you customize an existing Magento JS component without copying its whole file?
Question 23Mid
Magento’s frontend JS widgets are built on which library’s widget pattern?
Question 24Senior
In production, why might your custom requirejs-config.js change “not take effect”?

F. Knockout.js & UI components

The checkout/minicart layer — old, dense, and unavoidable on Luma.

Question 25Mid
Which parts of Magento are most heavily built on Knockout.js?
Question 26Senior
A Magento UI component (uiComponent) typically pairs a JS file with what?
Question 27Senior
You added a checkout step but it doesn’t appear. Which mechanism most likely controls its placement/registration?
Question 28Mid
What does the data-bind attribute do in a Magento Knockout template?
Question 29Senior
Which is a real reason teams replace the Luma/KO frontend with Hyvä?

G. customer-data & private content

Why Magento can full-page-cache a page that still shows YOUR cart.

Question 30Senior
With Full Page Cache on, how does the minicart still show the current customer’s items?
Question 31Senior
What is the purpose of sections.xml (etc/frontend/sections.xml)?
Question 32Senior
In JS, how do you read or force-refresh a customer-data section?

H. Static content, deploy modes & caching

The operational reality that turns “works on my machine” into a production outage.

Question 33Junior
Which command compiles and publishes theme assets to pub/static?
Question 34Mid
What are Magento’s three deploy modes, and how do they affect static assets?
Question 35Mid
You changed a .phtml in developer mode but still see the old output. What is the usual fix?
Question 36Senior
In production, what most commonly serves the Full Page Cache for anonymous traffic?

I. Performance & Core Web Vitals

Magento is heavy by default. This is where a senior frontend dev earns their seat.

Question 37Mid
What does “advanced JS bundling” / minification aim to reduce on a Luma storefront?
Question 38Senior
Which is the most defensible way to improve LCP for the main product image?
Question 39Senior
A third-party extension drags every page’s Lighthouse score down. What is the most likely frontend cause?
Question 40Mid
Why is Hyvä frequently cited in Magento Core Web Vitals discussions?

J. Headless, tooling & judgment

How they reason about big choices — and whether they have shipped under load.

Question 41Mid
What is PWA Studio / Venia in the Magento ecosystem?
Question 42Senior
Which is NOT a real trade-off of going headless on Magento?
Question 43Mid
Which developer tool helps you see which template/block rendered a given piece of the page?
Question 44Mid
A frontend-only change (PHTML/LESS/JS) is live — do you need bin/magento setup:di:compile?
Question 45Senior
You ask “what is the worst Magento frontend bug you ever fixed?” Which answer is the RED FLAG?
Live result
0 / 45
0% correct (so far — 0 of 45 answered)
Early days

Magento is dense. Start with the fundamentals (A), then DI and modules (B), then EAV (C). The rest builds on those three.

By section
A. Theme structure & fundamentals
0 / 5
B. Layout XML
0 / 5
C. Templates, blocks & view models
0 / 5
D. Styling & the LESS pipeline
0 / 4
E. RequireJS & JavaScript
0 / 5
F. Knockout.js & UI components
0 / 5
G. customer-data & private content
0 / 3
H. Static content, deploy modes & caching
0 / 4
I. Performance & Core Web Vitals
0 / 4
J. Headless, tooling & judgment
0 / 5

A note on where Magento frontend is heading

The big shift to probe in 2026 is the Luma-versus-Hyvä-versus-headless decision. Luma’s RequireJS + Knockout + jQuery stack still runs most stores, but its weight is a Core Web Vitals liability — and Hyvä (Tailwind + Alpine, minimal JS) has become the default answer for new builds that want speed without a full headless rebuild. A strong candidate can reason about when Hyvä or PWA Studio / Venia beats staying on Luma, and what you give up — page builder, some extension compatibility, GraphQL gaps — when you leave.

But the fundamentals — Layout XML, view models and clean escaped PHTML, the customer-data sections layer that makes Full Page Cache and personalization coexist, and owning static content deploy in production — have not changed. The 45 questions above are still the right list.

Related reading

Hiring Magento frontend talent because you want to move faster on the AI side of your store? WisWes drops into Magento as an extension — your team keeps building the theme, we handle the shopping assistant. See what WisWes does →

Turn questions into checkout.

WisWes drops into your store and guides shoppers from browsing to buying. 14-day free trial — no card.