Quiz-style questions across HTML, CSS, JavaScript, and React to help you self-assess your fundamentals.
Switch to the audio version if you prefer to learn by listening rather than reading.
AI-generated audio transcript
All the questions in this lesson are open-ended technical questions, similar to what you would face in a real front-end interview.
That means you won't get options to choose from, instead, you'll be asked directly about a concept and expected to explain it clearly. For example: “How does the event loop work in JavaScript?” or “What's the difference between relative and absolute positioning in CSS?”
Sometimes an interviewer may offer hints if you get stuck, but the focus is always on your ability to explain concepts out loud. Practicing this way helps you build clarity and confidence, which is exactly what clients and teams are looking for.
Treat every question as if you're explaining it live to an interviewer. Clear, structured explanations matter far more than memorized definitions.
<meta charset="UTF-8">
tag important in HTML?<picture>
tag and how it relates to responsive images.<label>
element, and how does it help with accessibility?hidden
attribute and aria-hidden
differ?<section>
, <div>
, and <article>
?<header>
and <footer>
elements?<iframe>
and embedding content with fetch + rendering in JavaScript.display: none
and visibility: hidden
?rem
and em
units differ, and when should each be used?position: absolute
, fixed
, relative
, and sticky
?flex
and grid
layouts differ and when you might choose one over the other.transition
and animation
in CSS?z-index
stacking context work?:hover
, ::after
).this
keyword behave in JavaScript? Name a few contexts.==
and ===
?async
/await
, and .then()
chaining interrelate?null
, undefined
, and undeclared differ?try/catch
, Promises, and async
/await
?useState
, useEffect
).useEffect
works and what the dependency array does.key
prop when rendering lists?React.memo
, useMemo
, useCallback
)?How would you design a scalable chat application?
Consider message delivery, real-time updates (WebSockets or WebRTC), message persistence, typing indicators, and handling offline/online states. Think about scalability for thousands of users, and how to keep the UI responsive under heavy load.
What are the key considerations for building a responsive design?
Beyond media queries, discuss flexible layouts, fluid typography, responsive images, mobile-first design, and collaboration with designers. Highlight trade-offs between pixel-perfect design and technical feasibility.
How would you implement a real-time collaboration feature?
Think of Google Docs style editing. Talk about syncing changes, conflict resolution, Operational Transformation (OT) or CRDTs, WebSocket communication, and showing user presence in the UI.
What are the best practices for performance optimization in web applications?
Cover initial load time, code-splitting, image optimization, caching, lazy loading, memoization, virtualization, and avoiding unnecessary re-renders in frameworks like React. Also mention how to measure performance (Lighthouse, Web Vitals).
How would you design a scalable image processing system?
This involves uploading, storing, resizing, and serving images efficiently. Think about using CDNs, responsive image formats (WebP/AVIF), background processing, caching, and handling multiple devices with different resolutions.
How would you architect a design system to ensure consistency across multiple applications?
Talk about component libraries, design tokens, theming, versioning, documentation, and governance. Explain how you'd balance flexibility for teams with strict consistency across products.
What strategies would you use to ensure accessibility (a11y) is built into a design system from the start?
Cover semantic HTML, ARIA attributes, keyboard navigation, color contrast, screen reader support, and accessibility testing. Show that accessibility is not an afterthought but a baked-in principle.
How would you handle internationalization (i18n) and localization (l10n) in a large-scale front-end application?
Consider dynamic language packs, date/time/number formatting, RTL (right-to-left) support, translations, fallback strategies, and performance when loading different locales.
How would you design a component library that balances flexibility with consistency?
Discuss API design for components, composition vs configuration, prop-driven customization, theme support, and guardrails to prevent misuse. Show how to empower developers while avoiding "too much freedom."
What considerations would you keep in mind when integrating authentication and authorization into a front-end system?
Mention secure token handling (JWT, cookies), protecting routes, role-based UI rendering, handling refresh tokens, login/logout UX, and protecting against vulnerabilities like XSS or CSRF.
Don't treat these as a checklist to memorize. Use them as a diagnostic tool: